kube-controller-manager

摘要

Kubernetes 控制器管理員是一個常駐程式,它嵌入了 Kubernetes 附帶的核心控制迴圈。在機器人和自動化應用程式中,控制迴圈是一個非終止迴圈,用於調節系統的狀態。在 Kubernetes 中,控制器是一個控制迴圈,它透過 apiserver 監看叢集的共用狀態,並進行變更以嘗試將目前狀態移向所需狀態。今天 Kubernetes 附帶的控制器範例包括複製控制器、端點控制器、命名空間控制器和服務帳戶控制器。

kube-controller-manager [flags]

選項

--allocate-node-cidrs

是否應配置 Pod 的 CIDR 並在雲端供應商上設定。需要 --cluster-cidr。

--allow-metric-labels stringToString     預設值:[]

從指標標籤到此標籤的值允許清單的對應。金鑰的格式為 <MetricName>,<LabelName>。值的格式為 <allowed_value>,<allowed_value>...例如 metric1,label1='v1,v2,v3', metric1,label2='v1,v2,v3' metric2,label1='v1,v2,v3'。

--allow-metric-labels-manifest string

包含允許清單對應的資訊清單檔案的路徑。檔案的格式與旗標 --allow-metric-labels 相同。請注意,旗標 --allow-metric-labels 將覆寫資訊清單檔案。

--attach-detach-reconcile-sync-period duration     預設值:1m0s

卷宗附加分離之間協調器的同步等待時間。此持續時間必須大於一秒,並且從預設值增加此值可能會導致卷宗與 Pod 不匹配。

--authentication-kubeconfig string

kubeconfig 檔案,指向「核心」Kubernetes 伺服器,並具有建立 tokenreviews.authentication.k8s.io 的足夠權限。這是選用的。如果為空,則所有權杖請求都被視為匿名,並且不會在叢集中查閱用戶端 CA。

--authentication-skip-lookup

如果為 false,則將使用 authentication-kubeconfig 從叢集中查閱遺失的驗證組態。

--authentication-token-webhook-cache-ttl duration     預設值:10 秒

從 webhook 權杖驗證器快取回應的持續時間。

--authentication-tolerate-lookup-failure

如果為 true,則從叢集中查閱遺失的驗證組態失敗不會被視為致命錯誤。請注意,這可能會導致驗證將所有請求視為匿名。

--authorization-always-allow-paths strings     預設值:"/healthz,/readyz,/livez"

在授權期間要略過的 HTTP 路徑清單,即這些路徑在未聯絡「核心」Kubernetes 伺服器的情況下獲得授權。

--authorization-kubeconfig string

kubeconfig 檔案,指向「核心」Kubernetes 伺服器,並具有建立 subjectaccessreviews.authorization.k8s.io 的足夠權限。這是選用的。如果為空,則所有未被授權略過的請求都將被禁止。

--authorization-webhook-cache-authorized-ttl duration     預設值:10 秒

從 webhook 授權器快取「已授權」回應的持續時間。

--authorization-webhook-cache-unauthorized-ttl duration     預設值:10 秒

從 webhook 授權器快取「未授權」回應的持續時間。

--bind-address string     預設值:0.0.0.0

要接聽 --secure-port 連接埠的 IP 位址。關聯的介面必須可由叢集的其餘部分以及 CLI/網頁用戶端存取。如果為空白或未指定的位址 (0.0.0.0 或 ::),則將使用所有介面和 IP 位址系列。

--cert-dir string

TLS 憑證所在的目錄。如果提供了 --tls-cert-file 和 --tls-private-key-file,則將忽略此旗標。

--cidr-allocator-type string     預設值:"RangeAllocator"

要使用的 CIDR 分配器類型

--client-ca-file string

若設定此項,任何請求出示由 client-ca-file 中憑證授權單位簽署的用戶端憑證,都將會以對應於該用戶端憑證 CommonName 的身分進行驗證。

--cloud-config string

雲端供應商設定檔的路徑。若為空字串,則表示沒有設定檔。

--cloud-provider string

雲端服務的供應商。若為空字串,則表示沒有供應商。

--cluster-cidr string

叢集中 Pod 的 CIDR 範圍。僅當 `--allocate-node-cidrs=true` 時使用;若為 false,此選項將會被忽略。

--cluster-name string     預設值: "kubernetes"

叢集的執行個體前綴。

--cluster-signing-cert-file string

包含 PEM 編碼 X509 CA 憑證的檔案名稱,此憑證用於簽發叢集範圍的憑證。若指定此項,則不得再指定更詳細的 `--cluster-signing-*` 旗標。

--cluster-signing-duration duration     預設值: 8760h0m0s

簽署憑證的最長有效期限。個別 CSR 可以透過設定 `spec.expirationSeconds` 來請求較短期限的憑證。

--cluster-signing-key-file string

包含 PEM 編碼 RSA 或 ECDSA 私密金鑰的檔案名稱,此金鑰用於簽署叢集範圍的憑證。若指定此項,則不得再指定更詳細的 `--cluster-signing-*` 旗標。

--cluster-signing-kube-apiserver-client-cert-file string

包含 PEM 編碼 X509 CA 憑證的檔案名稱,此憑證用於簽發 kubernetes.io/kube-apiserver-client 簽署者的憑證。若指定此項,則不得設定 `--cluster-signing-{cert,key}-file`。

