文档中心 > 容器服务

创建集群

更新时间:2023/04/17 访问次数:9963

写在前面


集群成功创建后,会默认创建如下网络资源:

内网SLB一个(用途:访问集群api server,与集群交互,例如添加节点、应用发布等)

注意:千万不要随意删除这些资源,否则会导致集群连接不上从而导致页面功能瘫痪!!!


创建入口:聚石塔控制台运维中心,点击访问


一、创建集群步骤

1. 设置基本信息


设置集群名称、选择region、专有网络、虚拟交换机等;专有网络选择目前ECS集群所在的VPC。(目前集群创建仅支持华北3地域的)


image.png


集群类型:区分linux和windows,默认选择linux就行,windows环境的应用选择windows。

托管集群类型:分为标准版和专业版;专业版为收费集群,稳定性更高,具体信息可在页面上看提示文档。

 

注意:

1)设置POD和Service的CIDR网段,如果是首次创建,就按照默认值不需要改动,直接点击“完成”;

2)如果是创建第二个集群,可以把这里相应的改下,原则就是这里设置的网段不能与VPC以及之前创建的网段冲突;比如可以设置成172.22.0.0/16,172.23.0.0/20;

3)如果点击“完成”仍然报CIDR相关问题,请到答疑群反馈;

4)这一步如果点击“完成”,出现其他问题,也请到答疑群反馈。

 

2. 当前配置确认


1)集群创建需要开通相关服务,如果未开通,请依次点击右侧“RAM授权”进行授权,点击下方“刷新”按钮进行查看;

2)集群创建会创建相关云产品,也列在下方了。


image.png

 

3. 等待集群初始化


集群创建成功之后,初始化和ECS节点添加大概需要10分钟左右,请耐心等待,在集群列表页可以观察集群运行状态的变化。集群运行状态会由 空白->initial->scaling->runningrunning状态说明集群最终状态正常,可以发布部署了。


image.png

 

4. 添加ECS节点(仅支持华北3的机器)


集群列表-管理-节点列表-添加已有节点。


image.png


1)添加类型,“自动添加”只需在页面操作,ECS会进行系统盘重置,然后自动加入到集群中。“手动添加”,确认后页面上会生成一条linux指令,需要人工登录到机器上执行该条指令。“手动添加”的方式不会重置系统盘和集群上的其他数据。

2)“自动添加”类型由于会重置ECS,所以需要重新设置ECS登录方式,密钥和密码方式都可以,推荐使用密钥方式。

3)自定义标签,非必填,节点加入集群后会自动打上相应的标签,用于集群资源分配(指定应用容器调度到某些节点),参考:说明文档

4)支持自定义系统镜像,参考 说明文档

5)支持将容器运行目录挂载到数据盘,参考 说明文档

 

PS:添加节点时没有列出想要的实例,一般是因为

① ECS与集群不在同一个VPC;

② ECS已经添加到其他集群;

③ ECS过期;

④ ECS关联了应用(如果关联了需要先取消关联)。可以手动校验一下:


image.png

 

5. 集群详情


基本信息——查看集群概况。


image.png

 

节点列表——管理节点。


image.png


注意:

1)添加已有节点,只能选择当前集群VPC下的,如果ECS之前关联到了应用,这里也没法添加,请先解除关联(确保机器可以添加到集群,因为系统盘会有一次被重置的操作)

2)添加节点报错,请先看文档下面的常见问题自行排查,仍有问题请在答疑群反馈。

 

二、常见问题


1.创建集群时,当前配置确认,RAM授权失败。


image.png

 

可能是系统脏数据导致,请在答疑群反馈。

 

2.创建集群报错,the current zone cn-zhangjiakou-c does not support creating SLB。

一直“上一步”,回到集群基本信息设置,别勾选可用区c的交换机,之后再继续往后走。

 

3.创建集群报错,the vpc already hava public network access。

请直接在答疑群反馈,找hangyu。

 

