在阿里云 ECS 上安装 DCE 5.0 商业版¶
本文将介绍如何阿里云 ECS 上安装 DCE 5.0。
前提条件¶
- 准备好阿里云 ECS 虚拟机,本示例创建 3 台 ubuntu22.10 server 64bit 的云服务器,每台配置为 8 核 16 GB
- 请按照准备工作完成相关准备
开始部署¶
在阿里云 ECS 部署 DCE 5.0 时主要是负载均衡的能力需要特殊处理,由于虚拟机中不会安装 CloudProvider,LoadBalancer类型的 svc 无法被识别,所以要么是手动安装相关 CloudProvider,要么使用用 NodePort 的方式,所以目前提供了以下三种方案:
- 方案 1:NodePort + 阿里云 SLB
- 方案 2:cloudLB + 部署 CCM 组件
- 方案 3:NodePort + 部署 CCM 组件
方案 1 :NodePort + 阿里云 SLB¶
-
登录一台机器,下载 dce5-installer 二进制文件。
假定 VERSION 为 v0.18.0
-
配置集群配置文件
clusterConfig.yaml
。参考以下配置,注意设置
loadBalancer.type = NodePort
,并填写主机的私网 IP 地址:clusterConfig.yamlapiVersion: provision.daocloud.io/v1alpha3 kind: ClusterConfig spec: loadBalancer: type: NodePort masterNodes: - nodeName: "g-master1" ip: xx.xx.xx.xx ansibleUser: "root" ansiblePass: "dangerous" - nodeName: "g-master2" ip: xx.xx.xx.xx ansibleUser: "root" ansiblePass: "dangerous" - nodeName: "g-master3" ip: xx.xx.xx.xx ansibleUser: "root" ansiblePass: "dangerous"
-
开始安装
-
安装成功
-
查询 svc
istio-ingressgateway
的 https 服务暴露在 NodePort 端口,本示例是 32060 -
创建阿里 SLB ,将 SLB 的公网 TCP 流量指向 ECS 主机的 32060 端口,3 台主机均需要添加。
-
修改 ghippo 反向代理配置,参考文档 https://docs.daocloud.io/ghippo/install/reverse-proxy/#_1,修改后直接通过 SLB 的公网 IP +Port 访问 DCE 5.0。如下图:
方案2 :cloudLB + 部署 CCM 组件¶
-
登录一台机器,下载 dce5-installer 二进制文件。
假定 VERSION 为 v0.18.0
-
配置集群配置文件
clusterConfig.yaml
。参考以下配置,注意设置
loadBalancer.type = cloudLB
,并填写主机的私网 IP 地址:clusterConfig.yamlapiVersion: provision.daocloud.io/v1alpha3 kind: ClusterConfig spec: loadBalancer: type: cloudLB masterNodes: - nodeName: "g-master1" ip: xx.xx.xx.xx ansibleUser: "root" ansiblePass: "dangerous" - nodeName: "g-master2" ip: xx.xx.xx.xx ansibleUser: "root" ansiblePass: "dangerous" - nodeName: "g-master3" ip: xx.xx.xx.xx ansibleUser: "root" ansiblePass: "dangerous"
-
开始安装,先部署集群
通过 -j 参数指定 1,2,3,4,5,6 步骤,完成 k8s 集群的部署。
成功后输出结果如下图:
-
安装阿里云 CCM
参考阿里云文档进行部署。
文件
ccm.yaml
中的nodeSelector
参数需要改动为node-role.kubernetes.io/control-plane: ""
安装成功后如下图:
-
继续安装 DCE 5.0,将所有产品组件安装
通过 -j 参数指定 7+ 完成剩余步骤的执行。
-
安装成功后,会默认创建公网的 LB 实例,并且可基于分配的 IP 来访问 DCE 5.0。
方案 3:NodePort + 部署 CCM 组件¶
-
登录一台机器,下载 dce5-installer 二进制文件。
假定 VERSION 为 v0.18.0
-
配置集群配置文件
clusterConfig.yaml
。
参考以下配置,注意设置 loadBalancer.type = NodePort
,并填写主机的私网 IP 地址:
```yaml title="clusterConfig.yaml"
apiVersion: provision.daocloud.io/v1alpha3
kind: ClusterConfig
spec:
loadBalancer:
type: NodePort
masterNodes:
- nodeName: "g-master1"
ip: xx.xx.xx.xx
ansibleUser: "root"
ansiblePass: "dangerous"
- nodeName: "g-master2"
ip: xx.xx.xx.xx
ansibleUser: "root"
ansiblePass: "dangerous"
- nodeName: "g-master3"
ip: xx.xx.xx.xx
ansibleUser: "root"
ansiblePass: "dangerous"
```
-
开始安装
-
安装成功
-
安装后的 svc
istio-ingressgateway
如下图所示: -
安装 CCM,参考方案 2 中的步骤
-
修改 svc
istio-ingressgateway
的 type 为LoadBalancer
修改前:
修改后:
-
修改 ghippo 反向代理配置
参考文档 自定义反向代理服务器地址,其中代理地址为上一步中
istio-ingressgateway
的 type 为LoadBalancer
时分配的 IP 地址。修改成功后即可通过该 IP 地址进行访问。