--cluster-signing-kube-apiserver-client-key-file string

包含 PEM 編碼 RSA 或 ECDSA 私密金鑰的檔案名稱,此金鑰用於簽署 kubernetes.io/kube-apiserver-client 簽署者的憑證。若指定此項,則不得設定 `--cluster-signing-{cert,key}-file`。

--cluster-signing-kubelet-client-cert-file string

包含 PEM 編碼 X509 CA 憑證的檔案名稱,此憑證用於簽發 kubernetes.io/kube-apiserver-client-kubelet 簽署者的憑證。若指定此項,則不得設定 `--cluster-signing-{cert,key}-file`。

--cluster-signing-kubelet-client-key-file string

包含 PEM 編碼 RSA 或 ECDSA 私密金鑰的檔案名稱,此金鑰用於簽署 kubernetes.io/kube-apiserver-client-kubelet 簽署者的憑證。若指定此項,則不得設定 `--cluster-signing-{cert,key}-file`。

--cluster-signing-kubelet-serving-cert-file string

包含 PEM 編碼 X509 CA 憑證的檔案名稱,此憑證用於簽發 kubernetes.io/kubelet-serving 簽署者的憑證。若指定此項,則不得設定 `--cluster-signing-{cert,key}-file`。

--cluster-signing-kubelet-serving-key-file string

包含 PEM 編碼 RSA 或 ECDSA 私密金鑰的檔案名稱,此金鑰用於簽署 kubernetes.io/kubelet-serving 簽署者的憑證。若指定此項,則不得設定 `--cluster-signing-{cert,key}-file`。

--cluster-signing-legacy-unknown-cert-file string

包含 PEM 編碼 X509 CA 憑證的檔案名稱,此憑證用於簽發 kubernetes.io/legacy-unknown 簽署者的憑證。若指定此項,則不得設定 `--cluster-signing-{cert,key}-file`。

--cluster-signing-legacy-unknown-key-file string

包含 PEM 編碼 RSA 或 ECDSA 私密金鑰的檔案名稱,此金鑰用於簽署 kubernetes.io/legacy-unknown 簽署者的憑證。若指定此項,則不得設定 `--cluster-signing-{cert,key}-file`。

--concurrent-cron-job-syncs int32     預設值: 5

允許同時同步處理的 CronJob 物件數量。數值越大 = 工作回應速度越快,但 CPU (和網路) 負載也越高

--concurrent-daemonset-syncs int32     預設值: 2

允許同時同步處理的 DaemonSet 物件數量。數值越大 = DaemonSet 回應速度越快,但 CPU (和網路) 負載也越高

--concurrent-deployment-syncs int32     預設值: 5

允許同時同步處理的 Deployment 物件數量。數值越大 = Deployment 回應速度越快,但 CPU (和網路) 負載也越高

--concurrent-endpoint-syncs int32     預設值: 5

將同時執行的 Endpoint 同步操作數量。數值越大 = Endpoint 更新速度越快,但 CPU (和網路) 負載也越高

--concurrent-ephemeralvolume-syncs int32     預設值: 5

將同時執行的臨時卷宗同步操作數量。數值越大 = 臨時卷宗更新速度越快,但 CPU (和網路) 負載也越高

--concurrent-gc-syncs int32     預設值: 20

允許同時同步處理的垃圾收集器工作程序數量。

--concurrent-horizontal-pod-autoscaler-syncs int32     預設值: 5

允許同時同步處理的 Horizontal Pod Autoscaler 物件數量。數值越大 = Horizontal Pod Autoscaler 物件處理的回應速度越快,但 CPU (和網路) 負載也越高。

--concurrent-job-syncs int32     預設值: 5

允許同時同步處理的 Job 物件數量。數值越大 = 工作回應速度越快,但 CPU (和網路) 負載也越高

--concurrent-namespace-syncs int32     預設值: 10

允許同時同步處理的 Namespace 物件數量。數值越大 = Namespace 終止回應速度越快,但 CPU (和網路) 負載也越高

--concurrent-rc-syncs int32     預設值: 5

允許同時同步處理的 Replication Controller 數量。數值越大 = 副本管理回應速度越快,但 CPU (和網路) 負載也越高

--concurrent-replicaset-syncs int32     預設值: 5

允許同時同步處理的 Replica Set 數量。數值越大 = 副本管理回應速度越快,但 CPU (和網路) 負載也越高

--concurrent-resource-quota-syncs int32     預設值: 5

允許同時同步處理的 Resource Quota 數量。數值越大 = Quota 管理回應速度越快,但 CPU (和網路) 負載也越高

--concurrent-service-endpoint-syncs int32     預設值: 5

將同時執行的 Service Endpoint 同步操作數量。數值越大 = Endpoint Slice 更新速度越快,但 CPU (和網路) 負載也越高。預設值為 5。

--concurrent-service-syncs int32     預設值: 1

允許同時同步處理的 Service 數量。數值越大 = Service 管理回應速度越快,但 CPU (和網路) 負載也越高

--concurrent-serviceaccount-token-syncs int32     預設值: 5

允許同時同步處理的 Service Account Token 物件數量。數值越大 = Token 產生回應速度越快,但 CPU (和網路) 負載也越高

--concurrent-statefulset-syncs int32     預設值: 5

