赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. ACK Edge集群
  4. 操作指南
  5. 节点池管理
  6. 云端节点池管理
  7. 节点池运维
  8. 自定义节点池OS参数

自定义节点池OS参数

  • 节点池运维
  • 发布于 2025-04-21
  • 0 次阅读
文档编辑
文档编辑

当Linux系统的OS参数默认配置无法满足业务需求,您希望对集群节点进行个性化调整时,您可以在节点池维度自定义节点的OS参数配置,以调优系统性能。自定义OS参数后,系统将按批次变更节点配置。节点池中已有节点将即时生效,新增节点也会使用新配置。

使用限制

仅1.28及以上版本的ACK集群支持自定义节点池OS参数。具体操作,请参见创建ACK托管集群、创建(已停止新建)、创建ACK Edge集群。如需升级集群,请参见手动升级集群。

注意事项

  • 动态修改OS节点配置有可能会造成节点上已存在的Pod发生配置变更,从而触发Pod重建。请在使用前确保应用的高可用。

  • 不恰当的OS参数调整会改变Linux内核的运作方式,可能导致节点性能恶化或不可用,从而对业务产生影响。请在修改前深入了解待修改参数的作用,并在生产环境操作前进行充分测试。

  • 请勿自行修改控制台不支持自定义的OS参数,避免因配置错误导致的节点不可用或手动修改内容被覆盖。例如,通过黑屏操作手动修改/etc/sysctl.d/99-k8s.conf中的内容,会导致集群执行运维操作(例如集群升级、自定义参数修改等)时覆盖已修改的配置。

支持通过控制台自定义的sysctl参数

字段名称

说明

默认值

推荐取值范围

fs.aio-max-nr

异步I/O操作的最大数量。

65536

[65536, 6553500]

fs.file-max

系统级别能够打开的最大文件句柄数。

2097152

[8192, 12000500]

fs.inotify.max_user_watches

单用户能够创建的inotify监视的最大数量。

524288

[524288, 2097152]

fs.nr_open

每个进程能够打开的文件描述符数的最大数量。

1048576

[1000000, 20000500]

(此值应小于fs.file-max的取值)

kernel.pid_max

系统可分配的最大PID数量。

4194303

大于1048575

kernel.threads-max

系统可创建的最大线程数量。

504581

大于500000

net.core.netdev_max_backlog

接口接收数据包的速度快于内核的处理速度时,可以在INPUT端排队的数据包的最大数量。

16384

[1000, 3240000]

net.core.optmem_max

每个网络套接字允许的最大辅助缓冲区(Ancillary Buffer)大小,以字节为单位。

20480

[20480, 4194304]

net.core.rmem_max

每个网络套接字接收缓冲区的最大大小,以字节为单位。

16777216

[212992, 134217728]

net.core.wmem_max

每个网络套接字发送缓冲区的最大大小,以字节为单位。

16777216

[212992, 134217728]

net.core.wmem_default

每个网络套接字发送缓冲区的默认大小,以字节为单位。

212992

大于等于212992

net.ipv4.tcp_mem

TCP栈可以使用的内存量,以内存页(大小通常为4KB)为单位。该参数由三个整数值组成,分别表示低水位、压力水位和最高水位,必须严格按照顺序设置。

根据系统总内存动态计算

三个参数逐渐增大,且最小值为80000以上

net.ipv4.neigh.default.gc_thresh1

ARP缓存中保留的最少条目数。缓存中的条目数量低于此值时,系统不会执行垃圾收集。

128

[128, 80000]

net.ipv4.neigh.default.gc_thresh2

ARP缓存中的最大条目数,为软限制,即缓存中的条目数量达到此值时,系统会开始考虑执行垃圾收集,但不会立即强制执行,而会等待5秒延迟。

1024

[512, 90000]

net.ipv4.neigh.default.gc_thresh3

ARP缓存中要保留的最大条目数,为硬限制,即缓存中的条目数量达到此值时,系统会立即执行垃圾收集。如果缓存中的条目数量一直超过此值,系统会不断进行清理。

8192

[1024, 100000]

支持通过控制台自定义的Transparent Hugepage参数

透明大页THP(Transparent Huge Pages)是Linux内核中的一个通用特性,可以自动将小页面(通常为4 KB)合并成大页面(通常为2 MB或更大),以减少内存访问页表项PTE(Page Table Entries)大小和访问次数,同时减轻了TLB(Translation Lookaside Buffer)缓存的压力,提高内存访问的效率。

说明
  • 目前处于灰度发布中。如需使用,请提交工单申请。

  • 下表中的默认值为在Alibaba Cloud Linux 2的4.19.91-18及之后的内核版本中系统默认值。

字段名称

说明

默认值

可取值

transparent_enabled

是否在系统全局开启THP功能。

always

  • always:系统全局开启THP功能。

  • never:系统全局关闭THP功能。

  • madvise:仅在通过madvise()进行系统调用,并且设置了MADV_HUGEPAGE标记的内存区域中开启THP功能。

transparent_defrag

是否开启透明大页THP相关的碎片整理配置。启用后,如果内存中的小页能够被合并成一个大页,可以减少页表的大小并提高系统的性能。

