步骤三:为容器舰队添加集群
您需要注册或纳管集群、为集群接入网络,以便将集群加入容器舰队进行管理。
UCS支持注册华为云集群、本地集群、附着集群、多云集群和伙伴云集群,本小节将以附着集群为例,以公网接入形式指导您快速添加一个Kubernetes集群至容器舰队。
获取KubeConfig文件
- 登录待添加集群的Master节点。
- 获取待添加集群的KubeConfig文件。
cat $HOME/.kube/config
默认情况下,自建集群的配置文件路径为Master节点的“$HOME/.kube/config”,如您的集群指定了其他KubeConfig配置文件,请自行更换路径。关于KubeConfig文件的详细说明请参见使用KubeConfig文件组织集群访问。
- 复制KubeConfig文件内容。
- 在本地创建一个YAML文件,将上一步中的复制内容粘贴至该文件并保存。
注册集群
- 登录UCS控制台。
- 在左侧导航栏选择“容器舰队”,单击附着集群选项卡中的“注册集群”按钮。
- 配置集群参数。本例中仅填写关键参数,如表1所示。
表1 添加集群参数配置 参数
是否必需
参数说明
集群名称
是
输入集群的自定义名称。名称需以小写字母开头,由小写字母、数字、中划线(-)组成,且不能以中划线(-)结尾。
集群服务商
是
选择集群的服务商。
所属区域
是
选择集群所在区域。
上传KubeConfig文件
是
上传获取KubeConfig文件中保存的KubeConfig文件,以完成集群认证。支持JSON或YAML格式。
选择Context
是
选择对应的Context。
Context选项列表会在上传KubeConfig文件后自动获取,默认的选项为KubeConfig文件中“current-context”字段指定的Context。
容器舰队
否
选择步骤二:创建容器舰队创建的舰队。
图1 注册集群
- 单击“确定”。
为集群接入网络
在完成集群后,集群需要配置代理来接入网络才能被UCS接管,接入方式包括公网接入与私网接入。
公网接入方式具有操作简单、成本低、弹性灵活的优点,本小节将指导您使用公网接入方式为集群接入网络。如您需要更加高速、低时延、稳定安全的体验,可选择私网接入方式,具体操作请参考注册附着集群(私网接入)。
- 登录UCS控制台。
- 单击待接入集群栏的“公网接入”,下载集群代理agent的配置文件。
集群代理配置存在私有秘钥信息,每个集群代理配置仅能下载一次,请您妥善保管。
- 使用kubectl连接集群,使用如下命令在集群中创建一个名为“agent.yaml”的YAML文件(该文件名称可自定义),并将2中的agent配置内容粘贴到YAML文件中。
vim agent.yaml
- 在待接入集群中执行以下命令部署代理。
kubectl apply -f agent.yaml
- 查看集群代理部署状态。
kubectl -n kube-system get pod | grep proxy-agent
如果部署成功,预期输出如下:
proxy-agent-5f7d568f6-6fc4k 1/1 Running 0 9s
- 查看集群代理运行状态。
kubectl -n kube-system logs <Agent Pod Name> | grep "Start serving"
如果正常运行,日志预期输出如下:
Start serving
- 前往UCS控制台刷新集群状态,集群处于“运行中”。
图2 集群运行中状态