您可以通过ACK控制台将已有的ECS实例添加到已创建的Kubernetes集群中,目前仅支持添加Worker节点。本文介绍自动添加节点和手动添加节点两种方式。
前提条件
- 已创建Kubernetes集群。具体操作,请参见创建Kubernetes托管版集群。
- 您需要将待添加的ECS实例添加到Kubernetes集群自动创建的节点安全组中。具体操作,请参见ECS实例加入安全组。
使用限制
- 请确保您的集群可添加足够的节点数。如果您需要添加更多节点,请提交工单申请扩大配额。关于ACK集群的配额限制,请参见使用限制。
- 添加的云服务器必须与集群在同一地域同一VPC下。
- ACK仅支持添加同一账号下云服务器。
- ACK支持添加以下操作系统的节点:
- Alibaba Cloud Linux
- CentOS 7.x
说明 暂不支持CentOS 8.x及以上的操作系统。
- Windows Server 2019和Windows Server Core, version 1809及以上
- 如果集群使用IPv6双栈,则需要为ECS主网卡分配一个IPv6地址。关于如何为ECS主网卡分配IPv6地址,请参见步骤2:分配IPv6地址。
添加实例限制
安全组数量限制
当添加已有实例到节点池时,会将实例加入到节点池安全组中,对于实例已经加入的安全组不会重复加入。由于ECS实例能够加入的安全组有一定的限制,因此需要保证实例加入节点池后实例所加入的安全组数量小于其限制。关于云服务器ECS的使用限制,请参见使用限制。
安全组规则限制
安全组是一种虚拟防火墙,用于控制安全组内ECS实例的入流量和出流量,从而提高ECS实例的安全性。
安全组分为普通安全组、企业安全组和托管安全组,其中托管安全组由云产品创建,且只有创建托管安全组的云产品才有对其规则更改的权限,因此创建节点池时应避免选择托管安全组,否则会造成创建节点池失败。普通安全组和企业安全组的详情和区别如下表所示:
功能 | 普通安全组 | 企业安全组 |
---|---|---|
未添加任何规则时的访问策略 |
|
|
能容纳的私网IP地址数量 | 2000 | 65536 |
同一个安全组内实例之间的网络连通策略 | 默认内网互通 | 默认内网隔离,需要您手动添加安全组规则 |
授权给其他安全组 | 支持组组授权 | 不支持组组授权 |
创建节点池时,会为节点池安全组默认添加规则,用于集群内的通信。关于如何配置普通安全组和企业安全组的集群访问规则,请参见最小化集群访问规则。
添加实例到安全组时,需要注意实例已有的安全组规则不应与以下安全组规则冲突,否则将导致Pod之间无法通信:
- Pod网络CIDR
- VPC的附加IPv4网段
自动添加节点
自动添加节点方式会列出当前账号下可用的ECS云服务器,在Web界面进行安装部署,并自动添加到集群。
说明 如果您的集群没有节点池,请先创建节点池,然后再添加已有节点。关于创建节点池的具体操作,请参见创建节点池。
手动添加节点
注意 手动添加到ACK集群的ECS节点不会随集群删除而被释放。
手动添加节点方式要求您获取安装命令,登录到对应ECS云服务器上进行安装,每次只能添加一个ECS云服务器。
说明 如果您的集群没有节点池,请先创建节点池,然后再添加已有节点。关于创建节点池的具体操作,请参见创建节点池。
执行结果
- 在集群管理页左侧导航栏中,选择 。
- 在节点池页面,单击目标节点池右侧操作列的详情。
- 在目标节点池页面,单击节点管理页签。
可查看刚才添加的节点信息。