当containerd参数默认配置无法满足业务需求、您希望对集群节点进行个性化调整时,您可以在节点池维度自定义节点的containerd参数配置。例如,您可以给指定镜像仓库同时配置多个Mirror仓库,或者指定跳过某个镜像仓库的安全证书的验证。
使用限制
节点池的运行时需为containerd,且containerd版本必须大于等于1.6.20。如containerd版本过低,需升级节点池。
注意事项
自定义containerd配置将按批次变更节点配置,节点池中已有节点将即时生效,新增节点也会自动使用新配置。
请勿通过命令行方式修改支持自定义的containerd参数,其操作会被ACK拦截且无法生效。请恢复相关参数取值至原始值。
当containerd自定义配置生效时,系统会对配置自动进行格式规范化,修正不规范的写法。
支持自定义的containerd参数
容器运行时自定义配置
参数 | 说明 | 类型 | 取值说明 |
| 最大并发镜像层下载数。增加此值可以加快多层镜像的拉取速度,但会增加网络和 I/O 负载。 | Int |
|
| 是否忽略镜像中通过 | Bool | 默认值:true |
| 容器内进程发生 Core Dump 时,生成的 Core 文件的大小上限(单位:Bytes)。 关键值说明:
| Int |
|
| 容器内允许打开的最大文件描述符数量。 | Int |
|
| 容器内进程能够锁定的最大内存量(单位:Bytes)。 | Int |
|
容器镜像仓库镜像站点配置(Registry Mirrors)
说明 | 配置建议 |
为容器镜像仓库配置镜像站点(Mirror),以便在容器运行时获取镜像时使用替代的镜像仓库,加速镜像拉取。 此配置不涉及容器重启。 |
|
跳过证书认证的镜像仓库(Insecure Registries)
说明 | 配置建议 |
允许容器运行时拉取容器镜像时可以跳过对指定容器镜像仓库的安全证书校验。一般在测试环境中用于从采用自签名证书的镜像仓库拉取镜像。 此配置不涉及容器重启。 |
|
通过控制台自定义节点池containerd参数
修改 containerd 配置不会对存量容器造成影响。为确保集群稳定性,请在业务低峰期操作。
登录容器服务管理控制台,在左侧导航栏选择集群列表。
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择。
在节点池列表页面,单击目标节点池操作列下的
> Containerd 配置。仔细阅读当前页面上的注意事项,按照页面指引添加待配置的参数,指定目标节点,并设置批量配置策略,然后单击提交,完成相应操作。
可参见下方配置示例。
配置容器运行时自定义配置时,如移除该配置,将自动恢复为默认值。
提交后,containerd配置将按批次对节点生效。执行需要一定时间,可在事件列表区域查看执行进度,并控制执行过程,例如暂停、继续、取消等。如果有节点任务执行失败,可排查节点问题后单击继续,重新执行。
可使用暂停功能对已升级的节点进行验证。执行暂停操作时,正在配置中的节点会继续完成执行;尚未执行的节点在任务继续前不会被执行自定义配置。建议尽快完成自定义配置任务。处于暂停状态的任务将在7天后自动取消,相关的事件和日志信息也会被清理。
配置示例
为docker.io配置替换的镜像仓库 | 指定私有仓库跳过证书的认证 | 配置HTTP私有镜像仓库 |
|
|
|
常见问题
自定义containerd参数的过程中,是否会影响业务的正常运行?
修改操作不会影响正在运行的 Pod。配置变更仅对变更后新建的 Pod 生效。建议在业务低峰期操作。
如需让存量 Pod 应用新配置,需手动重建这些 Pod。
自定义的containerd参数时报错not match XXX或must be between XXX,如何处理
通常有以下原因:
must be between XXX:参数内容或格式错误。检查填写的参数值是否合法,例如格式错误或取值超出有效范围。not match XXX:修改方式不正确。通过命令行直接修改了配置文件时,ACK会自动拦截。请将对应参数恢复为原始值。


