更新时间:2024-12-04 GMT+08:00

集群配置管理

操作场景

CCE支持对集群配置参数进行管理,通过该功能您可以对核心组件进行深度配置。

约束与限制

本功能仅支持在v1.15及以上版本的集群中使用,v1.15以下版本不显示该功能。

操作步骤

  1. 登录CCE控制台,在左侧导航栏中选择“集群管理”
  2. 找到目标集群,查看集群的更多操作,并选择“配置管理”。
  3. 在侧边栏滑出的“配置管理”窗口中,根据业务需求修改Kubernetes的参数值:

    表1 集群服务器配置(kube-apiserver

    名称

    参数

    详情

    取值

    容器迁移对节点不可用状态的容忍时间

    default-not-ready-toleration-seconds

    容器迁移对节点不可用状态的容忍时间,默认对所有的容器生效,用户也可以为指定Pod进行差异化容忍配置,此时将以Pod配置的容忍时长为准,详情请参见容忍策略

    如果容忍时间配置过小,在网络抖动等短时故障场景下,容器可能会频繁迁移而影响业务;如果容忍时间配置过大,在节点故障时,容器可能长时间无法迁移,导致业务受损。

    默认:300s

    容器迁移对节点无法访问状态的容忍时间

    default-unreachable-toleration-seconds

    容器迁移对节点无法访问状态的容忍时间,默认对所有的容器生效,用户也可以为指定Pod进行差异化容忍配置,此时将以Pod配置的容忍时长为准,详情请参见容忍策略

    如果容忍时间配置过小,在网络抖动等短时故障场景下,容器可能会频繁迁移而影响业务;如果容忍时间配置过大,在节点故障时,容器可能长时间无法迁移,导致业务受损。

    默认:300s

    修改类API请求最大并发数

    max-mutating-requests-inflight

    最大mutating并发请求数。 当服务器超过此值时,它会拒绝请求。

    0表示无限制。该参数与集群规模相关,不建议修改。

    从v1.21版本开始不再支持手动配置,根据集群规格自动配置如下:

    • 50和200节点:200
    • 1000节点:500
    • 2000节点:1000

    非修改类API请求最大并发数

    max-requests-inflight

    最大non-mutating并发请求数。 当服务器超过此值时,它会拒绝请求。

    0表示无限制。该参数与集群规模相关,不建议修改。

    从v1.21版本开始不再支持手动配置,根据集群规格自动配置如下:

    • 50和200节点:400
    • 1000节点:1000
    • 2000节点:2000

    Nodeport类型服务端口范围

    service-node-port-range

    NodePort端口范围,修改后需前往安全组页面同步修改节点安全组30000-32767的TCP/UDP端口范围,否则除默认端口外的其他端口将无法被外部访问。

    端口号小于20106会和CCE组件的健康检查端口冲突,引发集群不可用;端口号高于32767会和net.ipv4.ip_local_port_range范围冲突,影响性能。

    默认:30000-32767

    取值范围:

    min>20105

    max<32768

    请求超时时间

    request-timeout

    kube-apiserver组件的默认请求超时时间,请谨慎修改此参数,确保取值合理性,以避免频繁出现接口超时或其他异常。

    该参数仅v1.19.16-r30、v1.21.10-r10、v1.23.8-r10、v1.25.3-r10及以上版本集群支持。

    默认:1m0s

    取值范围:

    min>=1s

    max<=1h

    修改在服务端生效

    feature-gates: ServerSideApply

    kube-apiserver组件ServerSideApply特性开关,详情请参见服务器端应用(Server-Side Apply)。功能启用时,系统会将资源的字段管理信息存储在metadata.managedFields字段中,以记录历史操作的主体、时间、字段等信息。

    该参数仅v1.19.16-r30及以上补丁版本、v1.21.10-r10及以上补丁版本、v1.23.8-r10及以上补丁版本、v1.25.3-r10及以上补丁版本集群支持。v1.27及以上版本集群此特性默认开启,不支持关闭。

    默认:开启

    开启过载防护

    support-overload

    集群过载控制开关,开启后将根据控制节点的资源压力,动态调整请求并发量,维护控制节点和集群的可靠性。

    该参数仅v1.23及以上版本集群支持。

    • false:不启用过载控制
    • true:启用过载控制
    表2 调度器配置

    名称

    参数

    详情

    取值

    调度器访问kube-apiserver的QPS

    kube-api-qps

    与kube-apiserver通信的QPS

    • 集群规格为1000节点以下时,默认值100
    • 集群规格为1000节点及以上时,默认值200

    调度器访问kube-apiserver的突发流量上限

    kube-api-burst

    与kube-apiserver通信的burst

    • 集群规格为1000节点以下时,默认值100
    • 集群规格为1000节点及以上时,默认值200

    开启GPU共享

    enable-gpu-share

    是否开启GPU共享,该参数仅v1.23.7-r10、v1.25.3-r0及以上版本集群支持。

    • 关闭GPU共享时,需保证集群中的Pod没有使用共享GPU能力(即Pod不存在cce.io/gpu-decision的annotation)。
    • 开启GPU共享时,需保证集群中已使用GPU资源的Pod均存在cce.io/gpu-decision的annotation。

    默认:开启

    表3 集群控制器配置(kube-controller-manager

    名称

    参数

    详情

    取值

    Deployment

    concurrent-deployment-syncs

    Deployment的并发处理数

    默认:5

    Endpoint

    concurrent-endpoint-syncs

    Endpoint的并发处理数

    默认:5

    GC回收

    concurrent-gc-syncs

    Garbage Collector的并发数

    默认:20

    Job

    concurrent-job-syncs

    允许同时同步的作业对象的数量。

    默认:5

    CronJob

    concurrent-cron-job-syncs

    允许同时同步的定时任务对象的数量。

    默认:5

    Namespace

    concurrent-namespace-syncs

    Namespace的并发处理数

    默认:10

    ReplicaSet

    concurrent-replicaset-syncs

    ReplicaSet的并发处理数

    默认:5

    ResourceQuota

    concurrent-resource-quota-syncs

    Resource Quota的并发处理数

    默认:5

    Servicepace

    concurrent-service-syncs

    Service的并发处理数

    默认:10

    ServiceAccountToken

    concurrent-serviceaccount-token-syncs

    ServiceAccount Token的并发处理数

    默认:5

    TTLAfterFinished

    concurrent-ttl-after-finished-syncs

    ttl-after-finished的并发处理数

    默认:5

    RC

    concurrent-rc-syncs

    RC的并发处理数

    说明:

    该参数仅在v1.21至v1.23版本集群中使用。v1.25版本后,该参数弃用(正式弃用版本为v1.25.3-r0)。

    默认:5

    HPA并发处理数

    concurrent-horizontal-pod-autoscaler-syncs

    HPA弹性伸缩并发处理数。

    v1.27以下版本集群中默认为1,v1.27及以上版本以下集群中默认为5

    取值范围为1-50

    Pod水平伸缩同步的周期

    horizontal-pod-autoscaler-sync-period

    集群弹性计算的周期

    默认:15s

    控制器访问kube-apiserver的QPS

    kube-api-qps

    与kube-apiserver通信的qps

    • 集群规格为1000节点以下时,默认值100
    • 集群规格为1000节点及以上时,默认值200

    控制器访问kube-apiserver的突发流量上限

    kube-api-burst

    与kube-apiserver通信的burst

    • 集群规格为1000节点以下时,默认值100
    • 集群规格为1000节点及以上时,默认值200

    终止状态pod触发回收的数量阈值

    terminated-pod-gc-threshold

    集群中可保留的终止状态Pod数量,终止状态Pod超出该数量时将会被删除。

    说明:

    该参数设置为0时,表示保留所有终止状态的Pod。

    默认:1000

    取值范围为10-12500

    集群版本为v1.21.11-r40、v1.23.8-r0、v1.25.6-r0、v1.27.3-r0及以上时,取值范围调整为0-100000

    表4 扩展控制器配置(仅v1.21及以上版本集群支持)

    名称

    参数

    详情

    取值

    启用资源配额管理

    enable-resource-quota

    创建Namespace时是否自动创建ResourceQuota对象。通过配额管理功能,用户可以对命名空间或相关维度下的各类负载数量以及资源上限进行控制。

    • 关闭:不自动创建ResourceQuota对象。
    • 开启:自动创建ResourceQuota对象。ResourceQuota的默认取值请参见设置资源配额及限制
      说明:

      在高并发场景下(如批量创建Pod),配额管理机制可能导致部分请求因冲突而失败,除非必要不建议启用该功能;如启用,请确保请求客户端具备重试机制。

    默认:关闭

  4. 单击“确定”,完成配置操作。