You need to enable JavaScript to run this app.
文档中心
容器服务

容器服务

复制全文
下载 pdf
用户指南
使用须知
复制全文
下载 pdf
使用须知
容器服务( VKE)对容器业务相关的技术架构及核心组件提供托管服务,对于非托管组件以及运行在 VKE 集群中的应用,不当操作可能会导致业务故障。为了您云上业务的安全高效、稳定高可用,同时更好地预估和避免相关操作风险,在使用 VKE 前,请仔细阅读本文中的建议与注意事项。​
服务分类​
​
服务分类​
组件定义​
组件示例​
控制面​
Kubernetes 控制面组件​
四个控制面组件:etcd、kube-apiserver、kube-scheduler、kube-controller-manager。​
​
VKE 托管组件​
cloud-controller-manager、cluster-autoscaler、karpenter、vpc-cni-controlplane 等 VKE 托管的组件。​
说明​
在 VKE 控制台 组件管理 页面带有【托管】标识的组件为 VKE 托管组件。更多托管组件相关说明,请参见 组件概述。​
数据面​
Kubernetes 数据面组件​
三个数据面组件:kubelet、kubeproxy、containerd。​
​
VKE 非托管组件​
容器网络(CNI)相关组件、容器存储(CSI)相关组件、nvidia-device-plugin 等非托管组件。​
说明​
在 VKE 控制台 组件管理 页面没有【托管】标识的组件为非托管组件。更多托管组件相关说明,请参见 组件概述。​
​
业务应用负载​
业务创建的 Pod、Deployment、Service 、PV/PVC、Ingress 等对象。​
​
控制面组件托管​
控制面包含 Kubernetes 控制面组件和 VKE 托管组件,VKE 会实时监控集群控制面组件的核心指标水位,当指标达到或超过预设的阈值时,将自动触发集群控制面组件升配动作,以提供更大的控制面能力支持,为业务平稳运行提供可靠保障。​
Kubernetes 控制面组件和 VKE 托管组件通过产品功能暴露组件自定义参数。通过产品侧暴露出的自定义参数,由业务根据集群的实际情况自行调整,例如调整托管组件 cluster-autoscaler 的自动扩缩容相关配置。​
数据面组件和服务运维​
VKE 托管了 Kubernetes 控制面组件,但是数据面组件仍然运行在用户的节点(ECS 实例)上,例如 CoreDNS、Ingress、Kube-Proxy、VPC-CNI、Kubelet、CSI 相关组件,因此数据面组件运行的稳定性需要 VKE 与用户共同维护。​
VKE 对数据面组件提供以下支持:​
  • 提供参数化设置、功能优化、BugFix、CVE 补丁等功能并给出指导文档。​
  • 提供监控、日志和报警等可观测能力,核心组件会提供组件日志,支持采集到日志服务(TLS)中。​
用户使用数据面组件时,请遵循以下建议:​
  • 使用最新版本的组件。组件经常会发布新版本以修复 Bug 或提供新特性。VKE 发布新版本的组件后,在保证业务稳定的前提下选择合适的时机,遵循组件升级指导文档中的说明进行升级操作。详细信息,请参见 升级组件。​
  • VKE 会将重要的集群异常事件发送到云监控服务的事件中心,建议在云监控中配置相应的告警策略。详细操作,请参见 云产品事件 和 创建事件规则。​
  • 建议在集群中开启云原生观测,并配置相应基础资源和业务资源的告警,VKE 会将重要的集群控制面和数据面指标发送到托管 Prometheus 服务中。详细操作,请参见 开启云原生观测。​
说明​
出于安全因素考虑,您需要自行决定是否开启数据面观测与集群告警。强烈建议您参考上述建议,全面覆盖集群和业务资源监控项告警,并及时响应告警,保障业务的正常运行。​
  • Kubernetes 数据面组件和 VKE 非托管组件通过产品功能暴露组件自定义参数。通过产品侧暴露出的自定义参数,由业务根据集群的实际情况自行调整,如调整非托管组件 vpc-cni 的 resource 和预留 IP 等配置。​
  • 请勿直接使用 IaaS 层产品的 Open API 来变更 VKE 相关组件的运行环境,包括但不限定于使用云服务器(ECS)的 Open API 更改 Worker 节点(ECS 实例)的运行状态、节点安全组配置、节点网络配置以及通过传统型负载均衡(CLB)的 Open API 修改 VKE 关联创建的 CLB 配置等。此类操作可能会导致数据面组件异常。​
  • 部分数据面组件受上游开源组件影响,可能存在 Bug 或漏洞,请注意及时升级组件,以避免开源组件 Bug 或漏洞导致您的业务受损。​