4.创建集群报错,再次提交提示cluster name已存在。

请直接在答疑群反馈,找hangyu。

 

5.创建集群报错,提示类似CIDR 网段冲突。

首先找到集群使用的VPC的网段,保证Pod以及Service的网段不和VPC网段冲突。

比如VPC网段为192.****,那完全可以设置Pod的Service的网段以172开头的,网页上有提示设置的网段规则,比如分别设置为172.20.0.0/16,172.21.0.0/20。

如果之前创建过集群,那么查看这个集群已经设置好的Pod的Service的网段,然后相应的增加就好,比如分别设置

172.22.0.0/16,172.23.0.0/20。

 

6.创建集群成功后,状态为running,为什么看不到节点?

可能是集群初始化后,异步添加节点失败了,需要手动再添加一下,集群管理-节点列表-添加已有节点。

 

7.添加ECS时报错“InstanceSecurityGroupLimitExceeded”。

所选ECS已经加入了5个安全组,阿里云限制每台ECS最多加入5个安全组,加入集群需要加入另一个安全组

解决办法,将ECS退出其他安全组,保证加入的安全组数量<=4。

 

8.添加ECS时提示 VPC RouteEntry over quota。

VPC路由表超限,找到创建集群使用的VPC,提交阿里云工单,申请一下该VPC下的路由表quota。

 

9.添加ECS时提示 Eip over quota。

找到创建集群使用的VPC,提交阿里云工单,申请一下该VPC下的EIP quota。

 

10.添加ECS时,看不到想要选的机器?

首先,确认下ECS是否和集群的VPC属于同一个;

其次,确认下ECS是否已经关联到聚石塔的应用,关联了应用的机器原则上不能添加进集群(机器会被重置)。

 

11.两台4C8G的机器,能部署几个2C4G的实例?

首先,每台ECS交付到手后,内存会有500-1000M左右折损,8G的机器实际最大容量只有7.5G(7500M)左右;

其次,每台接入到集群后的ECS,会预留额外的800M内存,给集群内部组件以及除开集群外的其他进程使用(这个是为了保证集群中每个节点的稳定性);

再次,每台接入到集群后的ECS,会启用集群节点相关组件,占用 0.35C+100M内存;

最后,集群各个核心组件,一共还需要占用1C + 1000M资源,这些资源量会随机地占用集群内机器的资源。

 

总之,对于N台ECS的集群来说,

不可调度CPU = N*0.35C + 1C

不可调度内存 = N*500M(折损)+ N* 800M(系统预留)+  N*100M(系统proxy组件占用) + 1000M(集群其他组件)

 

当N=2时,不可调度cpu=1.7c,不可调度内存=4G

资源限制主要在于内存,平均每台机器上可调度的内存大约为6G,极端情况下如果集群各个核心组件都部署在一台ECS上,此时两台机器上可调度内存可能分别为 4.2G,5.8G。

所以两台机器的集群可以部署两个2C4G的容器实例;2C5G的实例至少能部署起来一个;2C6G的实例无法部署。

 

12.每台4c8G的机器,只能部署一个2C4G的容器。为什么会有这么多浪费?

如上面一个问题中所述,集群管理ECS,实际可以调度的资源可以认为要比购买规格少2G左右,比如购买4C8G的机器,可以用来部署容器的大约3C 6G(如果你只有一两台机器,可能连一个3C 6G的机器也部署不起来,集群规模太小,可能这台机器被占用了很多资源来运行集群核心组件)。另外,为了稳定性,集群要保证资源水位健康,集群中的机器也不建议跑满。

1)建议买更大规格的机器;10台4C8G的机器,不如买5台 8C16G;

2)建议增加节点数量,节点越多,集群自身占用的资源就可以忽略不计,其他的资源都可以被集群调度了;

3)建议增加集群中的实例规格类型,大小搭配,可以将集群可调度的资源发挥到最大。

 

FAQ

关于此文档暂时还没有FAQ
返回
顶部