kube-controller-manager

Synopsis

Kubernetes 控制器管理器是一個守護程序,它嵌入了 Kubernetes 附帶的核心控制迴圈。在機器人和自動化應用中,控制迴圈是一個不斷迴圈的迴圈,用於調節系統的狀態。在 Kubernetes 中,控制器是一個控制迴圈,它透過 apiserver 監視叢集的共享狀態,並進行更改以嘗試將當前狀態向期望狀態移動。今天 Kubernetes 附帶的控制器示例包括副本控制器、端點控制器、名稱空間控制器和服務賬戶控制器。

kube-controller-manager [flags]

Options

--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

指向“核心”Kubernetes 伺服器的 kubeconfig 檔案,該檔案具有建立 tokenreviews.authentication.k8s.io 的足夠許可權。此選項是可選的。如果為空,則所有 token 請求都被視為匿名請求,並且不會在叢集中查詢客戶端 CA。

--authentication-skip-lookup

如果為 false,則將使用 authentication-kubeconfig 從叢集查詢缺失的身份驗證配置。

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

從 webhook 令牌身份驗證器快取響應的持續時間。

--authentication-tolerate-lookup-failure

如果為 true,則從叢集查詢缺失的身份驗證配置的失敗將不會被視為致命錯誤。請注意,這可能導致身份驗證將所有請求視為匿名。

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

在授權期間要跳過的 HTTP 路徑列表,即這些路徑無需聯絡“核心”Kubernetes 伺服器即可獲得授權。

--authorization-kubeconfig string

指向“核心”Kubernetes 伺服器的 kubeconfig 檔案,該檔案具有建立 subjectaccessreviews.authorization.k8s.io 的足夠許可權。此選項是可選的。如果為空,則所有未被授權跳過的請求都將被拒絕。

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

快取 webhook 授權器“已授權”響應的持續時間。

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

快取 webhook 授權器“未授權”響應的持續時間。

--bind-address string     預設: 0.0.0.0

