使用 Kubernetes 集群离线安装社区版¶
本页简要说明 DCE 5.0 社区版的离线安装步骤。
点击社区版部署 Demo可观看视频演示。
准备工作¶
-
准备一个 Kubernetes 集群,集群配置请参考文档资源规划。
Note
- 存储:需要提前准备好 StorageClass,并设置为默认 SC
- 确保集群已安装 CoreDNS
- 如果是单节点集群,请确保您已移除该节点的污点
- 存储:需要提前准备好 StorageClass,并设置为默认 SC
-
Note
如果集群中已安装所有依赖项,请确保依赖项版本符合要求:
- helm ≥ 3.9.4
- skopeo ≥ 1.9.2
- kubectl ≥ 1.22.0
- yq ≥ 4.27.5
下载和安装¶
-
在 k8s 集群控制平面节点(Master 节点)下载社区版的对应离线包并解压,或者从下载中心下载离线包并解压。
-
准备镜像。
-
如果使用镜像仓库,需要将离线包的镜像推送到镜像仓库。
-
下载镜像导入脚本。
wget https://proxy-qiniu-download-public.daocloud.io/DaoCloud_Enterprise/dce5/offline_image_handler.sh
为
offline_image_handler.sh
添加可执行权限: -
执行脚本推送镜像到镜像仓库中。
# 指定镜像仓库地址 export REGISTRY_ADDR=registry.daocloud.io:30080 # 指定离线包解压目录 export OFFLINE_DIR=$(pwd)/offline # 执行脚本导入镜像 ./offline_image_handler.sh import
Note
- 若导入镜像的过程出现失败, 则失败会被跳过且脚本将继续执行。
- 失败镜像信息将被记录在脚本同级目录
import_image_failed.list
文件中,便于定位。 - 如果 docker pull 镜像时报错:
http: server gave HTTP response to HTTPS client
,请启用 Insecure Registry。
-
在集群的每个节点上运行
vim /etc/docker/daemon.json
命令以编辑 daemon.json 文件,输入以下内容并保存更改。Note
请确保将
172.30.120.180:80
替换为您自己的 Harbor 仓库地址。 对于 Linux,daemon.json 文件的路径为/etc/docker/daemon.json
。 -
运行以下命令重启 Docker。
-
如果没有镜像仓库,请将离线包拷贝到每一台节点之后,通过
docker load/nerdctl load
命令加载:
-
-
在 k8s 集群控制平面节点(Master 节点)下载 dce5-installer 二进制文件。
-
设置集群配置文件 clusterConfig.yaml
-
如果是非公有云环境(虚拟机、物理机),请启用负载均衡 (metallb),以规避 NodePort 因节点 IP 变动造成的不稳定。请仔细规划您的网络,设置 2 个必要的 VIP,配置文件范例如下:
clusterConfig.yamlapiVersion: provision.daocloud.io/v1alpha2 kind: ClusterConfig spec: loadBalancer: type: metallb istioGatewayVip: 10.6.229.10/32 # (1) insightVip: 10.6.229.11/32 # (2) registry: # (3) type: external externalRegistry: registry.daocloud.io:30080 # (4)
- 这是 Istio gateway 的 VIP,也会是 DCE 5.0 的控制台的浏览器访问 IP
- 这是 Global 集群的 Insight-Server 采集所有子集群的监控指标的网络路径所用的 VIP
- 如果不指定外部仓库则不需要定义
- 这是提前准备的、已有的镜像仓库的地址
-
如果是公有云环境,并通过预先准备好的 Cloud Controller Manager 的机制提供了公有云的 k8s 负载均衡能力, 配置文件范例如下:
clusterConfig.yamlapiVersion: provision.daocloud.io/v1alpha2 kind: ClusterConfig spec: loadBalancer: type: cloudLB registry: # (1) type: external externalRegistry: registry.daocloud.io:30080 # (2)
- 如果不指定外部仓库则不需要定义
- 这是提前准备的、已有的镜像仓库的地址
-
如果使用 NodePort 暴露控制台(仅推荐 PoC 使用),配置文件范例如下:
clusterConfig.yamlapiVersion: provision.daocloud.io/v1alpha2 kind: ClusterConfig spec: loadBalancer: type: NodePort registry: # (1) type: external externalRegistry: registry.daocloud.io:30080 # (2)
- 如果不指定外部仓库则不需要定义
- 这是提前准备的、已有的镜像仓库的地址
-
-
安装 DCE 5.0。
Note
- 参数 -p 指定解压离线包的 offline 目录。
- 有关 clusterConfig.yaml 文件设置,请参考在线安装第 2 步。
-
安装完成后,命令行会提示安装成功。恭喜您! 现在可以通过屏幕提示的 URL 使用默认的账户和密码(admin/changeme)探索全新的 DCE 5.0 啦!
Success
请记录好提示的 URL,方便下次访问。
-
另外,安装 DCE 5.0 成功之后,您需要正版授权后使用,请参考申请社区免费体验。