溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Kubelet配置參數有哪些

發布時間:2021-12-07 14:14:47 來源:億速云 閱讀:406 作者:小新 欄目:云計算

這篇文章主要介紹了Kubelet配置參數有哪些,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

下面是Kubelet version 1.12.0的所有配置。

FlagComments
--address

default 0.0.0.0,Kublet 監聽地址,

0.0.0.0表示監聽所有網絡接口

--allow-privileged是否允許容器使用特權模式
--alsologtostderr所有log輸出到標準錯誤輸出
--anonymous-authKubelet server是否允許匿名的請求(default true)
--application-metrics-count-limit每個容器允許記錄的最大事件數量(default 100
--authentication-token-webhook是否允許使用TokerReview API 給持有的tokens做鑒權
--authentication-token-webhook-cache-ttl緩存webhook token認證器回復的時間(默認值2m0s)
--authorization-mode    

Kubelet的認證模式,取值(AlwaysAllow(默認值),Webhook)

Webhook模式使用SubjectAccessReview API做鑒權

--authorization-webhook-cache-authorized-ttl緩存Webhook授權人的已授權回復的時間(默認值5m0s)
--authorization-webhook-cache-unauthorized-ttl緩存Webhook授權人的未授權回復的時間(默認值30s)
--azure-container-registry-config文件容器路徑Azure 容器注冊配置信息
--boot-id-file    

以逗號分隔的檢查boot-id的文件列表。使用第一個存在的

(默認值: /proc/sys/kernel/random/boot_id)

--bootstrap-checkpoint-path存儲checkpoint的目錄
--bootstrap-kubeconfig

用來獲取kubelet客戶證書的Kubeconfig file的路徑, 如果kubelet

沒有定義--kubeconfig參數,bootstrap kubeconfig會用于從

API server獲取客戶證書。成功經驗:引用已生成的客戶證書和密鑰

的kubeconfig寫入--kubeconfig指定的路徑。

客戶證書和密鑰將會儲存在--cert-dir指定的目錄中

--cadvisor-port本地cAdvisor的端口,設置為0表示不可用,默認為4194
--cert-dir

TLS證書所在的目錄。如果--tls-cert-file和--tls-private-key-file

提供了,那么這個參數會被忽略。默認值: "/var/lib/kubelet/pki"

--cgroup-driverKubelet用來操作主機cgroups的驅動
--cgroup-root

Pods 可選的root cgroup, 這是由container runtime

在最佳工作的基礎上處理的。

默認值: ",意思是使用container runtime的默認處理

--cgroups-per-qos支持創建QoS cgroup的層級結構。如果是true,最高層級的
--chaos-chance如果值大于0.0,那么就引入隨機的客戶端錯誤和延遲,用于測試。
--client-ca-file

如果set了,任何提供client-ca-file中由某個權威機構簽名的

客戶機證書的請求都使用與客戶機證書的公共名稱相對應的

身份進行身份驗證

--cloud-configcloud provider配置文件的路徑
--cloud-provider云服務的提供商。指定空值以在沒有云提供商的情況下運行
--cloud-provider-gce-lb-src-cidrs

GCE防火墻給LB流量代理開放的CIDRS。默認值:

130.211.0.0/22,35.191.0.0/16,209.85.152.0/22,209.85.204.0/22

--cluster-dns以逗號分隔的DNS 服務IP地址。
--cluster-domain集群的域名
--cni-bin-dir查找CNI插件二進制文件的完整目錄。默認值:/opt/cni/bin
--cni-conf-dir查找CNI插件配置文件的完整目錄。默認值:/etc/cni/net.d
--container-hints容器提示文件的目錄。默認值:/etc/cadvisor/container_hints.json
--container-runtime

使用的container runtime容器運行時??捎弥怠癲ocker”,“rkt”。

默認值為“docker”。

--container-runtime-endpoint

試驗性參數。遠程運行時的服務端口, 目前Linux支持unix socket,

Windows支持tcp。

--containerdcontained端口,默認值:unix:///var/run/containerd.sock
--containerized試驗性參數。支持在容器中運行kubelet
--contention-profiling如果啟用了profiling,支持鎖住爭奪profiling
--cpu-cfs-quota

為指定CPU配額限制的容器啟動CPU CFS配額強制執行,

默認值:true

--cpu-manager-policyCPU的管理器策略??蛇x值:“none”,“static”。默認值:“none”
--cpu-manager-reconcile-periodCPU管理器調節周期。Nodes 狀態更新頻率。默認10s。
--dockerdocker端口,默認值:unix:///var/run/docker.sock
--docker-disable-shared-pid

RI在同一個POD的中的容器在1.13.1 的docker版本默認使用

同一個PID namespace.設置該標志將恢復到獨立

PID namespace之前的行為,將會在之后移除

--docker-endpoint

將此端口用于docker端口通信,

默認值:unix:///var/run/docker.sock

--docker-env-metadata-whitelistdocker容器需要收集的一份以逗號間隔的環境變量列表
--docker-only除了根目錄,只報告docker容器
--docker-root棄用:docker root從docker info(默認:"/var/lib/docker")讀取的
--docker-tls使用TLS連接docker
--docker-tls-ca可信CA的路徑,默認值:ca.pem
--docker-tls-cert客戶端證書的路徑,默認值:cert.pe
--docker-tls-key私有密鑰的路徑
--dynamic-config-dir

Kubelet將會使用這個目錄來校驗下載的配置以及追蹤配置的健康。

Kubelet會建空目錄當該目錄不存在時。該路徑可能是絕對的

或者相對的,相對路徑從Kubelet正在工作的目錄開始。

提供該標志可啟用Kubelet動態配置,目前,

必須啟用DynamicKubeletConfig來傳遞此標志。

--enable-controller-attach-detach

允許附加/分離的controller管理調度附加/分離的volumes到該node,

并禁止kubelet執行任何的附加/分離操作,默認值:true

--enable-debugging-handlers啟用用于日志收集和本地運行容器和命令的服務端端點,默認值:true
--enable-load-reader是否啟用cpu負載閱讀
--enable-server啟用kubelet服務器,默認值:true
--enforce-node-allocatable

由kubelet執行的節點可分配強制執行級別的逗號分隔列表。

可選值:“pods”,“system-reserved,”“kube-reserved”.

如果指定后兩個選項,那么'--system-reserved-cgroup' &

'--kube-reserved-cgroup' 也需要分別設置,默認值“pods”。

--event-burst

突發事件記錄的最大值,臨時允許事件記錄爆發到該數字,但不超過

event-qps。只有當--event-qps > 0 時才有用,默認值:10

--event-qps

如果大于0,將每秒創建的事件限制為該值。如果是0,則不限制。

默認值:5

--event-storage-age-limit

存儲事件的最大時間長度(每種類型),值是一個使用逗號

分隔的鍵值列表。key值是事件類型(creation, oom)或者dafault,

值是一個整數。默認應用于所有沒有指定的事件類型。

默認值:“default=0”

--event-storage-event-limit

存儲事件的最大數量(每種類型),值是一個使用逗號分隔的鍵值列表。

key值是事件類型(creation, oom)或者dafault,值是一個整數。默認應用于

所有沒有指定的事件類型。默認值:“default=0”

--eviction-hard    

觸發pod驅逐的一組驅逐閥值(e.g.  memory.available<1Gi)。默認值:imagefs.available<15%,memory.available<100Mi,

nodefs.available<10%,nodefs.inodesFree<5%

--eviction-max-pod-grace-period終止pod的最大寬限時間(秒),以響應最大的軟驅逐閥值
--eviction-minimum-reclaim一組最小的回收策略(i.e. imagefs.available=2Gi),用來描述當資源處于壓力時候,執行pod驅逐將要回收的最小資源數量
--eviction-pressure-transition-periodkubelet過渡到驅逐壓力狀態需要等待的時間
--eviction-soft

一組驅逐閥值(e.g. memory.available<1.5Gi),如果在相應的--eviction-soft-grace-period內都超過該閥值,

就會觸發pod驅逐

--eviction-soft-grace-period組驅逐的寬限期(e.g. memory.available=1m30s) ,需要持續觸及軟驅逐閥值多久才觸發pod驅逐
--exit-on-lock-contentionKubelet是否應該在鎖文件爭用的時候退出
--experimental-allocatable-ignore-evictionset to true時,當在計算Node可分配的資源時,硬驅逐閥值會被忽略,默認值為false
--experimental-allowed-unsafe-sysctls以逗號分隔的不安全的sysctl或不安全的sysctl模式的一組白名單(以*結尾)。使用該參數需要自行承擔風險。
--experimental-bootstrap-kubeconfig啟用,改為使用--bootstrap-kubeconfig
--experimental-check-node-capabilities-before-mount試驗性的,如果設置為true,在執行掛載之前,kubelet將會檢查底層節點的組件(二進制文件等)
--experimental-kernel-memcg-notification如果啟用,kubelet將會與內核memcg通知集成,以確定是否超過了內存閥值,而不是輪詢
--experimental-mounter-path試驗性的,貼片二進制文件的路徑,保持空以便使用默認的掛載
--experimental-qos-reserved

一組資源名=百分比(e.g. memory=50%),描述了在Qos的級別上pod資源請求是如何保留的。

目前只支持memory。默認值是none

--fail-swap-on如果swap在節點上啟用了,則使kubelet無法啟動
--feature-gates一組鍵值對用于描述alpha/實驗特性的特性門
--file-check-frequency檢查新數據的配置文件的持續時間,默認值20s
--global-housekeeping-interval全局性housekeeping的時間間隔,默認值1m0s
--google-json-keyGoogle云平臺用于身份驗證的Service Account Json key值
--hairpin-modeKubelet該怎么設置hairpin NAT.這個參數允許Service的端點在試圖訪問自己的Service重新負載均衡
--healthz-bind-addressDeafult 127.0.0.1。用于healthz服務的IP地址
--healthz-port本地主機healthz端點的端口,設為0表示不可用,默認值:10248
--host-ipc-sourcesKubelet允許pod使用主機IPC namespace的一組以逗號分隔的源列表
--host-network-sourcesKubelet允許pod使用主機NETWORK namespace的一組以逗號分隔的源列表
--host-pid-sourcesKubelet允許pod使用主機PID namespace的一組以逗號分隔的源列表
--hostname-override如果該參數不是空的,會使用這個參數作為身份識別替代實際的hostname
--housekeeping-interval容器housekeeping的間隔時間,默認值10s
--http-check-frequency檢查新數據的http之間的持續時間,默認值20s
--image-gc-high-threshold當磁盤使用率達到該值時,觸發鏡像的GC操作,默認值:85
--image-gc-low-threshold當磁盤使用率降到該值時,GC操作結束,默認值:80
--image-pull-progress-deadline如果在這個deadline前拉取鏡像沒有結束,那么拉取鏡像會被取消。默認值:1m0s
--image-service-endpoint

試驗性。遠程鏡像服務的端口。如果沒有指定,那么這個參數默認和container-runtime-endpoint一樣。

目前linux支持unix socket,windows支持tcp。

--init-config-dir

Kubelet會從這個目錄中查找初始配置。這個路徑可能是絕對的或者相對的,

相對路徑從Kubelet的當前工作目錄開始。缺省該參數以使用內置的默認配置值。

目前,還需要啟用Kubeletconfig的feature gate來傳遞這個標志。

--iptables-drop-bitfwmark空間的一部分,用來標記要丟棄的數據包。取值范圍0~31,默認值:15
--iptables-masquerade-bit

fwmark空間的一部分,用來將數據包標記為SNAT。取值范圍0~31,

請將此參數與kube-proxy相應的參數進行匹配。默認值:14

--kube-api-burst與kubernetes apiserver交互時的burst,默認是10
--kube-api-content-type發送到apiserver的請求的內容類型。默認:application/vnd.kubernetes.protobuf
--kube-api-qps與kubernetes apiserver交互時的QPS使用,默認值5
--kube-reserved

用來描述給kubernetes系統組件預留資源的一組ResourceName=ResourceQuantity

(e.g. cpu=200m,memory=500Mi,ephemeral-storage=1Gi) 。目前,支持cpu,內存,

和root file系統的臨時性存儲

--kube-reserved-cgroup    頂級cgroup的絕對名稱,用于管理通過'--kube-reserved'標志保留計算資源kubernetes組件
--kubeconfigkubeconfig file的路徑,指定連接API server的方式。默認值:"/var/lib/kubelet/kubeconfig"
--kubelet-cgroups可選的cgroups的絕對名稱,用來創建和運行Kubelet。
--lock-file    kubelet作為鎖文件使用的文件路徑
--log-backtrace-at當日志文件記錄到行文件N時,發出堆棧跟蹤,默認值0
--log-cadvisor-usage是否記錄cAdvisor容器的使用情況
--log-dir如果為非空,將日志文件寫入該目錄
--log-flush-frequency日志刷新間隔最大的秒數。默認值:5s
--logtostderr日志寫到標注錯誤輸出,而不是文件,默認值為true
--machine-id-file

以逗號分隔的文件列表,用來檢查機器id。使用第一個存在的。

默認值:"/etc/machine-id,/var/lib/dbus/machine-id"

--make-iptables-util-chains如果是true,kubelet將確保在主機上提供iptables實用規則
--manifest-url訪問容器清單的URL
--manifest-url-header

在訪問URL清單的時候使用的以逗號分隔的HTTP頭部列表。

將按照提供的順序添加具有相同名稱的多個頭部,可以重復調用該標志。

I.E. --manifest-url-header 'a:hello,b:again,c:world'

     --manifest-url-header 'b:beautiful'

--max-open-filesKubelet進程可以打開的文件數量,默認值:1000000
--max-podsKubelet可以運行的最大pod數量,默認值:110
--minimum-image-ttl-duration未被使用的鏡像在垃圾收集之前的最低使用年限
--network-pluginKubelet/pod生命周期中的各種各樣的時間調用的網絡插件的名稱
--network-plugin-mtu通過網絡插件的MTU(最大傳輸單元),用來覆蓋默認值。設為0表示使用默認1460MTU
--node-ipNode的IP地址,如果設置,Kubelet將為node使用這個IP地址
--node-labels當注冊這個node到集群時添加這些Labels
--node-status-update-frequency

指定Kubelet發布節點狀態給master的頻率。注意:改變該常量時要小心,

必須和nodecontroller的nodeMonitorGracePeriod相結合。默認值:10s。

--oom-score-adjKubelet進程的oom-score-adj值,取值范圍-1000 ~ 1000。默認值:-999
--pod-cidr用于POD IP地址的CIDR,僅在獨立模式下使用。
--pod-infra-container-image每個pod的network/ipc namespace容器使用的鏡像,默認:"k8s.gcr.io/pause:3.1"
--pod-manifest-path(靜態pod目錄)包含需要運行的pod元文件目錄,或者單個pod的元文件。以 “.”開頭的文件會被忽略。
--pods-per-core    

Kubelet上每個核心可以運行的pods,Kubelet上Pods的總數不能超過max-pods,

所以當這個參數計算的結果大于max-pods時,Kubelet會使用max-pods的參數,

該參數設置為0時表示不使用。

--portKubelet的端口,默認值10250
--protect-kernel-defaults

內核調優的默認Kubelet行為。如果設置,任何內核的可調參數和kubelet的默認值

不同,則kubelet會出現錯誤。

--provider-id用于標示節點在機器數據庫中唯一標示符
--read-only-port

Kubelet監聽的只讀端口,無需授權/身份驗證即可使用,默認值10255,設置為0表示不可用。

--really-crash-for-testing如果設為true,當出現panics時候引起奔潰,用于測試。
--register-node    

向APIserver注冊節點。如果--kubeconfig沒有提供,這個標志就無關緊要了,

因為Kubelet沒有一個注冊服務器。默認值為true。

--register-with-taints使用指定的污染列表(逗號分隔‘=:’)。如果注冊節點是false,則無操作。
--registry-burst

突發性pulls的最大值,臨時允許pulls爆發到該值,但仍然不超過registry-qps。

只有--registry-qps > 0時候這個標志才有用。默認值10.

--registry-qps當大于0時,限制注冊表pull QPS到這個值。
--resolv-conf解析配置文件用作容器DNS解析配置的基礎,默認值:"/etc/resolv.conf"
--root-dir    管理kubelet文件的目錄路徑。(volume mounts等等)。默認值: "/var/lib/kubelet"
--rotate-certificates當證書到期時,通過從kube-apiserver請求新的證書,自動旋轉kubelet客戶機證書
--runonce如果設置為true,當從本地清單或者遠程urls生成pod之后退出。給--enable-server單獨使用的
--runtime-cgroups可選的cgroups的決定名稱,用于創建和運行runtime
--runtime-request-timeout

除了長時間運行的請求(pull,logs,exec,attach)以外,所有runtime請求的超時時間。

當觸發超時時,kubelet會取消請求,拋出一個錯誤并稍后重試,默認值:2m0s

--seccomp-profile-rootseccomp概要文件的目錄路徑。默認值:"/var/lib/kubelet/seccomp"
--serialize-image-pulls每次拉取一個鏡像。建議不要在<1.9的docker版本或者使用Aufs存儲后端的節點修改默認的值。默認值true。
--stderrthreshold在此閥值或以上的日志轉到標準錯誤輸出。默認值2
--storage-driver-buffer-duration

在此期間,存儲驅動程序中的寫入將被緩沖,并作為單個事務提交給非內存后端。默認值:1m0s

--storage-driver-db數據庫的名稱,默認值:"cadvisor"
--storage-driver-host數據庫主機:端口,默認值:"localhost:8086"
--storage-driver-password數據庫密碼,默認值:"root"
--storage-driver-secure數據庫使用安全連接
--storage-driver-table表名,默認值: "stats"
--streaming-connection-idle-timeout在連接自動關閉之前,流連接可以空閑的最長時間。0表示沒有超時。默認值:4h0m0s
--sync-frequency同步運行的容器和配置之間最大的間隔。默認值:1m0s
--system-cgroups

可選的cgroups的絕對名稱將所有非內核進程放在/下的cgroup中??毡硎救萜?,

回滾標志需要重新引導。

--system-reserved

一組ResourceName=ResourceQuantity對(e.g. cpu=200m,memory=500Mi,

ephemeral-storage=1Gi) 的集合,用于描述非kubernetes組件的預留資源。

目前只支持cpu和內存。默認值為 [default=none]

--system-reserved-cgroup

頂級的cgroup的絕對名稱,用于管理非kubernetes的組件,這些組件的計算資源

通過 '--system-reserved' 保留。默認值:[default='']

--tls-cert-file    

用于服務HTTPS的包含x509證書的文件(如果有中間證書,則連接在服務器證書之后),

如果--tls-cert-file和--tls-private-key-file沒有提供,則為公共地址生成自簽名

證書和密鑰,并報春傳遞到--cert-dir的目錄中。

--tls-cipher-suites用逗號分隔的服務器密碼套件列表。如果省略,將使用默認的Go密碼套件。
--tls-private-key-file包含匹配--tls-cert-file文件的x509私鑰的文件。
-v, --v 日志的日志級別
--vmodule以逗號分隔的 “模式列表=N” 的文件過濾日志記錄設置
--volume-plugin-dir

用于尋找附加的第三方volume插件的完整目錄路徑。

默認值:"/usr/libexec/kubernetes/kubelet-plugins/volume/exec/"

--volume-stats-agg-period指定Kubelet計算和緩存所有pods/volumes的volume使用量的間隔。

參考:大神的博客https://my.oschina.net/jxcdwangtao/blog/891960

要做好資源預留的話,需要事先創建以下cgroup目錄:

/sys/fs/cgroup/cpuset/system.slice/kubelet.service  
/sys/fs/cgroup/hugebtl/system.slice/kubelet.service

這個工作可以放到kubelet.service的ExecStartPre中做。

而且一定要加上這三個配置項,否則無法生效:

--enforce-node-allocatable=pods,kube-reserved,system-reserved   
--kube-reserved-cgroup=/system.slice/kubelet.service   
--system-reserved-cgroup=/system.slice

感謝你能夠認真閱讀完這篇文章,希望小編分享的“Kubelet配置參數有哪些”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女