用於監聽 --secure-port 埠的 IP 地址。相關的介面必須能夠被叢集的其他部分以及 CLI/Web 客戶端訪問。如果為空或未指定地址(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

包含用於為 kubernetes.io/kube-apiserver-client 簽名器頒發證書的 PEM 編碼 X509 CA 證書的檔名。如果指定,則不能設定 --cluster-signing-{cert,key}-file。

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

包含用於簽名 kubernetes.io/kube-apiserver-client 簽名器證書的 PEM 編碼 RSA 或 ECDSA 私鑰的檔名。如果指定,則不能設定 --cluster-signing-{cert,key}-file。

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

包含用於為 kubernetes.io/kube-apiserver-client-kubelet 簽名器頒發證書的 PEM 編碼 X509 CA 證書的檔名。如果指定,則不能設定 --cluster-signing-{cert,key}-file。

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

包含用於簽名 kubernetes.io/kube-apiserver-client-kubelet 簽名器證書的 PEM 編碼 RSA 或 ECDSA 私鑰的檔名。如果指定,則不能設定 --cluster-signing-{cert,key}-file。

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

包含用於為 kubernetes.io/kubelet-serving 簽名器頒發證書的 PEM 編碼 X509 CA 證書的檔名。如果指定,則不能設定 --cluster-signing-{cert,key}-file。

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

包含用於簽名 kubernetes.io/kubelet-serving 簽名器證書的 PEM 編碼 RSA 或 ECDSA 私鑰的檔名。如果指定,則不能設定 --cluster-signing-{cert,key}-file。

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

包含用於為 kubernetes.io/legacy-unknown 簽名器頒發證書的 PEM 編碼 X509 CA 證書的檔名。如果指定,則不能設定 --cluster-signing-{cert,key}-file。

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

包含用於簽名 kubernetes.io/legacy-unknown 簽名器證書的 PEM 編碼 RSA 或 ECDSA 私鑰的檔名。如果指定,則不能設定 --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

將併發執行的端點同步運算元量。數量越大 = 端點更新越快,但 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

允許併發同步的名稱空間物件數量。數量越大 = 名稱空間終止響應越快,但 CPU(和網路)負載也越大

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

允許併發同步的副本控制器數量。數量越大 = 副本管理響應越快,但 CPU(和網路)負載也越大

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

允許併發同步的 ReplicaSet 數量。數量越大 = 副本管理響應越快,但 CPU(和網路)負載也越大

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

允許併發同步的資源配額數量。數量越大 = 配額管理響應越快,但 CPU(和網路)負載也越大

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

將併發執行的服務端點同步運算元量。數量越大 = 端點切片更新越快,但 CPU(和網路)負載也越大。預設為 5。

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

允許併發同步的服務數量。數量越大 = 服務管理響應越快,但 CPU(和網路)負載也越大

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

允許併發同步的服務賬戶 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, device-taint-eviction-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.31..1.33(預設:1.33)
如果未指定元件,則預設為“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

端點更新批處理期的長度。Pod 更改的處理將延遲此持續時間,以便與即將發生的潛在更新合併並減少端點更新的總數。數量越大 = 端點程式設計延遲越高,但生成的端點修訂版本數量越少

--endpointslice-updates-batch-period duration

端點切片更新批處理期的長度。Pod 更改的處理將延遲此持續時間,以便與即將發生的潛在更新合併並減少端點更新的總數。數量越大 = 端點程式設計延遲越高,但生成的端點修訂版本數量越少

--external-cloud-volume-plugin string

當 cloud provider 設定為 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:AllowParsingUserUIDFromCertAuth=true|false (BETA - 預設=true)
kube:AllowUnsafeMalformedObjectDeletion=true|false (ALPHA - 預設=false)
kube:AnonymousAuthConfigurableEndpoints=true|false (BETA - 預設=true)
kube:AuthorizeNodeWithSelectors=true|false (BETA - 預設=true)
kube:AuthorizeWithSelectors=true|false (BETA - 預設=true)
kube:CBORServingAndStorage=true|false (ALPHA - 預設=false)
kube:CPUManagerPolicyAlphaOptions=true|false (ALPHA - 預設=false)
kube:CPUManagerPolicyBetaOptions=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 (BETA - 預設=false)
kube:ClusterTrustBundleProjection=true|false (BETA - 預設=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:ContainerStopSignals=true|false (ALPHA - 預設=false)
kube:ContextualLogging=true|false (BETA - 預設=true)
kube:CoordinatedLeaderElection=true|false (BETA - 預設=false)
kube:CrossNamespaceVolumeDataSource=true|false (ALPHA - 預設=false)
kube:CustomCPUCFSQuotaPeriod=true|false (ALPHA - 預設=false)
kube:DRAAdminAccess=true|false (ALPHA - 預設=false)
kube:DRADeviceTaints=true|false (ALPHA - 預設=false)
kube:DRAPartitionableDevices=true|false (ALPHA - 預設=false)
kube:DRAPrioritizedList=true|false (ALPHA - 預設=false)
kube:DRAResourceClaimDeviceStatus=true|false (BETA - 預設=true)
kube:DeclarativeValidation=true|false (BETA - 預設=true)
kube:DeclarativeValidationTakeover=true|false (BETA - 預設=false)
kube:DeploymentReplicaSetTerminatingReplicas=true|false (ALPHA - 預設=false)
kube:DisableAllocatorDualWrite=true|false (BETA - 預設=false)
kube:DisableCPUQuotaWithExclusiveCPUs=true|false (BETA - 預設=true)
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:HPAConfigurableTolerance=true|false (ALPHA - 預設=false)
kube:HPAScaleToZero=true|false (ALPHA - 預設=false)
kube:ImageMaximumGCAge=true|false (BETA - 預設=true)
kube:ImageVolume=true|false (BETA - 預設=false)
kube:InOrderInformers=true|false (BETA - 預設=true)
kube:InPlacePodVerticalScaling=true|false (BETA - 預設=true)
kube:InPlacePodVerticalScalingExclusiveCPUs=true|false (ALPHA - 預設=false)
kube:InTreePluginPortworxUnregister=true|false (ALPHA - 預設=false)
kube:InformerResourceVersion=true|false (ALPHA - 預設=false)
kube:JobManagedBy=true|false (BETA - 預設=true)
kube:JobPodReplacementPolicy=true|false (BETA - 預設=true)
kube:KubeletCgroupDriverFromCRI=true|false (BETA - 預設=true)
kube:KubeletCrashLoopBackOffMax=true|false (ALPHA - 預設=false)
kube:KubeletEnsureSecretPulledImages=true|false (ALPHA - 預設=false)
kube:KubeletFineGrainedAuthz=true|false (BETA - 預設=true)
kube:KubeletInUserNamespace=true|false (ALPHA - 預設=false)
kube:KubeletPSI=true|false (ALPHA - 預設=false)
kube:KubeletPodResourcesDynamicResources=true|false (ALPHA - 預設=false)
kube:KubeletPodResourcesGet=true|false (ALPHA - 預設=false)
kube:KubeletSeparateDiskGC=true|false (BETA - 預設=true)
kube:KubeletServiceAccountTokenForCredentialProviders=true|false (ALPHA - 預設=false)
kube:KubeletTracing=true|false (BETA - 預設=true)
kube:ListFromCacheSnapshot=true|false (ALPHA - 預設=false)
kube:LocalStorageCapacityIsolationFSQuotaMonitoring=true|false (BETA - 預設=false)
kube:LoggingAlphaOptions=true|false (ALPHA - 預設=false)
kube:LoggingBetaOptions=true|false (BETA - 預設=true)
kube:MatchLabelKeysInPodTopologySpread=true|false (BETA - 預設=true)
kube:MaxUnavailableStatefulSet=true|false (ALPHA - 預設=false)
kube:MemoryQoS=true|false (ALPHA - 預設=false)
kube:MutableCSINodeAllocatableCount=true|false (ALPHA - 預設=false)
kube:MutatingAdmissionPolicy=true|false (ALPHA - 預設=false)
kube:NodeLogQuery=true|false (BETA - 預設=false)
kube:NodeSwap=true|false (BETA - 預設=true)
kube:OpenAPIEnums=true|false (BETA - 預設=true)
kube:OrderedNamespaceDeletion=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 (BETA - 預設=true)
kube:PodLogsQuerySplitStreams=true|false (ALPHA - 預設=false)
kube:PodObservedGenerationTracking=true|false (ALPHA - 預設=false)
kube:PodReadyToStartContainersCondition=true|false (BETA - 預設=true)
kube:PodTopologyLabelsAdmission=true|false (ALPHA - 預設=false)
kube:PortForwardWebsockets=true|false (BETA - 預設=true)
kube:PreferSameTrafficDistribution=true|false (ALPHA - 預設=false)
kube:ProcMountType=true|false (BETA - 預設=true)
kube:QOSReserved=true|false (ALPHA - 預設=false)
kube:RecoverVolumeExpansionFailure=true|false (BETA - 預設=true)
kube:ReduceDefaultCrashLoopBackOffDecay=true|false (ALPHA - 預設=false)
kube:RelaxedDNSSearchValidation=true|false (BETA - 預設=true)
kube:RelaxedEnvironmentVariableValidation=true|false (BETA - 預設=true)
kube:ReloadKubeletServerCertificateFile=true|false (BETA - 預設=true)
kube:RemoteRequestHeaderUID=true|false (BETA - 預設=true)
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 (BETA - 預設=true)
kube:SELinuxMount=true|false (BETA - 預設=false)
kube:SELinuxMountReadWriteOncePod=true|false (BETA - 預設=true)
kube:SchedulerAsyncPreemption=true|false (BETA - 預設=true)
kube:SchedulerPopFromBackoffQ=true|false (BETA - 預設=true)
kube:SchedulerQueueingHints=true|false (BETA - 預設=true)
kube:SeparateTaintEvictionController=true|false (BETA - 預設=true)
kube:ServiceAccountNodeAudienceRestriction=true|false (BETA - 預設=true)
kube:StorageCapacityScoring=true|false (ALPHA - 預設=false)
kube:StorageVersionAPI=true|false (ALPHA - 預設=false)
kube:StorageVersionHash=true|false (BETA - 預設=true)
kube:StorageVersionMigrator=true|false (ALPHA - 預設=false)
kube:StreamingCollectionEncodingToJSON=true|false (BETA - 預設=true)
kube:StreamingCollectionEncodingToProtobuf=true|false (BETA - 預設=true)
kube:StrictIPCIDRValidation=true|false (ALPHA - 預設=false)
kube:StructuredAuthenticationConfiguration=true|false (BETA - 預設=true)
kube:SupplementalGroupsPolicy=true|false (BETA - 預設=true)
kube:SystemdWatchdog=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 - 預設=true)
kube:VolumeAttributesClass=true|false (BETA - 預設=false)
kube:WatchCacheInitializationPostStartHook=true|false (BETA - 預設=false)
kube:WatchList=true|false (BETA - 預設=false)
kube:WatchListClient=true|false (BETA - 預設=false)
kube:WinDSR=true|false (BETA - 預設=true)
kube:WinOverlay=true|false (BETA - 預設=true)
kube:WindowsCPUAndMemoryAffinity=true|false (ALPHA - 預設=false)
kube:WindowsGracefulNodeShutdown=true|false (ALPHA - 預設=false)

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

flex volume 外掛應搜尋附加第三方卷外掛的目錄的完整路徑。

-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

同步 Horizontal Pod Autoscaler 中 Pod 數量的週期。

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

期望值與實際值之比的最小變化(從 1.0 開始),以便 Horizontal Pod Autoscaler 考慮縮放。

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

伺服器為每個 HTTP/2 連線允許客戶端的最大流數。零表示使用 Go 的預設值。

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

與 Kubernetes API 伺服器通訊時使用的突發流量。

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

傳送到 apiserver 請求的內容型別。

--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

舊版服務賬戶 Token 在可被刪除之前最後一次使用後的時間段。

--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

透過 Web 介面 host:port/debug/pprof/ 啟用分析

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

NFS 清理器 Pod 的 ActiveDeadlineSeconds 增加的每 Gi 的時間

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

用於 HostPath 回收器 Pod 的最小 ActiveDeadlineSeconds。這僅用於開發和測試,在多節點叢集中無效。

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

用於 NFS 回收器 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

為 HostPath 清理器 Pod 的 ActiveDeadlineSeconds 增加的每 Gi 的時間。這僅用於開發和測試,在多節點叢集中無效。

--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

如果設定,此根證書頒發機構將包含在服務賬戶的 token 金鑰中。這必須是一個有效的 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

如果設定,則啟用舊版基於金鑰的 Token。包含用於簽名服務賬戶 Token 的 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

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

--use-service-account-credentials

如果為 true,則為每個控制器使用單獨的服務賬戶憑據。

-v, --v int

用於日誌級別詳細程度的數字

--version version[=true]

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

--vmodule pattern=N,...

用於檔案過濾日誌的模式=N 設定的逗號分隔列表(僅適用於文字日誌格式)

本頁面是自動生成的。

如果你打算報告此頁面存在的問題,請在問題描述中提及此頁面是自動生成的。修復可能需要在 Kubernetes 專案的其他地方進行。

最後修改時間:2025 年 4 月 24 日上午 7:58 PST:v1.33 的元件參考 (05a3c54633)