允許同時同步處理的 StatefulSet 物件數量。數值越大 = StatefulSet 回應速度越快,但 CPU (和網路) 負載也越高

--concurrent-ttl-after-finished-syncs int32     預設值: 5

允許同時同步處理的 ttl-after-finished-controller 工作程序數量。

--concurrent-validating-admission-policy-status-syncs int32     預設值: 5

允許同時同步處理的 ValidatingAdmissionPolicyStatusController 工作程序數量。

--configure-cloud-routes     預設值: true

是否應在雲端供應商上設定由 allocate-node-cidrs 分配的 CIDR。

--contention-profiling

若啟用效能分析,則啟用封鎖效能分析

--controller-start-interval duration

啟動控制器管理程式之間的間隔。

--controllers strings     預設值: "*"

要啟用的控制器清單。 '*' 啟用所有預設啟用的控制器,'foo' 啟用名為 'foo' 的控制器,'-foo' 停用名為 'foo' 的控制器。
所有控制器: bootstrap-signer-controller, certificatesigningrequest-approving-controller, certificatesigningrequest-cleaner-controller, certificatesigningrequest-signing-controller, cloud-node-lifecycle-controller, clusterrole-aggregation-controller, cronjob-controller, daemonset-controller, deployment-controller, disruption-controller, endpoints-controller, endpointslice-controller, endpointslice-mirroring-controller, ephemeral-volume-controller, garbage-collector-controller, horizontal-pod-autoscaler-controller, job-controller, kube-apiserver-serving-clustertrustbundle-publisher-controller, legacy-serviceaccount-token-cleaner-controller, namespace-controller, node-ipam-controller, node-lifecycle-controller, node-route-controller, persistentvolume-attach-detach-controller, persistentvolume-binder-controller, persistentvolume-expander-controller, persistentvolume-protection-controller, persistentvolumeclaim-protection-controller, pod-garbage-collector-controller, replicaset-controller, replicationcontroller-controller, resourceclaim-controller, resourcequota-controller, root-ca-certificate-publisher-controller, selinux-warning-controller, service-cidr-controller, service-lb-controller, serviceaccount-controller, serviceaccount-token-controller, statefulset-controller, storage-version-migrator-controller, storageversion-garbage-collector-controller, taint-eviction-controller, token-cleaner-controller, ttl-after-finished-controller, ttl-controller, validatingadmissionpolicy-status-controller, volumeattributesclass-protection-controller
預設停用的控制器: bootstrap-signer-controller, selinux-warning-controller, token-cleaner-controller

--disable-attach-detach-reconcile-sync

停用卷宗連結/解除連結協調同步。停用此功能可能會導致卷宗與 Pod 不匹配。請謹慎使用。

--disable-force-detach-on-timeout

防止根據最長卸載時間和節點狀態強制解除連結卷宗。如果此旗標設定為 true,則必須使用非正常節點關閉功能才能從節點故障中恢復。請參閱 https://k8s.io/docs/storage-disable-force-detach-on-timeout/。

--disable-http2-serving

若為 true,則將停用 HTTP2 服務 [預設值=false]

--disabled-metrics strings

此旗標為行為異常的指標提供應急措施。您必須提供完整合格的指標名稱才能停用它。免責聲明:停用指標的優先順序高於顯示隱藏指標。

--emulated-version strings

不同元件模擬其功能 (API、功能等) 的版本。
若設定此項,元件將模擬此版本的行為,而不是底層二進位版本的行為。
版本格式只能是 major.minor,例如:'--emulated-version=wardle=1.2,kube=1.31'。選項為
kube=1.32..1.32 (預設值=1.32)如果未指定元件,則預設為 "kube"

--enable-dynamic-provisioning     預設值: true

為支援動態佈建的環境啟用動態佈建。

--enable-garbage-collector     預設值: true

啟用通用垃圾收集器。必須與 kube-apiserver 的對應旗標同步。

--enable-hostpath-provisioner

在沒有雲端供應商的情況下執行時,啟用 HostPath PV 佈建。這允許測試和開發佈建功能。HostPath 佈建在任何方面都不受支援,在多節點叢集中將無法運作,並且不應用於測試或開發以外的任何用途。

--enable-leader-migration

是否啟用控制器領導者移轉。

--endpoint-updates-batch-period duration

Endpoint 更新批次處理期間的長度。Pod 變更的處理將延遲此持續時間,以便將它們與潛在的即將到來的更新結合,並減少 Endpoint 更新的總數。數值越大 = Endpoint 程式設計延遲越高,但產生的 Endpoint 修訂版本數量越少

--endpointslice-updates-batch-period duration

Endpoint Slice 更新批次處理期間的長度。Pod 變更的處理將延遲此持續時間,以便將它們與潛在的即將到來的更新結合,並減少 Endpoint 更新的總數。數值越大 = Endpoint 程式設計延遲越高,但產生的 Endpoint 修訂版本數量越少

--external-cloud-volume-plugin string

當雲端供應商設定為 external 時要使用的外掛程式。可以為空,僅應在 cloud-provider 為 external 時設定。目前用於允許 node-ipam-controller、persistentvolume-binder-controller、persistentvolume-expander-controller 和 attach-detach-controller 適用於樹狀結構內雲端供應商。

--feature-gates colonSeparatedMultimapStringString

