集群和节点
云容器引擎对单个用户的资源数量和容量限定了配额,默认情况下,您最多可以创建5个集群(每个Region下),每个集群中可以选择50节点、200节点、1000节点、2000节点几种规格。
非高可用模式的集群在控制节点故障后将不可用,影响业务功能,不适用于商用场景,建议您选择“高可用”模式。
集群创建时将默认创建名称带有“cce”标识的安全组规则,删除或修改后可能导致集群无法正常使用。
集群名称、集群规模、高可用开关、网络模型、网段配置、服务转发模式在集群创建后将无法修改,请谨慎选择。
CCE集群默认安装采集探针,方便您在Web界面查看集群资源的日志和监控信息。
集群一旦创建以后,不支持变更以下项:
变更集群的控制节点数量,例如非高可用集群(控制节点数量为1)变更为高可用集群(控制节点数量为3)。
变更控制节点可用区。
变更集群的网络配置,如所在的虚拟私有云VPC、子网、容器网段、服务网段、IPv6、kubeproxy代理(转发)模式。
变更网络模型,例如“容器隧道网络”更换为“VPC网络”。
CCE创建的ECS实例(节点)目前支持“按需计费”和“包年/包月”,其他资源(例如负载均衡)为按需计费。如果资源所属的服务支持将按需计费实例转换成包年/包月实例,您可以通过对应的控制台进行操作。
集群中纳管计费模式为“包年包月”的节点时,无法在CCE控制台为其续费,用户需前往ECS控制台单独续费。
由于ECS(节点)等CCE依赖的底层资源存在产品配额及库存限制,创建集群、扩容集群或者自动弹性扩容时,可能只有部分节点创建成功。
ECS(节点)规格要求:CPU ≥ 2核且内存 ≥ 4GB。
通过搭建VPN方式访问CCE集群,需要注意VPN网络和集群所在的VPC网段、容器使用网段不能冲突
集群扩容和缩容
不支持自动扩缩容集群中的 Master 节点,仅对集群的node工作节点进行自动扩容缩容。
用户在扩容集群规模时必须满足用户配额(ECS节点、弹性IP等)的前提,如果用户配额不满足,需要提交工单,申请扩大配额。
存储卷
云硬盘存储卷使用约束:
云硬盘不支持跨可用区挂载,且不支持被多个工作负载、同一个工作负载的多个实例或多个任务使用。由于CCE集群各节点之间暂不支持共享盘的数据共享功能,多个节点挂载使用同一个云硬盘可能会出现读写冲突、数据缓存冲突等问题,所以创建无状态工作负载时,若使用了EVS云硬盘,建议工作负载只选择一个实例。
1.19.10以下版本的集群中,如果使用HPA策略对挂载了EVS卷的负载进行扩容,当新Pod被调度到另一个节点时,会导致之前Pod不能正常读写。
1.19.10及以上版本集群中,如果使用HPA策略对挂载了EVS卷的负载进行扩容,新Pod会因为无法挂载云硬盘导致无法成功启动。
文件存储卷使用约束:
支持多个PV挂载同一个SFS或SFS Turbo,但有如下限制:
多个不同的PVC/PV使用同一个底层SFS或SFS Turbo卷时,如果挂载至同一Pod使用,会因为PV的volumeHandle参数值相同导致无法为Pod挂载所有PVC,出现Pod无法启动的问题,请避免在同一个Pod中挂载相同的SFS或SFS Turbo。
PV中persistentVolumeReclaimPolicy参数建议设置为Retain,否则可能存在一个PV删除时级联删除底层卷,其他关联这个底层卷的PV会由于底层存储被删除导致使用出现异常。
重复用底层存储时,建议在应用层做好多读多写的隔离保护,防止产生的数据覆盖和丢失。
对象存储卷使用约束如下:
使用对象存储时,挂载点不支持修改属组和权限。
使用PVC挂载对象存储时,负载每挂载一个对象存储卷,后端会产生一个常驻进程。当负载使用对象存储数过多或大量读写对象存储文件时,常驻进程会占用大量内存,为保证负载稳定运行,建议负载使用的对象存储卷数量不超过其申请的内存GiB数量,如负载的申请的内存规格为4GiB,则建议其使用的对象存储数不超过4。
安全容器不支持使用对象存储。
挂载普通桶时不支持硬链接(Hard Link)。
在工作负载中挂载OBS存储卷声明时,不支持只读模式(readonly)。
本地持久卷使用约束:
本地持久卷仅在集群版本>= v1.21.2-r0 时支持,且需要everest插件版本>=2.1.23,推荐使用>=2.1.23版本。
移除节点、删除节点、重置节点和缩容节点会导致与节点关联的本地持久存储卷类型的PVC/PV数据丢失,无法恢复,且PVC/PV无法再正常使用。移除节点、删除节点、重置节点和缩容节点时使用了本地持久存储卷的Pod会从待删除、重置的节点上驱逐,并重新创建Pod,Pod会一直处于pending状态,因为Pod使用的PVC带有节点标签,由于冲突无法调度成功。节点重置完成后,Pod可能调度到重置好的节点上,此时Pod会一直处于creating状态,因为该PVC对应的底层逻辑卷已不存在。
请勿在节点上手动删除对应的存储池或卸载数据盘,否则会导致数据丢失等异常情况。
本地持久卷不支持被多个工作负载或多个任务同时挂载。
本地临时卷使用约束:
本地临时卷仅在集群版本>= v1.21.2-r0 时支持,且需要everest插件版本>=1.2.29。
请勿在节点上手动删除对应的存储池或卸载数据盘,否则会导致数据丢失等异常情况。
请确保节点上Pod不要挂载/var/lib/kubelet/pods/目录,否则可能会导致使用了临时存储卷的Pod无法正常删除。
快照与备份使用约束:
快照功能仅支持v1.15及以上版本的集群,且需要安装基于CSI的everest插件才可以使用。
基于快照创建的云硬盘,其子类型(普通IO/高IO/超高IO)、是否加密、磁盘模式(VBD/SCSI)、共享性(非共享/共享)、容量等都要与快照关联磁盘保持一致,这些属性查询和设置出来后不能够修改。
只有可用或正在使用状态的磁盘能创建快照,且单个磁盘最大支持创建7个快照。
创建快照功能仅支持使用everest插件提供的存储类(StorageClass名称以csi开头)创建的PVC。使用Flexvolume存储类(StorageClass名为ssd、sas、sata)创建的PVC,无法创建快照。
加密磁盘的快照数据以加密方式存放,非加密磁盘的快照数据以非加密方式存放。
LVM 配置约束:
节点中LVM的backup功能已修改默认配置(位于/etc/lvm/lvm.conf路径):安装存储插件Everest(>= 2.4.98)后,Archive保留时间会被约束为1天,以防止大量LVM操作的历史元数据侵占磁盘空间。
服务数量
每个命名空间下,创建的服务数量不能超过6000个。此处的服务对应kubernetes的service资源,即工作负载所添加的服务。
网络限制
节点访问(NodePort)的使用约束:默认为VPC内网访问,如果需要通过公网访问该服务,请提前在集群的节点上绑定弹性IP。
针对Service关联使用的ELB实例,存在如下约束:
根据Service配置自动创建的ELB实例,请勿被其它资源关联使用,否则删除Service时无法联动清理ELB实例,会出现资源残留情况。
v1.15及之前版本集群请勿修改ELB实例监听器名称,否则可能出现访问ELB异常的问题。
插件限制
CCE插件采用Helm模板方式部署,修改或升级插件请从插件配置页面或开放的插件管理API进行操作。请勿直接后台修改插件相关资源,以免插件异常或引入其他非预期问题(例如升级后参数配置被覆盖等)。