madvise

  • always:当系统分配不出透明大页时,暂停内存分配行为,总是等待系统进行内存的直接回收和内存的直接整理。内存回收和整理结束后,如果存在足够的连续空闲内存,则继续分配透明大页。

  • defer:当系统分配不出透明大页时,转为分配普通的4 KB页。同时,系统会唤醒kswapd守护进程进行内存的后台回收,唤醒kcompactd守护进程进行内存的后台整理。一段时间后,如果存在足够的连续空闲内存,khugepaged守护进程可将此前分配的4 KB页合并为2 MB的透明大页。

  • madvise:仅在通过madvise()进行系统调用,并且设置了MADV_HUGEPAGE标记的内存区域中,内存分配行为等同于always。

    其余部分的内存分配行为仍然为:发生缺页异常时,转为分配普通的4 KB页。

  • defer+madvise:仅在通过madvise()进行系统调用,并且设置了MADV_HUGEPAGE标记的内存区域中,内存分配行为等同于always。其余部分的内存分配行为仍然为defer。

  • never:禁止碎片整理。

khugepaged_defrag

khugepaged是一个内核线程,主要负责管理和整理大页,以减少内存碎片化并提高性能。它会监视系统中的大页面,当发现分散的大页时,尝试将它们合并成更大的页,以提高内存利用率和性能。

由于该操作会在内存路径中执行锁定操作,且khugepaged守护进程可能会在错误的时间启动扫描和转换大页的操作,因此存在影响应用性能的可能性。

1

  • 0:关闭khugepaged碎片整理功能。

  • 1:khugepaged守护进程会在系统空闲时周期性唤醒,尝试将连续的4 KB页合并成2 MB的透明大页。

khugepaged_alloc_sleep_millisecs

当透明大页THP分配失败时,khugepaged守护进程进行下一次大页分配前需要等待的时间,以避免短时间内连续发生大页分配失败。单位为毫秒。

60000,即默认等待60秒。

khugepaged_scan_sleep_millisecs

khugepaged守护进程每次唤醒的时间间隔。单位为毫秒。

10000,即默认每10秒唤醒一次。

khugepaged_pages_to_scan

khugepaged守护进程每次唤醒后扫描的内存页数量。单位为页。

4096

通过控制台自定义节点池OS参数

自定义OS参数后,系统将按批次变更节点配置。配置变更后,节点池中已有节点将即时生效,新增节点也会使用新配置。自定义OS参数生效时会改变已有节点的OS参数配置,可能会对业务产生一定影响。请在业务低峰期操作。

  1. 登录容器服务管理控制台,在左侧导航栏选择集群列表。

  2. 在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择节点管理 > 节点池。

  3. 在节点池列表的操作列,单击目标节点池对应的更多>OS 配置。

  4. 仔细阅读当前页面上的注意事项,单击+ 自定义参数选择需要配置的参数,设置每批次的最大并行数(最大为10),然后单击提交,按照页面指引完成操作。

    配置每批次的最大并行数后,OS配置将按批次对节点生效。执行过程中,您可以在事件记录区域查看进度,并控制执行过程(暂停、继续、取消等)。您可以使用暂停功能对已升级的节点进行验证。暂停时,正在配置的节点会继续完成执行,未执行的节点在任务继续前不会被执行自定义配置。

    重要

    请尽快完成自定义配置任务。处于暂停状态的任务将在7天后自动取消,相关的事件和日志信息也会被清理。

相关文章

节点池生命周期 2025-04-21 11:17

ACK集群节点池的生命周期涉及多个阶段和状态,从节点池的创建部署、运行维护(扩容缩容、更新升级、节点移除等),到最终的删除。本文介绍节点池的全生命周期,帮助您更好地理解和管理节点。 ACK集群节点池在不同状态下的含义和集群的状态流转图如下。

升级节点池 2025-04-21 11:17

升级集群Kubernetes版本时,请在控制面升级后及时在业务低峰期完成节点池的升级。节点池升级包括kubelet升级和容器运行时升级。执行升级操作前,ACK会提供前置检查,识别并提示可能影响升级的风险因素,以便实现平滑升级。 注意事项

更换操作系统 2025-04-21 11:17

ACK集群会定期发布新的操作系统镜像版本,带来新的功能特性、功能优化和缺陷修复,请及时升级节点池的操作系统镜像版本。您也可以按需切换操作系统类型,例如将已经停止维护(EOL)的操作系统更换为支持中的操作系统。 您可以参见操作系统镜像发布记录了解ACK支持的操作系统类型、操作系统镜像最新版本,以及部分

开启节点池节点故障自动恢复 2025-04-21 11:17

托管节点池自动监控节点状态,确保节点正常运行。当节点发生异常时,ACK会自动执行恢复操作。将节点池设置为托管模式会为所有节点同时开启自动恢复功能,简化节点运维工作。本文介绍节点自动恢复的应用场景和处理流程。 前提条件

修复节点池操作系统CVE漏洞 2025-04-21 11:17

节点操作系统中的CVE漏洞可能带来集群数据泄露、服务中断等问题,对集群的稳定性、安全性、合规性造成威胁。您可以启用操作系统(OS)CVE漏洞修复功能,扫描节点上存在的安全漏洞,获得修复建议与方法,并在控制台上完成快速修复。 前提条件

自定义节点池kubelet配置 2025-04-21 11:17

当kubelet参数默认配置无法满足业务需求、您希望对集群节点进行个性化调整时,您可以在节点池维度自定义节点的kubelet参数配置,调整节点行为。例如,您可以调整集群资源预留以调配资源用量、自定义节点压力驱逐阈值以缓解集群资源不足、调整拓扑管理器策略以提高系统性能等。 使用限制

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号