組件:key=value 配對的逗號分隔清單,用於描述不同組件的 Alpha/實驗性功能的功能閘道。
如果未指定組件,則預設為 "kube"。可以重複調用此旗標。例如:--feature-gates 'wardle:featureA=true,wardle:featureB=false' --feature-gates 'kube:featureC=true' 選項為
kube:APIResponseCompression=true|false (BETA - 預設值=true)
kube:APIServerIdentity=true|false (BETA - 預設值=true)
kube:APIServerTracing=true|false (BETA - 預設值=true)
kube:APIServingWithRoutine=true|false (ALPHA - 預設值=false)
kube:AllAlpha=true|false (ALPHA - 預設值=false)
kube:AllBeta=true|false (BETA - 預設值=false)
kube:AllowUnsafeMalformedObjectDeletion=true|false (ALPHA - 預設值=false)
kube:AnonymousAuthConfigurableEndpoints=true|false (BETA - 預設值=true)
kube:AnyVolumeDataSource=true|false (BETA - 預設值=true)
kube:AuthorizeNodeWithSelectors=true|false (BETA - 預設值=true)
kube:AuthorizeWithSelectors=true|false (BETA - 預設值=true)
kube:BtreeWatchCache=true|false (BETA - 預設值=true)
kube:CBORServingAndStorage=true|false (ALPHA - 預設值=false)
kube:CPUManagerPolicyAlphaOptions=true|false (ALPHA - 預設值=false)
kube:CPUManagerPolicyBetaOptions=true|false (BETA - 預設值=true)
kube:CPUManagerPolicyOptions=true|false (BETA - 預設值=true)
kube:CRDValidationRatcheting=true|false (BETA - 預設值=true)
kube:CSIMigrationPortworx=true|false (BETA - 預設值=true)
kube:CSIVolumeHealth=true|false (ALPHA - 預設值=false)
kube:ClientsAllowCBOR=true|false (ALPHA - 預設值=false)
kube:ClientsPreferCBOR=true|false (ALPHA - 預設值=false)
kube:CloudControllerManagerWebhook=true|false (ALPHA - 預設值=false)
kube:ClusterTrustBundle=true|false (ALPHA - 預設值=false)
kube:ClusterTrustBundleProjection=true|false (ALPHA - 預設值=false)
kube:ComponentFlagz=true|false (ALPHA - 預設值=false)
kube:ComponentStatusz=true|false (ALPHA - 預設值=false)
kube:ConcurrentWatchObjectDecode=true|false (BETA - 預設值=false)
kube:ConsistentListFromCache=true|false (BETA - 預設值=true)
kube:ContainerCheckpoint=true|false (BETA - 預設值=true)
kube:ContextualLogging=true|false (BETA - 預設值=true)
kube:CoordinatedLeaderElection=true|false (ALPHA - 預設值=false)
kube:CrossNamespaceVolumeDataSource=true|false (ALPHA - 預設值=false)
kube:CustomCPUCFSQuotaPeriod=true|false (ALPHA - 預設值=false)
kube:DRAAdminAccess=true|false (ALPHA - 預設值=false)
kube:DRAResourceClaimDeviceStatus=true|false (ALPHA - 預設值=false)
kube:DisableAllocatorDualWrite=true|false (ALPHA - 預設值=false)
kube:DynamicResourceAllocation=true|false (BETA - 預設值=false)
kube:EventedPLEG=true|false (ALPHA - 預設值=false)
kube:ExternalServiceAccountTokenSigner=true|false (ALPHA - 預設值=false)
kube:GracefulNodeShutdown=true|false (BETA - 預設值=true)
kube:GracefulNodeShutdownBasedOnPodPriority=true|false (BETA - 預設值=true)
kube:HPAScaleToZero=true|false (ALPHA - 預設值=false)
kube:HonorPVReclaimPolicy=true|false (BETA - 預設值=true)
kube:ImageMaximumGCAge=true|false (BETA - 預設值=true)
kube:ImageVolume=true|false (ALPHA - 預設值=false)
kube:InPlacePodVerticalScaling=true|false (ALPHA - 預設值=false)
kube:InPlacePodVerticalScalingAllocatedStatus=true|false (ALPHA - 預設值=false)
kube:InPlacePodVerticalScalingExclusiveCPUs=true|false (ALPHA - 預設值=false)
kube:InTreePluginPortworxUnregister=true|false (ALPHA - 預設值=false)
kube:InformerResourceVersion=true|false (ALPHA - 預設值=false)
kube:JobBackoffLimitPerIndex=true|false (BETA - 預設值=true)
kube:JobManagedBy=true|false (BETA - 預設值=true)
kube:JobPodReplacementPolicy=true|false (BETA - 預設值=true)
kube:JobSuccessPolicy=true|false (BETA - 預設值=true)
kube:KubeletCgroupDriverFromCRI=true|false (BETA - 預設值=true)
kube:KubeletCrashLoopBackOffMax=true|false (ALPHA - 預設值=false)
kube:KubeletFineGrainedAuthz=true|false (ALPHA - 預設值=false)
kube:KubeletInUserNamespace=true|false (ALPHA - 預設值=false)
kube:KubeletPodResourcesDynamicResources=true|false (ALPHA - 預設值=false)
kube:KubeletPodResourcesGet=true|false (ALPHA - 預設值=false)
kube:KubeletSeparateDiskGC=true|false (BETA - 預設值=true)
kube:KubeletTracing=true|false (BETA - 預設值=true)
kube:LocalStorageCapacityIsolationFSQuotaMonitoring=true|false (BETA - 預設值=false)
kube:LoggingAlphaOptions=true|false (ALPHA - 預設值=false)
kube:LoggingBetaOptions=true|false (BETA - 預設值=true)
kube:MatchLabelKeysInPodAffinity=true|false (BETA - 預設值=true)
kube:MatchLabelKeysInPodTopologySpread=true|false (BETA - 預設值=true)
kube:MaxUnavailableStatefulSet=true|false (ALPHA - 預設值=false)
kube:MemoryQoS=true|false (ALPHA - 預設值=false)
kube:MultiCIDRServiceAllocator=true|false (BETA - 預設值=false)
kube:MutatingAdmissionPolicy=true|false (ALPHA - 預設值=false)
kube:NFTablesProxyMode=true|false (BETA - 預設值=true)
kube:NodeInclusionPolicyInPodTopologySpread=true|false (BETA - 預設值=true)
kube:NodeLogQuery=true|false (BETA - 預設值=false)
kube:NodeSwap=true|false (BETA - 預設值=true)
kube:OpenAPIEnums=true|false (BETA - 預設值=true)
kube:PodAndContainerStatsFromCRI=true|false (ALPHA - 預設值=false)
kube:PodDeletionCost=true|false (BETA - 預設值=true)
kube:PodLevelResources=true|false (ALPHA - 預設值=false)
kube:PodLifecycleSleepAction=true|false (BETA - 預設值=true)
kube:PodLifecycleSleepActionAllowZero=true|false (ALPHA - 預設值=false)
kube:PodLogsQuerySplitStreams=true|false (ALPHA - 預設值=false)
kube:PodReadyToStartContainersCondition=true|false (BETA - 預設值=true)
kube:PortForwardWebsockets=true|false (BETA - 預設值=true)
kube:ProcMountType=true|false (BETA - 預設值=false)
kube:QOSReserved=true|false (ALPHA - 預設值=false)
kube:RecoverVolumeExpansionFailure=true|false (BETA - 預設值=true)
kube:RecursiveReadOnlyMounts=true|false (BETA - 預設值=true)
kube:RelaxedDNSSearchValidation=true|false (ALPHA - 預設值=false)
kube:RelaxedEnvironmentVariableValidation=true|false (BETA - 預設值=true)
kube:ReloadKubeletServerCertificateFile=true|false (BETA - 預設值=true)
kube:RemoteRequestHeaderUID=true|false (ALPHA - 預設值=false)
kube:ResilientWatchCacheInitialization=true|false (BETA - 預設值=true)
kube:ResourceHealthStatus=true|false (ALPHA - 預設值=false)
kube:RotateKubeletServerCertificate=true|false (BETA - 預設值=true)
kube:RuntimeClassInImageCriApi=true|false (ALPHA - 預設值=false)
kube:SELinuxChangePolicy=true|false (ALPHA - 預設值=false)
kube:SELinuxMount=true|false (ALPHA - 預設值=false)
kube:SELinuxMountReadWriteOncePod=true|false (BETA - 預設值=true)
kube:SchedulerAsyncPreemption=true|false (ALPHA - 預設值=false)
kube:SchedulerQueueingHints=true|false (BETA - 預設值=true)
kube:SeparateCacheWatchRPC=true|false (BETA - 預設值=true)
kube:SeparateTaintEvictionController=true|false (BETA - 預設值=true)
kube:ServiceAccountNodeAudienceRestriction=true|false (BETA - 預設值=true)
kube:ServiceAccountTokenNodeBinding=true|false (BETA - 預設值=true)
kube:ServiceTrafficDistribution=true|false (BETA - 預設值=true)
kube:SidecarContainers=true|false (BETA - 預設值=true)
kube:StorageNamespaceIndex=true|false (BETA - 預設值=true)
kube:StorageVersionAPI=true|false (ALPHA - 預設值=false)
kube:StorageVersionHash=true|false (BETA - 預設值=true)
kube:StorageVersionMigrator=true|false (ALPHA - 預設值=false)
kube:StructuredAuthenticationConfiguration=true|false (BETA - 預設值=true)
kube:SupplementalGroupsPolicy=true|false (ALPHA - 預設值=false)
kube:SystemdWatchdog=true|false (BETA - 預設值=true)
kube:TopologyAwareHints=true|false (BETA - 預設值=true)
kube:TopologyManagerPolicyAlphaOptions=true|false (ALPHA - 預設值=false)
kube:TopologyManagerPolicyBetaOptions=true|false (BETA - 預設值=true)
kube:TranslateStreamCloseWebsocketRequests=true|false (BETA - 預設值=true)
kube:UnauthenticatedHTTP2DOSMitigation=true|false (BETA - 預設值=true)
kube:UnknownVersionInteroperabilityProxy=true|false (ALPHA - 預設值=false)
kube:UserNamespacesPodSecurityStandards=true|false (ALPHA - 預設值=false)
kube:UserNamespacesSupport=true|false (BETA - 預設值=false)
kube:VolumeAttributesClass=true|false (BETA - 預設值=false)
kube:VolumeCapacityPriority=true|false (ALPHA - 預設值=false)
kube:WatchCacheInitializationPostStartHook=true|false (BETA - 預設值=false)
kube:WatchFromStorageWithoutResourceVersion=true|false (BETA - 預設值=false)
kube:WatchList=true|false (BETA - 預設值=true)
kube:WatchListClient=true|false (BETA - 預設值=true)
kube:WinDSR=true|false (ALPHA - 預設值=false)
kube:WinOverlay=true|false (BETA - 預設值=true)
kube:WindowsCPUAndMemoryAffinity=true|false (ALPHA - 預設值=false)
kube:WindowsGracefulNodeShutdown=true|false (ALPHA - 預設值=false)
kube:WindowsHostNetwork=true|false (ALPHA - 預設值=true)

