单实例部署
单实例部署模式下最大的特点是不需要关注存储组件部分(如:MySQL、Mongodb、Redis 等),容器内会自动启动相关组件,用户只需要将数据目录做持久化即可,在前期测试阶段可首选。
部署步骤
在 Master 节点执行以下命令添加明道云提供的 chart 仓库源
helm repo add mingdaoyun-charts https://mingdaoyun.tencentcloudcr.com/chartrepo/charts helm repo update
可通过执行
helm search repo mingdaoyun-charts
命令查看源下相关 chart,如:在 Node 节点拉取以下2个镜像(镜像较大,不建议在启动时通过自动拉取,等待时间会比较长)
docker pull registry.cn-hangzhou.aliyuncs.com/mdpublic/mingdaoyun-community:3.1.3 docker pull registry.cn-hangzhou.aliyuncs.com/mdpublic/mingdaoyun-doc:1.2.0
启动安装管理器
推荐使用 kubernetes 集群外的一台机器部署安装管理器,测试阶段可选择使用集群内的一台机器
下载安装管理器
wget https://pdpublic.mingdao.com/private-deployment/3.1.3/mingdaoyun_private_deployment_captain_linux_amd64.tar.gz
,解压并执行启动命令:bash ./service.sh start
,启动成功后默认会监听 38881 端口定义数据持久化目录挂载所需的 PV
在
mingdaoyun
chart 模板定义中数据持久化默认已声明需要通过 PVC 的方式进行挂载,通常只需把 enabled 设置为 true:persistence: data: enabled: false existingClaim: "" # 使用已存在的 pvc,accessMode 和 size 满足要求即可 storageClass: "mingdaoyun-data-sc" # 空代表自动绑定匹配条件的 PV accessMode: ReadWriteMany # 需支持 ReadOnlyMany 的访问模式 size: 10Gi annotations: {}
如果基于 NFS 定义 PV(基于性能考虑,在实际使用中数据挂载不建议使用 NFS),参考如下:
mingdaoyun-data-pv.yaml
apiVersion: v1 kind: PersistentVolume metadata: name: mingdaoyun-data-pv spec: nfs: path: /mdy_data server: 172.17.30.83 # NFS 服务内网IP accessModes: - ReadWriteMany capacity: storage: 10Gi storageClassName: mingdaoyun-data-sc # 与 PVC 中声明的 storageClass 一致
创建 PV
kubectl apply -f mingdaoyun-data-pv.yaml
安装 chart
安装 mingdaoyun-doc
helm install mingdaoyun-doc mingdaoyun-charts/mingdaoyun-doc
安装 mindaoyun,创建自定义参数文件
mingdaoyun-values.yaml
,将 $MASTER_NODE_IP 替换成当前 Kubernetes 集群的 Master Node IP。默认以 NodePort 方式启动,端口为 32100mingdaoyun-values.yaml
serviceUrl: "http://$MASTER_NODE_IP:32100" captainServiceUrl: "http://$CAPTAIN_NODE_IP:38881" # 安装管理器内网地址 persistence: data: enabled: true
helm install -f mingdaoyun-values.yaml mingdaoyun mingdaoyun-charts/mingdaoyun
最后确认所有 Pod 都已处于 Running 状态后,可通过
http://$MASTER_NODE_IP:32100
进行访问: