注册附着集群(公网接入)
本章节讲述附着集群的注册及公网接入流程。
约束与限制
- 华为云账号用户需具备UCS FullAccess和VPCEndpoint Administrator权限。
- 若集群地域位于境外,应确保您的行为符合所适用的法律法规要求。
- 请确保注册的集群为通过CNCF一致性认证,且版本在1.19至1.29之间的Kubernetes集群。
前提条件
- 已创建一个准备接入UCS的集群,并且集群状态正常。
- 集群中部署proxy-agent组件的节点必须可以进行公网访问,可选择挂载EIP或使用NAT网关的方式。
- 已获取待添加集群的KubeConfig文件,具体操作步骤因厂商而异,请参见KubeConfig。关于KubeConfig文件的更多说明请参考使用kubeconfig文件组织集群访问。
步骤一:注册集群
- 登录UCS控制台。
- 在左侧导航栏中选择“容器舰队”,单击附着集群选项卡中的“注册集群”按钮。
- 参考表1填写待添加集群的基础信息,其中带“*”的参数为必填参数。
表1 注册集群基础信息配置 参数
参数说明
集群名称*
输入集群的自定义名称,需以小写字母开头,由小写字母、数字、中划线(-)组成,且不能以中划线(-)结尾。
集群服务商*
选择一个集群服务商。
所属区域*
选择集群所在的区域。
集群标签
非必填项,以键值对的形式为集群添加标签,可以通过标签实现集群的分类。键值对可自定义,以字母或者数字开头和结尾,由字母、数字、连接符(-)、下划线(_)、点号(.)组成,且63个字符之内。
上传KubeConfig*
上传kubectl的配置文件来完成集群认证,支持JSON或YAML格式。获取KubeConfig文件的操作步骤因厂商而异,请参见KubeConfig。
选择Context*
选择对应的Context。在完成KubeConfig文件上传后,选项列表将自动获取文件中的“contexts”字段。
默认值为KubeConfig文件中“current-context”字段指定的Context,若文件中无此字段则需要从列表中手动选择。
容器舰队
选择集群所属的舰队。
舰队用于权限精细化管理,一个集群只能加入一个舰队。若不选择舰队,集群注册成功后将显示在“未加入舰队的集群”页签下,后续还可以再添加至舰队中。
不支持在注册集群阶段选择已开通集群联邦能力的舰队,如果一定要加入这个舰队,请在集群注册成功后,再添加到该舰队中。关于集群联邦的介绍,请参见开通集群联邦章节。
如需新建舰队,请参见管理容器舰队。
- 单击“确定”,集群注册成功后如图1所示,请在30分钟内接入网络。您可选择集群的接入方式或单击右上角按钮查看详细的网络接入流程。
如您未在30分钟内接入网络,将会导致集群注册失败,可单击右上角按钮重新注册集群。如果已经接入但数据未采集上来,请等待2分钟后刷新集群。
步骤二:接入网络
在UCS控制台成功添加集群后,集群状态将会显示为“等待接入”,此时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控制台刷新集群状态,集群处于“运行中”。