--flex-volume-plugin-dir string     預設值: "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/"

flex 磁碟區外掛程式應搜尋額外第三方磁碟區外掛程式的目錄完整路徑。

-h, --help

kube-controller-manager 的說明

--horizontal-pod-autoscaler-cpu-initialization-period duration     預設值: 5m0s

Pod 啟動後,可能略過 CPU 樣本的期間。

--horizontal-pod-autoscaler-downscale-stabilization duration     預設值: 5m0s

自動調整程式回溯檢視且不向下調整低於該期間所做任何建議的期間。

--horizontal-pod-autoscaler-initial-readiness-delay duration     預設值: 30s

Pod 啟動後,就緒變更將被視為初始就緒的期間。

--horizontal-pod-autoscaler-sync-period duration     預設值: 15s

水平 Pod 自動調整程式中 Pod 數量同步的期間。

--horizontal-pod-autoscaler-tolerance float     預設值: 0.1

水平 Pod 自動調整程式考量擴展時,期望指標與實際指標比率的最小變更 (從 1.0 開始)。

--http2-max-streams-per-connection int

伺服器給予用戶端在 HTTP/2 連線中最大串流數量的限制。零表示使用 golang 的預設值。

--kube-api-burst int32     預設值: 30

與 Kubernetes API 伺服器通訊時要使用的叢發量。

