Kubernetes原生配置
为您提供典型的原生配置选项,您可以在此设置kube-apiserver、kube-controller等社区原生管理组件的配置,为您的集群在海量场景下提供最佳的云原生体验。
集群服务器配置(kube-apiserver)
容器故障迁移默认容忍周期
容器故障迁移默认容忍周期配置默认对集群中所有的容器生效,您也可以为指定Pod进行差异化容忍配置,此时将以Pod配置的容忍时长为准,详情请参见默认容忍策略说明。
请合理设置容忍时间配置,否则可能出现以下问题:
- 配置过小:在网络抖动等短时故障场景下,容器可能会频繁迁移而影响业务。
- 配置过大:在节点故障时,容器可能长时间无法迁移,导致业务受损。
名称 |
参数 |
说明 |
取值 |
---|---|---|---|
容器迁移对节点不可用状态的容忍时间 |
default-not-ready-toleration-seconds |
表示节点处于NotReady状态下的容忍时间。当节点出现异常,变为不可用状态时,容器将在该容忍时间后自动驱逐,默认为300s。 |
默认:300s |
容器迁移对节点无法访问状态的容忍时间 |
default-unreachable-toleration-seconds |
表示节点处于unreachable状态下的容忍时间。当环境出现异常,例如节点无法访问(如节点网络异常)时,容器将在该容忍时间后自动驱逐,默认为300s。 |
默认:300s |
集群控制器配置(kube-controller-manager)
控制器公共配置
- 控制器性能配置:用于设置控制器访问kube-api-server的性能参数配置。
请合理设置控制器性能配置,否则可能出现以下问题:
- 配置过小:可能会触发客户端限流,对控制器性能产生影响。
- 配置过大:可能会导致kube-apiserver过载。
表2 控制器性能配置参数说明 名称
参数
说明
取值
控制器访问kube-apiserver的QPS
kube-api-qps
与kube-apiserver通信的QPS,即每秒查询率。
- 集群规格为1000节点以下时,默认值为100
- 集群规格为1000节点及以上时,默认值为200
控制器访问kube-apiserver的突发流量上限
kube-api-burst
与kube-apiserver通信的突发流量上限。
- 集群规格为1000节点以下时,默认值为100
- 集群规格为1000节点及以上时,默认值为200
- 资源对象处理并发配置:允许同时同步的资源对象的数量。配置数量越大,管理响应越快,但 CPU(和网络)负载也越高。
请合理设置资源对象处理并发配置,否则可能出现以下问题:
- 配置过小:可能导致管理器处理响应慢。
- 配置过大:会对集群管控面造成压力,产生过载风险。
表3 资源对象处理并发配置参数说明 名称
参数
说明
取值
Deployment
concurrent-deployment-syncs
可以并发同步的Deployment对象个数。数值越大意味着对Deployment的响应越及时,同时也意味着更大的CPU(和网络带宽)压力。
默认:5
Endpoint
concurrent-endpoint-syncs
可以并发同步的Endpoints对象个数。数值越大意味着更新Endpoints越快,同时也意味着更大的CPU(和网络)压力。
默认:5
GC回收
concurrent-gc-syncs
可以并发同步的垃圾收集(Garbage Collector)工作线程个数。
默认:20
Job
concurrent-job-syncs
可以并发同步的Job对象个数。较大的数值意味着对Job的响应越及时,不过也意味着更多的CPU(和网络)占用。
默认:5
CronJob
concurrent-cron-job-syncs
可以并发同步的CronJob对象个数。较大的数值意味着对CronJob的响应越及时,不过也意味着更多的CPU(和网络)占用。
默认:5
Namespace
concurrent-namespace-syncs
可以并发同步的Namespace对象个数。较大的数值意味着对Namespace的响应越及时,不过也意味着更多的CPU(和网络)占用。
默认:10
Replicaset
concurrent-replicaset-syncs
可以并发同步的ReplicaSet个数。数值越大,副本管理的响应速度越快,同时也意味着更多的CPU(和网络)占用。
默认:5
ResourceQuota
concurrent-resource-quota-syncs
可以并发同步的ResourceQuota对象个数。数值越大,配额管理的响应速度越快,不过对CPU(和网络)的占用也越高。
默认:5
Service
concurrent-service-syncs
可以并发同步的Service对象个数。数值越大,服务管理的响应速度越快,不过对CPU(和网络)的占用也越高。
默认:10
ServiceAccountToken
concurrent-serviceaccount-token-syncs
可以并发同步的服务账号令牌对象个数。数值越大,令牌生成的速度越快,不过对CPU(和网络)的占用也越高。
默认:5
TTLAfterFinished
concurrent-ttl-after-finished-syncs
可以并发同步的ttl-after-finished-controller线程个数。
默认:5
RC
concurrent_rc_syncs
可以并发同步的副本控制器对象个数。数值越大,副本管理操作越快,不过对CPU(和网络)的占用也越高。
说明:该参数仅在v1.19及以下版本集群中使用。
默认:5
RC
concurrent-rc-syncs
可以并发同步的副本控制器对象个数。数值越大,副本管理操作越快,不过对CPU(和网络)的占用也越高。
说明:该参数仅在v1.21至v1.23版本集群中使用。v1.25版本后,该参数弃用(正式弃用版本为v1.25.3-r0)。
默认:5
HPA并发处理数
concurrent-horizontal-pod-autoscaler-syncs
允许并发执行的HPA弹性伸缩数量。 数值越大,HPA弹性伸缩响应越快,不过对CPU(和网络)的占用也越高。
该参数仅v1.27及以上版本集群支持。
默认:5
取值范围为1-50
负载弹性伸缩控制器(horizontal-pod-autoscaler-controller)配置
请合理设置负载弹性伸缩控制器配置,否则可能出现以下问题:
- 配置过小:可能导致控制器处理响应慢。
- 配置过大:会对集群管控面造成压力,产生过载风险。
名称 |
参数 |
说明 |
取值 |
---|---|---|---|
Pod水平伸缩同步的周期 |
horizontal-pod-autoscaler-sync-period |
水平Pod扩缩器对Pod进行弹性伸缩的周期。配置越小弹性伸缩器反应越及时,同时CPU负载也越高。 |
默认:15s |
Pod回收控制器(pod-garbage-collector-controller)配置
名称 |
参数 |
说明 |
取值 |
---|---|---|---|
终止状态Pod触发回收的数量阈值 |
terminated-pod-gc-threshold |
在Pod GC开始删除终止状态(terminated)的Pod之前,系统允许存在终止状态的Pod数量。
说明:
请合理设置该参数,配置过大时,集群中可能存在大量终止状态的Pod,影响相关List查询请求性能,产生集群过载风险。 |
默认:1000 取值范围为10-12500 |
资源配额控制器(resource-quota-controller)配置
在高并发场景下(如批量创建Pod),配额管理机制可能导致部分请求因冲突而失败,除非必要不建议启用该功能。如启用,请确保请求客户端具备重试机制。
名称 |
参数 |
说明 |
取值 |
---|---|---|---|
启用资源配额管理 |
enable-resource-quota |
通过配额管理功能,用户可以对命名空间或相关维度下的各类负载(Deployment、Pod等)数量以及资源(CPU、Memory)上限进行控制。命名空间通过ResourceQuota对象进行配额限制。
|
默认:关闭(false) |