tencent cloud

文档反馈

节点资源预留说明

最后更新时间:2022-09-22 11:04:29

    TKE 需要占用节点一定的资源来运行相关组件(例如:kubelet、kube-proxy、Runtime 等),因此会造成节点资源总数集群中可分配资源数存在差异。本文介绍 TKE 集群中的节点资源预留策略和注意事项,以便在部署应用时合理设置 Pod 的请求资源量和限制资源量。

    节点可分配资源计算策略

    计算公式

    ALLOCATABLE = CAPACITY - RESERVED - EVICTION - THRESHOLD

    节点 CPU 预留规则

    节点 CPU 预留规则 说明
    1c <= CPU <= 4c 固定预留 0.1c -
    4c < CPU <= 64c 4c 以下预留 0.1c,超过 4c 部分预留 2.5% 例如:CPU = 32c
    预留资源 = 0.1 + (32 - 4) * 2.5% = 0.8c
    64c < CPU <= 128c 4c 以下预留 0.1c,4c~64c 预留 2.5%,超过 64c 部分预留 1.25% 例如:CPU = 96c
    预留资源 = 0.1 + (64 - 4) * 2.5% + (96 - 64) * 1.25%= 2c
    CPU > 128c 4c 以下预留 0.1c,4c~64c 预留 2.5%,64c~128c 预留 1.25%,超过 128c 部分预留 0.5% 例如:CPU = 196c
    预留资源 = 0.1 + (64 - 4) * 2.5% + (128 - 64) * 1.25% + (196 - 128) * 0.5%= 2.74c

    节点内存预留规则

    节点内存 预留规则 说明
    1G <= 内存 <= 4G 固定预留 25% 例如:内存 = 2G
    预留资源 = 2 * 25% = 512MB
    4G < 内存 <= 8G 4G 以下预留 25%,超过 4G 部分预留 20% 例如:内存 = 8G
    预留资源 = 4 * 25% + (8 - 4) * 20% = 1843MB
    8G < 内存 <= 16G 4G 以下预留 25%,4G~8G 预留 20%,超过 8G 部分预留 10% 例如:内存 = 12G
    预留资源 = 4 * 25% + (8 - 4) * 20% + (12 - 8) * 10%= 2252MB
    16G < 内存 <= 128G 4G 以下预留 25%,4G~8G 预留 20%,8G~16G 预留 10%,超过 16G 部分预留 6% 例如:内存 = 32G
    预留资源 = 4 * 25% + (8 - 4) * 20% + (16 - 8) * 10% + (32 - 16) * 6% = 3645MB
    内存 > 128G 4G 以下预留 25%,4G~8G 预留 20%,8G~16G 预留 10%,16G~128G 预留 6%,超过 128G 部分预留 2% 例如:内存 = 320G
    预留资源 = 4 * 25% + (8 - 4) * 20% + (16 - 8) * 10% + (128 - 16) * 6% + (320 - 128) * 2% = 13475MB
    说明:

    用户可以通过自定义 kubelet 参数的方式来修改 kube-reserved 以达到修改节点预留资源的目的,建议给节点组件预留充足的 CPU 和内存资源来保证节点的稳定性。

    查看节点可分配资源

    检查集群中可用的节点可分配资源,请执行以下命令,并将 NODE_NAME 替换为您要检查的节点的名称。输出结果包含CapacityAllocatable字段,并提供了针对 CPU、内存和临时存储的测量结果。

    kubectl describe node NODE_NAME | grep Allocatable -B 7 -A 6
    

    注意事项

    • 该预留策略针对 k8s 1.16及以上版本、2022年6月24日后创建的新增节点自动生效,无需手动配置。
    • 为保证业务稳定性,该预留策略不会对已有节点自动生效。因为该资源预留的计算方式可能会造成节点的可分配资源变少,对于资源水位较高的节点,可能会触发节点驱逐。
    • 若您希望对已有节点应用该资源预留策略,您可以通过 容器服务控制台 将该节点在不直接销毁的情况下移出集群,然后添加已有节点,新添加的节点会默认执行该资源预留策略。
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持