--kube-api-content-type string     預設值: "application/vnd.kubernetes.protobuf"

傳送至 API 伺服器的請求內容類型。

--kube-api-qps float     預設值: 20

與 Kubernetes API 伺服器通訊時要使用的 QPS。

--kubeconfig string

具有授權和主節點位置資訊的 kubeconfig 檔案路徑 (主節點位置可以被 master 旗標覆寫)。

--large-cluster-size-threshold int32     預設值: 50

node-lifecycle-controller 將叢集視為大規模以用於驅逐邏輯的節點數量。對於此大小或更小的叢集,--secondary-node-eviction-rate 會隱含地覆寫為 0。注意:如果節點位於多個區域中,則此閾值將被視為每個區域的區域節點大小閾值,以獨立判斷節點驅逐率。

--leader-elect     預設值: true

啟動領導者選舉用戶端,並在執行主要迴圈之前取得領導權。在高可用性下執行複寫元件時啟用此功能。

--leader-elect-lease-duration duration     預設值: 15s

非領導者候選者在觀察到領導權續約後,到嘗試取得已主導但未續約的領導者位置的領導權之前,將等待的持續時間。這實際上是領導者在被另一個候選者取代之前可以停止的最長持續時間。這僅在啟用領導者選舉時適用。

--leader-elect-renew-deadline duration     預設值: 10s

實際主節點在停止領導之前,嘗試續約領導者位置的間隔。這必須小於租用持續時間。這僅在啟用領導者選舉時適用。

--leader-elect-resource-lock string     預設值: "leases"

在領導者選舉期間用於鎖定的資源物件類型。支援的選項為 'leases'。

--leader-elect-resource-name string     預設值: "kube-controller-manager"

在領導者選舉期間用於鎖定的資源物件名稱。

--leader-elect-resource-namespace string     預設值: "kube-system"

在領導者選舉期間用於鎖定的資源物件命名空間。

--leader-elect-retry-period duration     預設值: 2s

用戶端在嘗試取得和續約領導權之間應等待的持續時間。這僅在啟用領導者選舉時適用。

--leader-migration-config string

控制器領導者移轉的組態檔路徑,或空白以使用反映控制器管理員預設組態的值。組態檔應為 LeaderMigrationConfiguration 類型,群組 controllermanager.config.k8s.io,版本 v1alpha1。

--legacy-service-account-token-clean-up-period duration     預設值: 8760h0m0s

自上次使用舊版服務帳戶權杖後,可以刪除該權杖的時間週期。

--log-flush-frequency duration     預設值: 5s

日誌刷新之間的最大秒數

--log-text-info-buffer-size quantity

[Alpha] 在具有分割輸出串流的文字格式中,資訊訊息可以緩衝一段時間以提高效能。預設值零位元組會停用緩衝。大小可以指定為位元組數 (512)、1000 的倍數 (1K)、1024 的倍數 (2Ki) 或這些的次方 (3M、4G、5Mi、6Gi)。啟用 LoggingAlphaOptions 功能閘道以使用此功能。

--log-text-split-stream

[Alpha] 在文字格式中,將錯誤訊息寫入 stderr,並將資訊訊息寫入 stdout。預設值是將單一串流寫入 stdout。啟用 LoggingAlphaOptions 功能閘道以使用此功能。

