當前位置:
首頁 >
kube-controller-manager 配置参数解读
發布時間:2025/1/21
75
豆豆
生活随笔
收集整理的這篇文章主要介紹了
kube-controller-manager 配置参数解读
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
下面是kube-controller-manager version 1.12.0的所有配置,其中高亮加粗的是我認為需要注意的Flag。
| –allocate-node-cidrs | 在cloud provider上分配和設置pod的CIDR |
| –attach-detach-reconcile-sync-period | Volume連接與分離之間的同步等待時間。這個時間必須大于1秒,從默認值增加這個值可能會導致volume和pod不匹配,默認值1m0s |
| –authentication-kubeconfig | kubeconfig文件指向‘core‘ kubernetes服務,并有足夠權限創建tokenaccessreviews.authentication.k8s.io. 。可選參數,如果為空,所有token請求都當作匿名的,集群不查找客戶CA證書。 |
| –authentication-skip-lookup | 如果是false,authentication-kubeconfig會用來從集群中查找丟失的身份驗證配置 |
| –authentication-token-webhook-cache-ttl | 從webhook token認證器緩存響應的持續時間,默認值10s |
| –authorization-always-allow-paths | 忽略授權的HTTP路徑列表,無需聯系‘core’ kubernetes服務器****就可以進行授權。默認值:[/healthz] |
| –authorization-kubeconfig | kubeconfig文件指向‘core‘ kubernetes服務,并有足夠權限創建subjectaccessreviews.authorization.k8s.io。可選參數,如果為空,所有未經授權跳過的請求都被禁止。 |
| –authorization-webhook-cache-authorized-ttl | 緩存webhook授權器已授權響應的持續時間。默認值:10s |
| –authorization-webhook-cache-unauthorized-ttl | 緩存webhook授權器未授權響應的持續時間。默認值:10s |
| –azure-container-registry-config | 包含Azure容器注冊配置信息的文件路徑 |
| –bind-address | 默認值:0.0.0.0,監聽–secure-port端口的IP地址。關聯的接口****必須由集群的其他部分和CLI/web客戶端訪問。 |
| –cert-dir | TLS certs所在的目錄。如果提供了–tls-cert-file和–tls-private-key-file****那么該參數會被忽略。默認值:"/var/run/kubernetes" |
| –cidr-allocator-type | 使用CIDR分配器的類型,默認值:“RangeAllocator” |
| –client-ca-file | 如果set了,任何提供client-ca-file中由某個權威機構簽名的客戶機證書的請求都使用與客戶機證書的公共名稱相對應的身份進行身份驗證 |
| –cloud-config | cloud provider配置文件的路徑。空表示沒有配置文件 |
| –cloud-provider | 云服務提供商,空表示沒有提供商 |
| –cluster-cidr | 集群內的pod的CIDR范圍,需要 --allocate-node-cidrs設為true |
| –cluster-name | 集群實例的前綴,默認值:“kubernetes” |
| –cluster-signing-cert-file | 包含PEM編碼的X509 CA證書的文件名,用來發出cluster-scoped證書****默認值:"/etc/kubernetes/ca/ca.pem" |
| –cluster-signing-key-file | 包含PEM編碼的RSA或者ECDSA私鑰的文件名,用來簽署cluster-scoped證書****默認值:"/etc/kubernetes/ca/ca.key" |
| –concurrent-deployment-syncs | 允許并發同步的Deployment對象的數量,更大的數量等于更快的部署響應,但是更多的CPU(和網絡)負載,默認值:5 |
| –concurrent-endpoint-syncs | 允許并發執行端點同步操作的數量,更大的數量等于更快的端點更新,但是更多的CPU(和網絡)負載,默認值:5 |
| –concurrent-gc-syncs | 允許并發同步的垃圾收集器數量,默認值:20 |
| –concurrent-namespace-syncs | 允許并發同步的namespace對象的數量,更大的數量等于更快的namespace終止,但是更多的CPU(和網絡)負載,默認值:10 |
| –concurrent-replicaset-syncs | 允許并發同步的replica sets的數量,更大的數量等于更快的replica管理,但是更多的CPU(和網絡)負載,默認值:5 |
| –concurrent-resource-quota-syncs | 允許并發同步的resource quta的數量,更大的數量等于更快的配額管理,但是更多的CPU(和網絡)負載,默認值:5 |
| –concurrent-service-syncs | 允許并發同步的service的數量,更大的數量等于更快的service管理,但是更多的CPU(和網絡)負載,默認值:1 |
| –concurrent-serviceaccount-token-syncs | 允許并發同步的service account token的數量,更大的數量等于更快的產生token,但是更多的CPU(和網絡)負載,默認值:5 |
| –concurrent-ttl-after-finished-syncs | 允許并發同步的TTL-after-finished控制器數量,,默認值:5 |
| –concurrent_rc_syncs | 允許并發同步的replication controllers的數量,更大的數量等于更快的replica管理,但是更多的CPU(和網絡)負載,默認值:5 |
| –configure-cloud-routes | 由allocate-node-cidrs分配的CIDR是否應該在cloud provider上配置。 |
| –contention-profiling | 如果啟用了profilling,則啟用鎖爭用profilling |
| –controller-start-interval | 啟用controller manager之間的間隔 |
| –controllers | 要啟用的控制器列表,‘*’表示啟用所有on-by-default控制器,‘foo’表示啟用名稱****為foo的控制器,‘-foo’表示不啟用名稱為foo的控制器。默認值:[*] |
| –deployment-controller-sync-period | 同步deployment的周期。默認值:30s |
| –disable-attach-detach-reconcile-sync | 啟用volume連接與分離的協調同步。禁用此選項可能導致volume和pod不同步 |
| –enable-dynamic-provisioning | 為支持動態供應的環境啟用動態供應,默認值:true |
| –enable-garbage-collector | 啟用通用的垃圾收集器。必須與kube-apiserver的相應標志一致。默認值:true |
| –enable-hostpath-provisioner | 在沒有cloud provider的情況下,啟用HostPath PV供應。允許在測試和開發供應該功能,HostPath供應無論如何都不受支持,因為不能在多節點集群中工作,并且不應該用于測試或開發之外。 |
| –enable-taint-manager | Beta功能,如果設為true。啟用Noexecute Taint,并且清除所有不允許運行在有Noexecute Taint的Node上的pod,默認為true。 |
| –experimental-cluster-signing-duration | 已簽署證書的期限,默認值:8760h0m0s |
| –external-cloud-volume-plugin | 當cloud provider設置為外部時使用的插件,可以為空,只有cloud provider為外部時設置。當前用于允許node和volume controller在樹cloud provider中工作 |
| –feature-gates | 一組鍵值對用于描述alpha/實驗特性的特性門 |
| –flex-volume-plugin-dir | flex volume插件搜索附加的第三方volume插件的目錄的完整路徑默認值:"/usr/libexec/kubernetes/kubelet-plugins/volume/exec/" |
| –horizontal-pod-autoscaler-cpu-initialization-period | Autoscaler擴展的pod啟動后CPU樣本可能會被跳過的時間。默認值:5m0s |
| –horizontal-pod-autoscaler-downscale-stabilization | Autoscaler向后看的時間段,這段時間內不會縮小POD的數量。默認值:5m0s |
| –horizontal-pod-autoscaler-initial-readiness-delay | Pod啟動后的一段時間,這段時間內如果readiness改變了會重新當做新的readiness,默認值:30s |
| –horizontal-pod-autoscaler-sync-period | horizontal pod autoscaler同步pods數量的周期,默認值:15s |
| –horizontal-pod-autoscaler-tolerance | horizontal pod autoscaler考慮scaling所需的實際度量比率的最小變化(從1.0),默認值:0.1 |
| –http2-max-streams-per-connection | 服務器提供給客戶端單個HTTP/2連接的最大數據流限制。0表示使用golang的默認值。 |
| –insecure-experimental-approve-all-kubelet-csrs-for-group | 該參數不做任何事情 |
| –kube-api-burst | 和kubernetes apiserver交互的突發量,默認值:30 |
| –kube-api-content-type | 發送給apiserver的請求的文本類型,默認值:“application/vnd.kubernetes.protobuf” |
| –kube-api-qps | 與kubernetes apiserver交互的QPS |
| –kubeconfig | 帶有授權和master位置信息的kubeconfig文件路徑 |
| –large-cluster-size-threshold | NodeController將集群當做大集群的nodes數量,主要目的驅逐的邏輯。對于這種大小或者更小的集群,隱式的將–secondary-node-eviction-rate重寫為0. |
| –leader-elect | **在執行主邏輯之前,啟動leader選舉,并獲得leader權。**當為了高可用運行多個組件的時候啟用該參數。默認值:true |
| –leader-elect-lease-duration duration | **Leader在被另外的候選者取代之前可以停止的最長時間。**只有當–leader-elect參數啟用時該參數才適用。默認值:15s |
| –leader-elect-renew-deadline | **代理Master在轉換leader權和停止leader權之間的間隔時間,這個參數****必須小于–leader-elect-lease-duration duration。**只有當–leader-elect參數啟用時該參數才適用。默認值:10s |
| –leader-elect-resource-lock | **在leader選舉期間鎖定的資源對象類型。支持的選項:**endpoints(默認)和configmaps |
| –leader-elect-retry-period | **客戶師徒獲得和更換leader之間等待的時間。**只有當–leader-elect參數啟用時該參數才適用。默認值:2s |
| –log-flush-frequency | 日志刷新的間隔時間,默認值5s |
| –master | Kubernetes API server的地址(覆蓋kubeconfig中的任意值) |
| –min-resync-period | 反射器的同步周期,取值MinResyncPeriod and2*MinResyncPeriod的隨機數。默認值12h0m0s |
| –namespace-sync-period | 同步namespace生命周期更新的周期,默認值:5m0s |
| –node-cidr-mask-size | 集群中node cidr的掩碼大小,默認值:24 |
| –node-eviction-rate | 一個健康的zone中Node失敗時,每秒刪除失敗Node上Pod的百分比。默認值:0.1,即默認10s刪除失敗節點的所有Pod。zone是指非多區域集群中的整個集群 |
| –node-monitor-grace-period | 標識node為unhealthy之前,允許運行node不響應的時間,必須是kubelet nodeStatusUpdateFrequency參數的N倍,其中N表示允許kubelet節點狀態的重試次數。默認值:40s |
| –node-monitor-period | NodeController同步NodeStatus的間隔時間,默認值:5s |
| –node-startup-grace-period | 在標記unhealthy之前,允許啟動節點不響應的時間。默認值:1m0s |
| –pod-eviction-timeout | 在失敗節點刪除pod的寬限期,默認值:5m0s |
| –profiling | 通過web接口host:port/debug/pprof/ 啟用profilling |
| –pv-recycler-increment-timeout-nfs | 對于NFS洗滌pod,每個Gi向ActiveDeadlineSeconds增加的時間,默認值:30s |
| –pv-recycler-minimum-timeout-hostpath | 用于HostPath回收Pod的最小的activedeadlinesecond。該參數僅用于開發測試,在多節點的集群不能使用。默認值60. |
| –pv-recycler-minimum-timeout-nfs | 用于NFS回收Pod的最小的activedeadlinesecond,默認值:300 |
| –pv-recycler-pod-template-filepath-hostpath | 用于Hostpath pv回收模板的pod定義的文件路徑。該參數僅用于開發測試,在多節點的集群不能使用。 |
| –pv-recycler-pod-template-filepath-nfs | 用于NFS pv回收模板的pod定義的文件路徑。該參數僅用于開發測試,在多節點的集群不能使用。 |
| –pv-recycler-timeout-increment-hostpath | 對于HostPath洗滌pod,每個Gi向ActiveDeadlineSeconds增加的時間,該參數僅用于開發測試,在多節點的集群不能使用。默認值:30s |
| –pvclaimbinder-sync-period duration | 同步pv和pv 請求的周期,默認值:15s |
| –requestheader-allowed-names | 客戶端證書常用名稱列表,允許–requestheader-username-headers中指定的標頭提供用戶名。如為空,則允許–requestheader-client-ca-file文件中當局驗證的任何客戶端證書。 |
| –requestheader-client-ca-file | 用于在信任由—requestheader-username-headers指定的標頭中的用戶名前,驗證傳入請求的客戶端證書的根證書綁定包 |
| –requestheader-extra-headers-prefix | 要檢查的請求標頭前綴列表。建議設定為X-Remote-Extra. |
| –requestheader-group-headers | 要檢查組的請求標頭列表。建議設定為X-Remote-Group |
| –requestheader-username-headers | 要檢查用戶名的請求標頭列表。常用X-Remote-User |
| –resource-quota-sync-period | 同步系統配額使用狀態的周期,默認值:5m0s |
| –root-ca-file | 如果設置,該根證書權限將包含service acount的toker secret。這必須是一個有效的PEM編碼CA 包。 |
| –route-reconciliation-period | cloud provider為節點創建協調路由的周期,默認值:10s |
| –secondary-node-eviction-rate | 區域不健康時,當節點失敗,每秒刪除失敗Node上pod的百分比。如果集群規模小于–large-cluster-size-threshold,則該值將隱式重寫為0。默認值:0.01,即默認100s刪除失敗節點的所有Pod。 |
| –secure-port | 使用身份驗證和授權為HTTPS提供服務的端口。如果是0,表示****不提供HTTPS服務。默認值:10257 |
| –service-account-private-key-file | 包含用于簽署service account token的PEM編碼RSA或者ECDSA私鑰的文件名 |
| –service-cluster-ip-rang | 集群Services 的CIDR范圍。需要–allocate-node-cidrs設為true |
| –terminated-pod-gc-threshold | 在pod垃圾收集器開始刪除終止pod之前,可以存在的終止pod數量。默認值:12500 |
| –tls-cert-file | 包含用于HTTPS的默認x509證書的文件。如果HTTPS服務啟用,并且–tls-cert-file和–tls-private-key-file沒有提供,將為公共地址生成自簽名證書和密鑰,并保存到–cert-dir制定的目錄。 |
| –tls-cipher-suites | 用逗號分隔服務器密碼套件列表。如果省略,將使用默認的Go密碼套件 |
| –tls-min-version | 支持的最小的TLS版本。可能的值:VersionTLS10, VersionTLS11,VersionTLS12 |
| –tls-private-key-file | 包含匹配–tls-cert-file的默認x509私鑰的文件 |
| –unhealthy-zone-threshold | 區域被視為不健康時,Not Ready 節點的比例 |
| –use-service-account-credentials | 如果true,為每個控制器使用單獨的service account證書 |
| –tls-sni-cert-key namedCertKey | A pair of x509 certificate and private key file paths, optionallysuffixed with a list of domain patterns which are fully qualifieddomain names, possibly with prefixed wildcard segments. If nodomain patterns are provided, the names of the certificate areextracted. Non-wildcard matches trump over wildcard matches,explicit domain patterns trump over extracted names. For multiplekey/certificate pairs, use the --tls-sni-cert-key multiple times.Examples: “example.crt,example.key” or"foo.crt,foo.key:*.foo.com,foo.com". Default:[] |
參考鏈接:
kube-controller-manager介紹
kube-controller-manager 配置參數解讀(kubernets version 1.12.0)
總結
以上是生活随笔為你收集整理的kube-controller-manager 配置参数解读的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: k8s证书配置:为 kubelet 配置
- 下一篇: k8s安装工具:sealos设计原理及离