稳定高可用配置推荐​
集群​
下表为您推荐在创建集群前或创建集群时提升稳定性和高可用的配置建议。创建集群的操作详情,请参见 创建集群。​
​
分类​
稳定性操作建议​
影响说明​
网络规划​
创建集群前,结合业务场景提前规划集群子网、容器网段和 Service 网段,避免后期出现网段冲突,影响业务:​
  • 同一私有网络(VPC)的集群数量,建议不超过 11 个。一个 VPC 下创建的集群越多,每个集群可分配的网段越小。​
  • 如果集群未来会扩容到 100 节点以上,建议使用10或172网段的子网和/16子网掩码。​
  • 如果是用192网段子网,建议使用/18子网掩码。​
若集群所在子网或容器网段较小,可能会导致集群无法扩容、无法创建 Pod 等问题。​
部署​
创建集群时,结合业务场景选择合适的容器网络类型。详细说明,请参见 容器网络。​
集群创建成功后,网络模型不可更改,请谨慎选择。​
​
创建集群时,在 节点池配置 步骤中,会自动新建并绑定默认安全组,也支持根据业务需求设置自定义安全组规则。详细说明,请参见 安全组设置、集群访问规则。​
安全组是重要的安全隔离手段,不当的安全策略配置可能会引起安全相关的隐患及服务连通性等问题。​
​
创建集群时,在 集群配置 步骤的 网络配置 中,建议选择至少两个可用区的子网。​
选择多个可用区来创建集群可以提高 Kubernetes 控制面的可用性、容灾性、性能和事故处理能力等,有利于提高业务安全延续性和稳定性。​
可靠性​
创建集群时建议添加独立数据盘,并选择挂载容器、镜像存储目录/var/lib/containerd和var/lib/kubelet。​
独立数据盘存储镜像有以下好处:​
  • 可以避免对应用程序、配置等文件的影响,提高数据的安全性。​
  • 可以减少对系统盘 I/O 的负荷,提高系统的性能。​
  • 可以更加灵活地进行容器和镜像管理,从而提高系统的可维护性和扩展性。​
没有独立数据盘可能会存在系统盘 I/O 负荷高等问题。​
安全性​
创建集群时系统默认开启 集群删除保护,请保持开启状态,防止通过控制台或 Open API 误删集群。​
未开启删除保护的集群,可通过控制台或 Open API 直接进行删除,对于业务集群来说是一个不安全因素。​
​
容器网络​
​
分类​
稳定性操作建议​
影响说明​
可靠性​
建议在集群容器网络的子网所属可用区和节点子网可用区保持一致。​
Pod 调度到节点上时,如果所在可用区没有可调度的节点,Pod 会启动失败。​
​
集群容器网络配置的安全组,需要限制与安全组关联的 Pod 数量,建议不要超过 2000 个。​
安全组默认支持关联最大 IP 数量为 2000,超过后新建 ENI 失败,Pod 也会启动失败。​
​
工作负载​
​
分类​
稳定性操作建议​
影响说明​
部署​
创建工作负载时建议设置 CPU 和内存的限制范围,提高业务的健壮性。​
同一个节点上部署多个应用时,如果应用未设置资源限制,当应用出现异常导致资源泄露时,会造成其它应用由于无法分配所需资源而异常,且其监控信息将会出现误差。​
可靠性​
创建工作负载时可设置容器健康检查:存活检查 和 就绪检查。详细操作,请参见 工作负载配置。​
未配置容器健康检查,会导致用户业务出现异常时,Pod 因无法感知而导致不会自动重启恢复业务。最终将会出现 Pod 状态正常,但 Pod 中业务异常的现象。​
​
创建服务时需要根据实际访问需求选择合适的访问方式,目前支持公网访问、仅在集群内访问、VPC 内网访问及主机端口访问四种方式。​
选择不当的访问方式,可能会造成服务内外部访问逻辑的混乱和资源浪费。​
​
创建工作负载时,请根据自身业务合理设置实例个数(Pod 副本数),建议个数大于 1,同时也合理设置节点调度策略。​
如设置单个 Pod 副本数,当节点异常或实例异常时会导致服务异常。为确保您的 Pod 能够调度成功,请确保您在设置调度规则后,节点有空余的资源用于容器的调度。​
​
工作负载如果需要高 I/O 操作,请对其挂载 PVC 相关存储。详细操作,请参见 存储管理。​
避免 containerd 或 kubelet 的 Hang 问题导致节点处于 NotReady 状态。​
​
高危操作​
使用容器服务过程中,您运行和部署相关功能模块可能存在高危操作,会对业务稳定性造成不同程度的影响。在使用前请仔细了解容器服务的高危操作及其影响。详细说明,请参见 高危操作及恢复方案。​
​
最近更新时间:2026.03.20 17:54:25
这个页面对您有帮助吗?
有用
有用
无用
无用