--logging-format string     預設值: "text"

設定日誌格式。允許的格式:「text」。

--master string

Kubernetes API 伺服器的位址 (覆寫 kubeconfig 中的任何值)。

--max-endpoints-per-slice int32     預設值: 100

將新增至 EndpointSlice 的端點最大數量。每個切片的端點越多,端點切片就會越少,但資源會越大。預設值為 100。

--min-resync-period duration     預設值: 12h0m0s

反映器中的重新同步週期將在 MinResyncPeriod 和 2*MinResyncPeriod 之間隨機產生。

--mirroring-concurrent-service-endpoint-syncs int32     預設值: 5

endpointslice-mirroring-controller 將同時執行的服務端點同步操作數量。數字越大 = 端點切片更新速度越快,但 CPU (和網路) 負載越高。預設值為 5。

--mirroring-endpointslice-updates-batch-period duration

endpointslice-mirroring-controller 的 EndpointSlice 更新批次處理期間長度。EndpointSlice 變更的處理將延遲此持續時間,以將其與潛在的即將到來的更新結合,並減少 EndpointSlice 更新的總數。數字越大 = 端點程式設計延遲越高,但產生的端點修訂版本號碼越低

--mirroring-max-endpoints-per-subset int32     預設值: 1000

endpointslice-mirroring-controller 將新增至 EndpointSlice 的端點最大數量。每個切片的端點越多,端點切片就會越少,但資源會越大。預設值為 100。

--namespace-sync-period duration     預設值: 5m0s

同步命名空間生命週期更新的期間

--node-cidr-mask-size int32

叢集中節點 CIDR 的遮罩大小。IPv4 的預設值為 24,IPv6 的預設值為 64。

--node-cidr-mask-size-ipv4 int32

雙堆疊叢集中 IPv4 節點 CIDR 的遮罩大小。預設值為 24。

--node-cidr-mask-size-ipv6 int32

雙堆疊叢集中 IPv6 節點 CIDR 的遮罩大小。預設值為 64。

--node-eviction-rate float     預設值: 0.1

當區域狀況良好時,節點故障時每秒刪除 Pod 的節點數量 (請參閱 --unhealthy-zone-threshold 以取得狀況良好/不良的定義)。在非多區域叢集中,區域是指整個叢集。

--node-monitor-grace-period duration     預設值: 50s

我們允許執行中節點在標記為狀況不良之前無回應的時間量。必須是 kubelet 的 nodeStatusUpdateFrequency 的 N 倍,其中 N 表示 kubelet 允許發佈節點狀態的重試次數。此值也應大於 HTTP2_PING_TIMEOUT_SECONDS 和 HTTP2_READ_IDLE_TIMEOUT_SECONDS 的總和

--node-monitor-period duration     預設值: 5s

在 cloud-node-lifecycle-controller 中同步 NodeStatus 的期間。

--node-startup-grace-period duration     預設值: 1m0s

我們允許啟動節點在標記為狀況不良之前無回應的時間量。

--permit-address-sharing

如果為 true,則在繫結埠時將使用 SO_REUSEADDR。這允許並行繫結至萬用字元 IP (如 0.0.0.0) 和特定 IP,並避免等待核心釋放 TIME_WAIT 狀態的通訊端。[預設值=false]

--permit-port-sharing

如果為 true,則在繫結埠時將使用 SO_REUSEPORT,這允許一個以上的執行個體繫結在相同的位址和埠上。[預設值=false]

--profiling     預設值: true

透過網頁介面 host:port/debug/pprof/ 啟用效能分析

--pv-recycler-increment-timeout-nfs int32     預設值: 30

每個 Gi 新增至 NFS 清理程式 Pod 的 ActiveDeadlineSeconds 的時間增量

--pv-recycler-minimum-timeout-hostpath int32     預設值: 60

用於 HostPath Recycler Pod 的最小 ActiveDeadlineSeconds。這僅適用於開發和測試,並且在多節點叢集中將無法運作。

--pv-recycler-minimum-timeout-nfs int32     預設值: 300

用於 NFS Recycler Pod 的最小 ActiveDeadlineSeconds

--pv-recycler-pod-template-filepath-hostpath string

用作 HostPath 持續性磁碟區回收範本的 Pod 定義檔案路徑。這僅適用於開發和測試,並且在多節點叢集中將無法運作。

--pv-recycler-pod-template-filepath-nfs string

用作 NFS 持續性磁碟區回收範本的 Pod 定義檔案路徑

--pv-recycler-timeout-increment-hostpath int32     預設值: 30

每個 Gi 新增至 HostPath 清理程式 Pod 的 ActiveDeadlineSeconds 的時間增量。這僅適用於開發和測試,並且在多節點叢集中將無法運作。

--pvclaimbinder-sync-period duration     預設值: 15s

同步持續性磁碟區和持續性磁碟區宣告的期間

--requestheader-allowed-names strings

允許在 --requestheader-username-headers 指定的標頭中提供使用者名稱的用戶端憑證通用名稱清單。如果為空,則允許 --requestheader-client-ca-file 中憑證授權單位驗證的任何用戶端憑證。

--requestheader-client-ca-file string

用於驗證傳入請求上的用戶端憑證的根憑證套件,然後再信任 --requestheader-username-headers 指定的標頭中的使用者名稱。警告:通常不要依賴已針對傳入請求完成的授權。

--requestheader-extra-headers-prefix strings     預設值: "x-remote-extra-"

要檢查的請求標頭前置詞清單。建議使用 X-Remote-Extra-。

--requestheader-group-headers strings     預設值: "x-remote-group"

要檢查群組的請求標頭清單。建議使用 X-Remote-Group。

--requestheader-uid-headers strings

要檢查 UID 的請求標頭清單。建議使用 X-Remote-Uid。需要啟用 RemoteRequestHeaderUID 功能。

--requestheader-username-headers strings     預設值: "x-remote-user"

要檢查使用者名稱的請求標頭清單。X-Remote-User 很常見。

--resource-quota-sync-period duration     預設值: 5m0s

同步系統中配額使用狀態的期間

--root-ca-file string

如果設定,此根憑證授權單位將包含在服務帳戶的權杖密碼中。這必須是有效的 PEM 編碼 CA 套件。

--route-reconciliation-period duration     預設值: 10s

協調雲端供應商為節點建立的路由的期間。

--secondary-node-eviction-rate float     預設值: 0.01

當區域狀況不良時,節點故障時每秒刪除 Pod 的節點數量 (請參閱 --unhealthy-zone-threshold 以取得狀況良好/不良的定義)。在非多區域叢集中,區域是指整個叢集。如果叢集大小小於 --large-cluster-size-threshold,則此值會隱含地覆寫為 0。

--secure-port int     預設值: 10257

用於透過 HTTPS 提供服務並進行身分驗證和授權的埠。如果為 0,則完全不提供 HTTPS 服務。

--service-account-private-key-file string

設定時啟用舊版基於密碼的權杖。包含 PEM 編碼私密 RSA 或 ECDSA 金鑰的檔案名稱,用於簽署服務帳戶權杖。

--service-cluster-ip-range string

叢集中服務的 CIDR 範圍。僅在 --allocate-node-cidrs=true 時使用;如果為 false,則會忽略此選項。

--show-hidden-metrics-for-version string

要顯示隱藏指標的先前版本。只有先前的次要版本才有意義,其他值將不被允許。格式為 <major>.<minor>,例如:'1.16'。此格式的目的是確保您有機會注意到下一個版本是否隱藏了額外的指標,而不是在它們在之後的版本中被永久移除時感到驚訝。

--terminated-pod-gc-threshold int32     預設值:12500

在終止 Pod 垃圾收集器開始刪除終止的 Pod 之前,可以存在的終止 Pod 數量。如果 <= 0,則終止 Pod 垃圾收集器將被停用。

--tls-cert-file string

包含 HTTPS 的預設 x509 憑證的檔案。(CA 憑證,如果有,則串連在伺服器憑證之後)。如果啟用了 HTTPS 服務,且未提供 --tls-cert-file 和 --tls-private-key-file,則會為公開位址產生自我簽署的憑證和金鑰,並儲存到 --cert-dir 指定的目錄中。

--tls-cipher-suites strings

伺服器的密碼套件逗號分隔清單。如果省略,將使用預設的 Go 密碼套件。
偏好的值:TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384, TLS_CHACHA20_POLY1305_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305, TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305, TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256。
不安全的值:TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_RC4_128_SHA, TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_3DES_EDE_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_256_GCM_SHA384, TLS_RSA_WITH_RC4_128_SHA。

--tls-min-version string

支援的最小 TLS 版本。可能的值:VersionTLS10、VersionTLS11、VersionTLS12、VersionTLS13

--tls-private-key-file string

包含與 --tls-cert-file 相符的預設 x509 私密金鑰的檔案。

--tls-sni-cert-key string

一組 x509 憑證和私密金鑰檔案路徑,可選擇性地附加網域模式列表,這些模式是完整合格的網域名稱,可能帶有前綴的萬用字元區段。網域模式也允許 IP 位址,但僅當 apiserver 可以看到用戶端請求的 IP 位址時才應使用 IP。如果未提供網域模式,則會提取憑證的名稱。非萬用字元比對優先於萬用字元比對,明確的網域模式優先於提取的名稱。對於多個金鑰/憑證對,請多次使用 --tls-sni-cert-key。範例:"example.crt,example.key" 或 "foo.crt,foo.key:*.foo.com,foo.com"。

--unhealthy-zone-threshold float     預設值:0.55

區域中需要處於非 Ready 狀態的節點比例(最少 3 個),才能將該區域視為不健康。

--use-service-account-credentials

如果為 true,則為每個控制器使用個別的服務帳戶憑證。

-v, --v int

日誌等級詳細程度的數字

--version version[=true]

--version, --version=raw 印出版本資訊並退出;--version=vX.Y.Z... 設定報告的版本

--vmodule pattern=N,...

檔案過濾記錄的 pattern=N 設定的逗號分隔清單(僅適用於文字日誌格式)

此頁面為自動產生。

如果您計劃回報此頁面的問題,請在您的問題描述中提及此頁面為自動產生。此修復可能需要在 Kubernetes 專案的其他地方進行。

上次修改時間為 2024 年 12 月 12 日下午 2:31 PST:為 v1.32 重新產生元件參考 (f88d4ccd1d)