Kubelet 配置 (v1beta1)
資源型別
FormatOptions
出現在
FormatOptions 包含不同日誌格式的選項。
欄位 | 描述 |
---|---|
text [必需]TextOptions | [Alpha] Text 包含 "text" 格式日誌的選項。僅在啟用了 LoggingAlphaOptions 功能門控時可用。 |
json [必需]JSONOptions | [Alpha] JSON 包含 "json" 格式日誌的選項。僅在啟用了 LoggingAlphaOptions 功能門控時可用。 |
JSONOptions
出現在
JSONOptions 包含 "json" 格式日誌的選項。
欄位 | 描述 |
---|---|
OutputRoutingOptions [必需]OutputRoutingOptions | (OutputRoutingOptions 的成員嵌入到此型別中。) 未提供描述。 |
LogFormatFactory
LogFormatFactory 支援特定的額外、非預設日誌格式。
LoggingConfiguration
出現在
LoggingConfiguration 包含日誌選項。
欄位 | 描述 |
---|---|
format [必需]string | Format Flag 指定日誌訊息的結構。format 的預設值為 |
flushFrequency [必需]TimeOrMetaDuration | 日誌重新整理的最大時間間隔。如果是一個字串,則解析為持續時間(例如 "1s")。如果是一個整數,則為納秒的最大數量(例如 1s = 1000000000)。如果選定的日誌後端在沒有緩衝的情況下寫入日誌訊息,則忽略此欄位。 |
verbosity [必需]VerbosityLevel | Verbosity 是決定哪些日誌訊息被記錄的閾值。預設值為零,只記錄最重要的訊息。較高的值會啟用額外的訊息。錯誤訊息始終被記錄。 |
vmodule [必需]VModuleConfiguration | VModule 覆蓋單個檔案的詳細程度閾值。僅支援 "text" 日誌格式。 |
options [必需]FormatOptions | [Alpha] Options 包含特定於不同日誌格式的其他引數。只有選定格式的選項才會被使用,但所有選項都會進行驗證。僅在啟用了 LoggingAlphaOptions 功能門控時可用。 |
LoggingOptions
LoggingOptions 可以與 ValidateAndApplyWithOptions 一起使用來覆蓋某些全域性預設值。
欄位 | 描述 |
---|---|
ErrorStream [必需]io.Writer | ErrorStream 可用於覆蓋 os.Stderr 的預設值。 |
InfoStream [必需]io.Writer | InfoStream 可用於覆蓋 os.Stdout 的預設值。 |
OutputRoutingOptions
出現在
OutputRoutingOptions 包含 "text" 和 "json" 都支援的選項。
欄位 | 描述 |
---|---|
splitStream [必需]bool | [Alpha] SplitStream 將錯誤訊息重定向到 stderr,而資訊訊息則透過緩衝傳送到 stdout。預設是將兩者都寫入 stdout,不帶緩衝。僅在啟用了 LoggingAlphaOptions 功能門控時可用。 |
infoBufferSize [必需]k8s.io/apimachinery/pkg/api/resource.QuantityValue | [Alpha] InfoBufferSize 設定使用分流流時資訊流的大小。預設值為零,表示停用緩衝。僅在啟用了 LoggingAlphaOptions 功能門控時可用。 |
TextOptions
出現在
TextOptions 包含 "text" 格式日誌的選項。
欄位 | 描述 |
---|---|
OutputRoutingOptions [必需]OutputRoutingOptions | (OutputRoutingOptions 的成員嵌入到此型別中。) 未提供描述。 |
TimeOrMetaDuration
出現在
TimeOrMetaDuration 僅為 flushFrequency 欄位向後相容而存在,新欄位應使用 metav1.Duration。
欄位 | 描述 |
---|---|
Duration [必需]meta/v1.Duration | Duration 包含持續時間。 |
- [必填]bool | SerializeAsString 控制值是序列化為字串還是整數。 |
TracingConfiguration
出現在
TracingConfiguration 為 OpenTelemetry 跟蹤客戶端提供版本化的配置。
欄位 | 描述 |
---|---|
endpoint string | 此元件將跟蹤報告到的收集器的端點。連線是不安全的,目前不支援 TLS。推薦的做法是將其設定為空,端點為 otlp grpc 預設值 localhost:4317。 |
samplingRatePerMillion int32 | SamplingRatePerMillion 是每百萬個 span 收集的樣本數。推薦的做法是將其設定為空。如果設定為空,則取樣器將尊重其父 span 的取樣率,但否則永遠不會進行取樣。 |
VModuleConfiguration
([]k8s.io/component-base/logs/api/v1.VModuleItem
的別名)
出現在
VModuleConfiguration 是單個檔名或模式以及對應的詳細程度閾值的集合。
VerbosityLevel
(uint32
的別名)
出現在
VerbosityLevel 表示 klog 或 logr 的詳細程度閾值。
CredentialProviderConfig
CredentialProviderConfig 是包含每個執行憑證提供者資訊的配置。Kubelet 從磁碟讀取此配置,並根據 CredentialProvider 型別啟用每個提供者。
欄位 | 描述 |
---|---|
apiVersion string | kubelet.config.k8s.io/v1beta1 |
kind string | CredentialProviderConfig |
providers [必需][]CredentialProvider | providers 是將由 kubelet 啟用的憑證提供程式外掛列表。多個提供程式可能匹配單個映象,在這種情況下,所有提供程式的憑證都將返回給 kubelet。如果為單個映象呼叫了多個提供程式,則結果會合並。如果提供程式返回重疊的身份驗證金鑰,則列表前面提供程式的第一個值將首先被嘗試。 |
KubeletConfiguration
KubeletConfiguration 包含 Kubelet 的配置。
欄位 | 描述 |
---|---|
apiVersion string | kubelet.config.k8s.io/v1beta1 |
kind string | KubeletConfiguration |
enableServer [必需]bool | enableServer 啟用 Kubelet 的安全伺服器。注意:Kubelet 的不安全埠由 readOnlyPort 選項控制。預設值:true |
staticPodPath string | staticPodPath 是包含要執行的本地(靜態)Pod 的目錄的路徑,或者是一個單個靜態 Pod 檔案的路徑。預設值:"" |
podLogsDir string | podLogsDir 是 kubelet 將用於放置 Pod 日誌檔案的自定義根目錄路徑。預設值:"/var/log/pods/" 注意:不建議將臨時資料夾用作日誌目錄,因為它可能導致許多地方出現意外行為。 |
syncFrequency meta/v1.Duration | syncFrequency 是同步執行容器和配置的最大週期。預設值:"1m" |
fileCheckFrequency meta/v1.Duration | fileCheckFrequency 是檢查配置檔案是否有新資料的持續時間。預設值:"20s" |
httpCheckFrequency meta/v1.Duration | httpCheckFrequency 是檢查 http 是否有新資料的持續時間。預設值:"20s" |
staticPodURL string | staticPodURL 是訪問靜態 Pod 的 URL。預設值:"" |
staticPodURLHeader map[string][]string | staticPodURLHeader 是一個 map,其中包含訪問 podURL 時使用的 HTTP 標頭的切片。預設值:nil |
address string | address 是 Kubelet 的服務 IP 地址(設定為 0.0.0.0 表示所有介面)。預設值:"0.0.0.0" |
port int32 | port 是 Kubelet 的服務埠。埠號必須在 1 到 65535 之間(含)。預設值:10250 |
readOnlyPort int32 | readOnlyPort 是 Kubelet 的只讀服務埠,沒有身份驗證/授權。埠號必須在 1 到 65535 之間(含)。將此欄位設定為 0 會停用只讀服務。預設值:0(停用) |
tlsCertFile string | tlsCertFile 是包含 x509 證書的檔案(如果存在 CA 證書,則與伺服器證書連線在一起)。如果未提供 tlsCertFile 和 tlsPrivateKeyFile,則將為公共地址生成自簽名證書和金鑰,並儲存到傳遞給 Kubelet 的 --cert-dir 標誌的目錄中。預設值:"" |
tlsPrivateKeyFile string | tlsPrivateKeyFile 是包含與 tlsCertFile 匹配的 x509 私鑰的檔案。預設值:"" |
tlsCipherSuites []string | tlsCipherSuites 是伺服器允許的密碼套件列表。請注意,TLS 1.3 的密碼套件不可配置。值來自 tls 包常量(https://golang.org.tw/pkg/crypto/tls/#pkg-constants)。預設值:nil |
tlsMinVersion string | tlsMinVersion 是支援的最低 TLS 版本。值來自 tls 包常量(https://golang.org.tw/pkg/crypto/tls/#pkg-constants)。預設值:"" |
rotateCertificates bool | rotateCertificates 啟用客戶端證書輪換。Kubelet 將從 certificates.k8s.io API 請求新證書。這需要一個批准者來批准證書籤名請求。預設值:false |
serverTLSBootstrap bool | serverTLSBootstrap 啟用伺服器證書引導。Kubelet 將從 'certificates.k8s.io' API 請求證書,而不是自簽名服務證書。這需要一個批准者來批准證書籤名請求 (CSR)。設定此欄位時必須啟用 RotateKubeletServerCertificate 功能。預設值:false |
authentication KubeletAuthentication | authentication 指定如何對 Kubelet 伺服器的請求進行身份驗證。預設值:anonymous: enabled: false webhook: enabled: true cacheTTL: "2m" |
authorization KubeletAuthorization | authorization 指定如何對 Kubelet 伺服器的請求進行授權。預設值:mode: Webhook webhook: cacheAuthorizedTTL: "5m" cacheUnauthorizedTTL: "30s" |
registryPullQPS int32 | registryPullQPS 是每秒登錄檔拉取的限制。該值不能為負數。設定為 0 表示無限制。預設值:5 |
registryBurst int32 | registryBurst 是突發拉取的最大數量,暫時允許拉取爆發到此數量,同時仍不超過 registryPullQPS。該值不能為負數。僅當 registryPullQPS 大於 0 時使用。預設值:10 |
imagePullCredentialsVerificationPolicy ImagePullCredentialsVerificationPolicy | imagePullCredentialsVerificationPolicy 確定在 Pod 請求已存在於節點上的映象時如何驗證憑據。
|
preloadedImagesVerificationAllowlist []string | preloadedImagesVerificationAllowlist 指定了在 "NeverVerifyAllowlistedImages" |
eventRecordQPS int32 | eventRecordQPS 是每秒最大的事件建立數。如果為 0,則沒有強制限制。該值不能為負數。預設值:50 |
eventBurst int32 | eventBurst 是事件建立突發的最大數量,暫時允許事件建立爆發到此數量,同時仍不超過 eventRecordQPS。此欄位不能為負數,並且僅在 eventRecordQPS > 0 時使用。預設值:100 |
enableDebuggingHandlers bool | enableDebuggingHandlers 啟用日誌訪問以及容器和命令的本地執行的伺服器端點,包括 exec、attach、logs 和 portforward 功能。預設值:true |
enableContentionProfiling bool | enableContentionProfiling 如果 enableDebuggingHandlers 為 true,則啟用阻塞分析。 |
healthzPort int32 | healthzPort 是 localhost healthz 端點的埠(設定為 0 可停用)。有效數字在 1 到 65535 之間。預設值:10248 |
healthzBindAddress string | healthzBindAddress 是 healthz 伺服器的服務 IP 地址。預設值:"127.0.0.1" |
oomScoreAdj int32 | oomScoreAdj 是 kubelet 程序的 oom-score-adj 值。值必須在 [-1000, 1000] 的範圍內。預設值:-999 |
clusterDomain string | clusterDomain 是此叢集的 DNS 域。如果設定,kubelet 將配置所有容器除了主機的搜尋域之外,還會搜尋此域。預設值:"" |
clusterDNS []string | clusterDNS 是叢集 DNS 伺服器的 IP 地址列表。如果設定,kubelet 將配置所有容器使用此 DNS 伺服器進行 DNS 解析,而不是使用主機的 DNS 伺服器。預設值:nil |
streamingConnectionIdleTimeout meta/v1.Duration | streamingConnectionIdleTimeout 是流連線空閒的最長時間,在此時間後連線將自動關閉。預設值:"4h" |
nodeStatusUpdateFrequency meta/v1.Duration | nodeStatusUpdateFrequency 是 kubelet 計算節點狀態的頻率。如果未啟用節點租約功能,它也是 kubelet 向 master 報告節點狀態的頻率。注意:當未啟用節點租約功能時,更改此常量要謹慎,它必須與 nodecontroller 中的 nodeMonitorGracePeriod 一起工作。預設值:"10s" |
nodeStatusReportFrequency meta/v1.Duration | nodeStatusReportFrequency 是當節點狀態不發生變化時,kubelet 向 master 報告節點狀態的頻率。如果檢測到任何變化,kubelet 將忽略此頻率並立即報告節點狀態。它僅在啟用節點租約功能時使用。nodeStatusReportFrequency 的預設值為 5m。但是,如果顯式設定了 nodeStatusUpdateFrequency,為了向後相容,nodeStatusReportFrequency 的預設值將設定為 nodeStatusUpdateFrequency。預設值:"5m" |
nodeLeaseDurationSeconds int32 | nodeLeaseDurationSeconds 是 Kubelet 將設定在其對應 Lease 上的持續時間。NodeLease 透過讓 Kubelet 在 kube-node-lease 名稱空間中建立並定期續訂一個以節點命名的租約來提供節點健康的指示。如果租約過期,則節點可以被視為不健康。根據 KEP-0009,租約目前每 10 秒續訂一次。將來,租約續訂間隔可能會根據租約持續時間進行設定。欄位值必須大於 0。預設值:40 |
imageMinimumGCAge meta/v1.Duration | imageMinimumGCAge 是一個未使用映象被垃圾回收的最小年齡。預設值:"2m" |
imageMaximumGCAge meta/v1.Duration | imageMaximumGCAge 是一個映象可以未使用多長時間後被垃圾回收。此欄位的預設值為 "0s",表示停用此欄位——即映象不會因為長時間未使用而被垃圾回收。預設值:"0s"(停用) |
imageGCHighThresholdPercent int32 | imageGCHighThresholdPercent 是影像垃圾回收始終執行的磁碟使用率百分比。該百分比透過將此欄位值除以 100 來計算,因此此欄位必須在 0 到 100 之間(含)。指定時,值必須大於 imageGCLowThresholdPercent。預設值:85 |
imageGCLowThresholdPercent int32 | imageGCLowThresholdPercent 是影像垃圾回收永不執行的磁碟使用率百分比。垃圾回收的最低磁碟使用率。該百分比透過將此欄位值除以 100 來計算,因此欄位值必須在 0 到 100 之間(含)。指定時,值必須小於 imageGCHighThresholdPercent。預設值:80 |
volumeStatsAggPeriod meta/v1.Duration | volumeStatsAggPeriod 是計算和快取所有 Pod 的卷磁碟使用量的頻率。預設值:"1m" |
kubeletCgroups string | kubeletCgroups 是隔離 kubelet 的 cgroups 的絕對名稱。預設值:"" |
systemCgroups string | systemCgroups 是 cgroups 的絕對名稱,所有未包含在容器中的非核心程序都將放入其中。為空表示不進行容器化。回滾此標誌需要重啟。如果此欄位非空,則必須指定 cgroupRoot。預設值:"" |
cgroupRoot string | cgroupRoot 是用於 Pod 的根 cgroup。這由容器執行時盡力處理。 |
cgroupsPerQOS bool | cgroupsPerQOS 啟用基於 QoS 的 CGroup 層級結構:為 QoS 類別設定頂層 CGroups,並將所有 Burstable 和 BestEffort Pod 置於其特定的頂層 QoS CGroup 下。預設值:true |
cgroupDriver string | cgroupDriver 是 kubelet 用於操作主機上的 CGroups 的驅動程式(cgroupfs 或 systemd)。預設值:"cgroupfs" |
cpuManagerPolicy string | cpuManagerPolicy 是要使用的策略名稱。預設值:"None" |
singleProcessOOMKill bool | singleProcessOOMKill 如果為 true,將阻止為 cgroups v2 中的容器 cgroup 設定 |
cpuManagerPolicyOptions map[string]string | cpuManagerPolicyOptions 是一組 key=value 對,允許設定額外的選項來微調 cpu manager 策略的行為。預設值:nil |
cpuManagerReconcilePeriod meta/v1.Duration | cpuManagerReconcilePeriod 是 CPU Manager 的協調週期。預設值:"10s" |
memoryManagerPolicy string | memoryManagerPolicy 是 memory manager 使用的策略名稱。需要啟用 MemoryManager 功能門控。預設值:"none" |
topologyManagerPolicy string | topologyManagerPolicy 是要使用的拓撲管理器策略名稱。有效值包括:
預設值:"none" |
topologyManagerScope string | topologyManagerScope 表示拓撲管理器請求和提示提供程式生成的拓撲提示的範圍。有效值包括:
預設值:"container" |
topologyManagerPolicyOptions map[string]string | TopologyManagerPolicyOptions 是一組 key=value 對,允許設定額外的選項來微調拓撲管理器策略的行為。需要同時啟用 "TopologyManager" 和 "TopologyManagerPolicyOptions" 功能門控。預設值:nil |
qosReserved map[string]string | qosReserved 是資源名稱到百分比對的集合,指定為保證 QoS 級別保留的最小資源百分比。當前支援的資源:"memory" 需要啟用 QOSReserved 功能門控。預設值:nil |
runtimeRequestTimeout meta/v1.Duration | runtimeRequestTimeout 是除長時執行請求(pull、logs、exec 和 attach)之外的所有執行時請求的超時時間。預設值:"2m" |
hairpinMode string | hairpinMode 指定 Kubelet 應如何配置容器網橋以處理 hairpin 資料包。設定此標誌允許服務中的端點將流量負載均衡回自身,如果它們嘗試訪問自己的服務。值:
通常,必須設定 |
maxPods int32 | maxPods 是此 Kubelet 可以執行的最大 Pod 數量。該值必須是非負整數。預設值:110 |
podCIDR string | podCIDR 是用於 Pod IP 地址的 CIDR,僅在獨立模式下使用。在叢集模式下,此地址從控制平面獲取。預設值:"" |
podPidsLimit int64 | podPidsLimit 是任何 Pod 的最大 PID 數量。預設值:-1 |
resolvConf string | resolvConf 是用作容器 DNS 解析配置基礎的解析器配置檔案。如果設定為字串為空,將覆蓋預設值並有效停用 DNS 查詢。預設值:"/etc/resolv.conf" |
runOnce bool | runOnce 導致 Kubelet 只檢查一次 API 伺服器以獲取 Pod,執行這些 Pod 以及由靜態 Pod 檔案指定的 Pod,然後退出。預設值:false |
cpuCFSQuota bool | cpuCFSQuota 啟用 CPU CFS 配額強制執行,用於指定 CPU 限制的容器。預設值:true |
cpuCFSQuotaPeriod meta/v1.Duration | cpuCFSQuotaPeriod 是 CPU CFS 配額週期值, |
nodeStatusMaxImages int32 | nodeStatusMaxImages 限制 Node.status.images 中報告的映象數量。該值必須大於 -2。注意:如果指定 -1,則不應用限制。如果指定 0,則不返回任何映象。預設值:50 |
maxOpenFiles int64 | maxOpenFiles 是 Kubelet 程序可以開啟的檔案數。該值必須是非負數。預設值:1000000 |
contentType string | contentType 是傳送到 apiserver 的請求的內容型別。預設值:"application/vnd.kubernetes.protobuf" |
kubeAPIQPS int32 | kubeAPIQPS 是與 kubernetes apiserver 通訊時使用的 QPS。預設值:50 |
kubeAPIBurst int32 | kubeAPIBurst 是與 kubernetes API server 通訊時允許的突發流量。此欄位不能為負數。預設值:100 |
serializeImagePulls bool | serializeImagePulls 啟用時,指示 Kubelet 逐個拉取映象。我們建議不要在執行版本小於 1.9 的 docker daemon 或使用 Aufs 儲存後端的節點上更改預設值。Issue #10959 提供了更多詳細資訊。預設值:true |
maxParallelImagePulls int32 | MaxParallelImagePulls 設定並行映象拉取的最大數量。如果 SerializeImagePulls 為 true,則無法設定此欄位。設定為 nil 表示無限制。預設值:nil |
evictionHard map[string]string | evictionHard 是訊號名稱到數量的對映,定義了硬性驅逐閾值。例如: |
evictionSoft map[string]string | evictionSoft 是訊號名稱到數量的對映,定義了軟性驅逐閾值。例如: |
evictionSoftGracePeriod map[string]string | evictionSoftGracePeriod 是訊號名稱到數量的對映,定義了每個軟性驅逐訊號的寬限期。例如: |
evictionPressureTransitionPeriod meta/v1.Duration | evictionPressureTransitionPeriod 是 kubelet 在從驅逐壓力條件轉換出來之前必須等待的持續時間。0s 的持續時間將被轉換為預設值 5m。預設值:"5m" |
evictionMaxPodGracePeriod int32 | evictionMaxPodGracePeriod 是在滿足軟性驅逐閾值以終止 Pod 時允許的最大寬限期(以秒為單位)。此值有效地限制了軟性驅逐期間 Pod 的 terminationGracePeriodSeconds 值。預設值:0 |
evictionMinimumReclaim map[string]string | evictionMinimumReclaim 是訊號名稱到數量的對映,定義了最小的回收量,描述了當資源面臨壓力時,kubelet 在執行 Pod 驅逐時將回收的給定資源的最小量。例如: |
mergeDefaultEvictionSettings bool | mergeDefaultEvictionSettings 指示 evictionHard、evictionSoft、evictionSoftGracePeriod 和 evictionMinimumReclaim 欄位的預設值應與此配置中為這些欄位指定的值合併。此配置中指定的訊號具有優先權。未在此配置中指定的訊號將繼承其預設值。如果為 false,並且此配置中指定了任何訊號,則此配置中未指定的其他訊號將設定為 0。它適用於合併具有預設值的欄位,目前只有 evictionHard 有預設值。預設值:false |
podsPerCore int32 | podsPerCore 是每核的最大 Pod 數量。不能超過 maxPods。該值必須是非負整數。如果為 0,則 Pod 數量沒有限制。預設值:0 |
enableControllerAttachDetach bool | enableControllerAttachDetach 啟用 Attach/Detach 控制器來管理排程到此節點的卷的掛載/解除安裝,並停用 kubelet 執行任何掛載/解除安裝操作。注意:CSI 卷的掛載/解除安裝不受 kubelet 支援,因此在此用例中,此選項必須為 true。預設值:true |
protectKernelDefaults bool | protectKernelDefaults 如果為 true,則當核心標誌不符合預期時,Kubelet 會報錯。否則,Kubelet 將嘗試修改核心標誌以匹配其預期。預設值:false |
makeIPTablesUtilChains bool | makeIPTablesUtilChains 如果為 true,則導致 Kubelet 建立 iptables 中的 KUBE-IPTABLES-HINT 鏈,作為對系統 iptables 配置的其他元件的提示。預設值:true |
iptablesMasqueradeBit int32 | iptablesMasqueradeBit 以前控制 KUBE-MARK-MASQ 鏈的建立。已棄用:不再有任何作用。預設值:14 |
iptablesDropBit int32 | iptablesDropBit 以前控制 KUBE-MARK-DROP 鏈的建立。已棄用:不再有任何作用。預設值:15 |
featureGates map[string]bool | featureGates 是一個功能名稱到布林值的對映,用於啟用或停用實驗性功能。此欄位零散地修改了 "k8s.io/kubernetes/pkg/features/kube_features.go" 中的內建預設值。預設值:nil |
failSwapOn bool | failSwapOn 告知 Kubelet,如果節點上啟用了 swap,則啟動失敗。預設值:true |
memorySwap MemorySwapConfiguration | memorySwap 配置容器工作負載可用的 swap 記憶體。 |
containerLogMaxSize string | containerLogMaxSize 是一個數量,定義了容器日誌檔案在旋轉之前的最大大小。例如:"5Mi" 或 "256Ki"。預設值:"10Mi" |
containerLogMaxFiles int32 | containerLogMaxFiles 指定容器日誌檔案允許存在的最大數量。預設值:5 |
containerLogMaxWorkers int32 | ContainerLogMaxWorkers 指定用於執行日誌旋轉操作的併發工作程序的最大數量。將此計數設定為 1 以停用併發日誌輪換工作流。預設值:1 |
containerLogMonitorInterval meta/v1.Duration | ContainerLogMonitorInterval 指定監控容器日誌以執行日誌輪換操作的持續時間。預設為 10 * time.Seconds。但可以根據日誌生成速率和需要旋轉的大小進行自定義。預設值:10s |
configMapAndSecretChangeDetectionStrategy ResourceChangeDetectionStrategy | configMapAndSecretChangeDetectionStrategy 是 ConfigMap 和 Secret 管理器執行的模式。有效值包括:
預設值:"Watch" |
systemReserved map[string]string | systemReserved 是資源名稱=資源數量(例如 cpu=200m,memory=150G)對的集合,描述了為非 kubernetes 元件保留的資源。目前只支援 cpu 和 memory。更多詳情請參閱 https://kubernetes.club.tw/docs/tasks/administer-cluster/reserve-compute-resources。預設值:nil |
kubeReserved map[string]string | kubeReserved 是資源名稱=資源數量(例如 cpu=200m,memory=150G)對的集合,描述了為 kubernetes 系統元件保留的資源。目前支援 cpu、memory 和根檔案系統的本地儲存。更多詳情請參閱 https://kubernetes.club.tw/docs/tasks/administer-cluster/reserve-compute-resources。預設值:nil |
reservedSystemCPUs [必需]string | reservedSystemCPUs 選項指定為宿主級別系統執行緒和 kubernetes 相關執行緒保留的 CPU 列表。這提供了一個“靜態”CPU 列表,而不是 systemReserved 和 kubeReserved 的“動態”列表。此選項不支援 systemReservedCgroup 或 kubeReservedCgroup。 |
showHiddenMetricsForVersion string | showHiddenMetricsForVersion 是您希望顯示隱藏指標的先前版本。只有前一個次要版本才有意義,其他值將不被允許。格式為 |
systemReservedCgroup string | systemReservedCgroup 幫助 kubelet 識別用於強制執行 OS 系統守護程序的 |
kubeReservedCgroup string | kubeReservedCgroup 幫助 kubelet 識別用於強制執行 Kubernetes 節點系統守護程序的 |
enforceNodeAllocatable []string | 此標誌指定 Kubelet 需要執行的各種 Node Allocatable 強制措施。此標誌接受選項列表。可接受的選項是 |
allowedUnsafeSysctls []string | 一個逗號分隔的白名單,包含不安全的 sysctls 或 sysctl 模式(以 |
volumePluginDir string | volumePluginDir 是用於搜尋第三方卷外掛的目錄的完整路徑。預設值:"/usr/libexec/kubernetes/kubelet-plugins/volume/exec/" |
providerID string | providerID,如果設定,則設定例項的唯一 ID,外部提供程式(即 cloudprovider)可以使用此 ID 來標識特定節點。預設值:"" |
kernelMemcgNotification bool | kernelMemcgNotification,如果設定,則指示 kubelet 與核心 memcg 通知整合,以確定是否超過記憶體驅逐閾值,而不是輪詢。預設值:false |
logging [必需]LoggingConfiguration | logging 指定日誌選項。有關更多資訊,請參閱 Logs Options。預設值:Format: text |
enableSystemLogHandler bool | enableSystemLogHandler 透過 web 介面 host:port/logs/ 啟用系統日誌。預設值:true |
enableSystemLogQuery bool | enableSystemLogQuery 在 /logs 端點上啟用節點日誌查詢功能。必須同時啟用 EnableSystemLogHandler 才能使此功能正常工作。啟用此功能存在安全風險。建議僅在需要除錯時啟用它,否則停用。預設值:false |
shutdownGracePeriod meta/v1.Duration | shutdownGracePeriod 指定節點在關閉時應延遲的總時間以及節點關閉期間 Pod 終止的總寬限期。預設值:"0s" |
shutdownGracePeriodCriticalPods meta/v1.Duration | shutdownGracePeriodCriticalPods 指定在節點關閉期間終止關鍵 Pod 的持續時間。此值應小於 shutdownGracePeriod。例如,如果 shutdownGracePeriod=30s,shutdownGracePeriodCriticalPods=10s,則在節點關閉時,前 20 秒將用於正常終止普通 Pod,最後 10 秒將用於終止關鍵 Pod。預設值:"0s" |
shutdownGracePeriodByPodPriority []ShutdownGracePeriodByPodPriority | shutdownGracePeriodByPodPriority 根據 Pod 的關聯優先順序類別值指定 Pod 的關閉寬限期。當收到關閉請求時,Kubelet 將在節點上執行的所有 Pod 上啟動關閉,其寬限期取決於 Pod 的優先順序,然後等待所有 Pod 退出。陣列中的每個條目代表節點關閉時,優先順序類別值介於該值和列表中的下一個更高條目之間的 Pod 的優雅關閉時間。例如,允許關鍵 Pod 10 秒關閉,優先順序 >= 10000 的 Pod 20 秒關閉,其餘所有 Pod 30 秒關閉。 shutdownGracePeriodByPodPriority
Kubelet 將在退出前等待的最長時間將最多為節點上表示的所有優先順序類別範圍的 shutdownGracePeriodSeconds 的最大值。當所有 Pod 都已退出或達到其寬限期後,Kubelet 將釋放關閉抑制鎖。需要啟用 GracefulNodeShutdown 功能門控。如果設定了 ShutdownGracePeriod 或 ShutdownGracePeriodCriticalPods,則此配置必須為空。預設值:nil |
crashLoopBackOff CrashLoopBackOffConfig | CrashLoopBackOff 包含修改容器重啟行為的節點級引數的配置。 |
reservedMemory []MemoryReservation | reservedMemory 指定每個 NUMA 節點的記憶體保留的逗號分隔列表。該引數僅在記憶體管理器功能的上下文中才有意義。記憶體管理器不會為容器工作負載分配保留記憶體。例如,如果您有一個 NUMA0 且擁有 10Gi 記憶體,並且 reservedMemory 被指定為在 NUMA0 上保留 1Gi 記憶體,那麼記憶體管理器將假定只有 9Gi 可用於分配。您可以指定不同數量的 NUMA 節點和記憶體型別。您可以完全省略此引數,但您應該知道,所有 NUMA 節點的保留記憶體量應等於 node allocatable 指定的記憶體量。如果至少有一個節點分配引數的值非零,則需要指定至少一個 NUMA 節點。此外,避免指定
預設值:nil |
enableProfilingHandler bool | enableProfilingHandler 透過 web 介面 host:port/debug/pprof/ 啟用分析。預設值:true |
enableDebugFlagsHandler bool | enableDebugFlagsHandler 透過 web 介面 host:port/debug/flags/v 啟用 flags 端點。預設值:true |
seccompDefault bool | SeccompDefault 啟用將 |
memoryThrottlingFactor float64 | MemoryThrottlingFactor 指定了在設定 cgroupv2 memory.high 值以強制執行 MemoryQoS 時,乘以記憶體限制或節點分配記憶體的因子。減小此因子會為容器 cgroups 設定更低的高限制並施加更重的回收壓力,而增加會施加較少的回收壓力。更多詳細資訊請參閱 https://kep.k8s.io/2570。預設值:0.9 |
registerWithTaints []core/v1.Taint | registerWithTaints 是當 kubelet 註冊自身時要新增到節點物件中的汙點陣列。僅在 registerNode 為 true 且節點初始註冊時生效。預設值:nil |
registerNode bool | registerNode 啟用與 apiserver 的自動註冊。預設值:true |
tracing TracingConfiguration | Tracing 指定 OpenTelemetry 跟蹤客戶端的版本化配置。有關更多資訊,請參閱 https://kep.k8s.io/2832。預設值:nil |
localStorageCapacityIsolation bool | LocalStorageCapacityIsolation 啟用本地臨時儲存隔離功能。預設設定為 true。此功能允許使用者為容器的臨時儲存設定請求/限制,並以類似於 cpu 和記憶體的方式對其進行管理。它還允許為 emptyDir 卷設定 sizeLimit,如果卷的磁碟使用量超過限制,將觸發 pod 驅逐。此功能取決於檢測正確根檔案系統磁碟使用量的能力。對於某些系統,例如 kind rootless,如果無法支援此功能,應停用 LocalStorageCapacityIsolation 功能。一旦停用,使用者不應為容器的臨時儲存設定請求/限制,或為 emptyDir 設定 sizeLimit。預設值:true |
containerRuntimeEndpoint [必需]string | ContainerRuntimeEndpoint 是容器執行時的端點。Linux 支援 Unix Domain Sockets,而 Windows 支援 npipe 和 tcp 端點。例如:'unix:///path/to/runtime.sock','npipe:////./pipe/runtime' |
imageServiceEndpoint string | ImageServiceEndpoint 是容器映象服務的端點。Linux 支援 Unix Domain Socket,而 Windows 支援 npipe 和 tcp 端點。例如:'unix:///path/to/runtime.sock','npipe:////./pipe/runtime'。如果未指定,則使用 containerRuntimeEndpoint 中的值。 |
failCgroupV1 bool | FailCgroupV1 可阻止 kubelet 在使用 cgroup v1 的主機上啟動。預設情況下,此選項設定為 'false',表示除非顯式啟用,否則允許 kubelet 在 cgroup v1 主機上啟動。預設值:false |
userNamespaces UserNamespaces | UserNamespaces 包含 User Namespace 配置。 |
SerializedNodeConfigSource
SerializedNodeConfigSource允許我們序列化 v1.NodeConfigSource。此型別在 Kubelet 內部用於跟蹤已檢查的動態配置。它存在於 kubeletconfig API 組中,因為它被歸類為 Kubelet 的版本化輸入。
欄位 | 描述 |
---|---|
apiVersion string | kubelet.config.k8s.io/v1beta1 |
kind string | SerializedNodeConfigSource |
source core/v1.NodeConfigSource | source 是我們要序列化的源。 |
CrashLoopBackOffConfig
出現在
欄位 | 描述 |
---|---|
maxContainerRestartPeriod meta/v1.Duration | maxContainerRestartPeriod 是容器重啟的退避延遲可能累積的最大持續時間,最小為 1 秒,最大為 300 秒。如果未設定,則預設為內部 crashloopbackoff 最大值(300 秒)。 |
CredentialProvider
出現在
CredentialProvider 表示一個由 kubelet 呼叫的執行外掛。僅當正在拉取的映象與該外掛處理的映象匹配時(請參見 matchImages),才會呼叫該外掛。
欄位 | 描述 |
---|---|
name [必填]string | name 是憑證提供程式的必需名稱。它必須與 kubelet 看到的提供程式可執行檔案的名稱匹配。可執行檔案必須位於 kubelet 的 bin 目錄中(由 --image-credential-provider-bin-dir 標誌設定)。在所有提供程式中必需且唯一。 |
matchImages [必需][]string | matchImages 是一個必需的字串列表,用於匹配映象,以確定是否應呼叫此提供程式。如果提供的字串之一與 kubelet 請求的映象匹配,則將呼叫外掛並有機會提供憑據。映象應包含登錄檔域和 URL 路徑。 matchImages 中的每個條目都是一個模式,可以包含埠和路徑。可以在域中使用 glob,但在埠或路徑中不行。Glob 支援子域(例如 '*.k8s.io' 或 'k8s.*.io')和頂級域(例如 'k8s.*')。也支援匹配部分子域(例如 'app*.k8s.io')。每個 glob 只能匹配一個子域段,因此 '*.io' 不匹配 '*.k8s.io'。 當以下所有條件都成立時,映象和 matchImage 之間存在匹配:
matchImages 的示例值
|
defaultCacheDuration [必需]meta/v1.Duration | defaultCacheDuration 是外掛在記憶體中快取憑證的預設持續時間,如果外掛響應中未提供快取持續時間。此欄位是必需的。 |
apiVersion [必需]string | 執行 CredentialProviderRequest 所需的輸入版本。返回的 CredentialProviderResponse 必須使用與輸入相同的編碼版本。當前支援的值為:
|
args []string | 執行命令時要傳遞給命令的引數。 |
env []ExecEnvVar | Env 定義了要暴露給程序的環境變數。這些變數與主機的環境以及 client-go 用於將引數傳遞給外掛的變數合併。 |
ExecEnvVar
出現在
ExecEnvVar 用於在執行基於 exec 的憑證外掛時設定環境變數。
欄位 | 描述 |
---|---|
name [必填]string | 未提供描述。 |
value [必填]string | 未提供描述。 |
ImagePullCredentialsVerificationPolicy
(string
的別名)
出現在
ImagePullCredentialsVerificationPolicy 是當 Pod 請求系統中存在的映象時所執行策略的列舉。
KubeletAnonymousAuthentication
出現在
欄位 | 描述 |
---|---|
enabled bool | enabled 允許匿名請求訪問 kubelet 伺服器。未被其他身份驗證方法拒絕的請求被視為匿名請求。匿名請求的使用者名稱為 |
KubeletAuthentication
出現在
欄位 | 描述 |
---|---|
x509 KubeletX509Authentication | x509 包含與 x509 客戶端證書身份驗證相關的設定。 |
webhook KubeletWebhookAuthentication | webhook 包含與 webhook 持票人令牌身份驗證相關的設定。 |
anonymous KubeletAnonymousAuthentication | anonymous 包含與匿名身份驗證相關的設定。 |
KubeletAuthorization
出現在
欄位 | 描述 |
---|---|
mode KubeletAuthorizationMode | mode 是應用於 kubelet 伺服器請求的授權模式。有效值為 |
webhook KubeletWebhookAuthorization | webhook 包含與 Webhook 授權相關的設定。 |
KubeletAuthorizationMode
(string
的別名)
出現在
KubeletWebhookAuthentication
出現在
欄位 | 描述 |
---|---|
enabled bool | enabled 啟用由 tokenreviews.authentication.k8s.io API 支援的持票人令牌身份驗證。 |
cacheTTL meta/v1.Duration | cacheTTL 啟用對身份驗證結果的快取。 |
KubeletWebhookAuthorization
出現在
欄位 | 描述 |
---|---|
cacheAuthorizedTTL meta/v1.Duration | cacheAuthorizedTTL 是快取來自 webhook 授權程式的 'authorized' 響應的持續時間。 |
cacheUnauthorizedTTL meta/v1.Duration | cacheUnauthorizedTTL 是快取來自 webhook 授權程式的 'unauthorized' 響應的持續時間。 |
KubeletX509Authentication
出現在
欄位 | 描述 |
---|---|
clientCAFile string | clientCAFile 是 PEM 編碼的證書捆綁包的路徑。如果設定,任何呈現由捆綁包中的一個證書頒發機構簽名的客戶端證書的請求都將被身份驗證,使用者名稱為證書的 CommonName,組名為證書的 Organization。 |
MemoryReservation
出現在
MemoryReservation 指定每個 NUMA 節點的各種型別的記憶體保留。
欄位 | 描述 |
---|---|
numaNode [必需]int32 | 未提供描述。 |
limits [必需]core/v1.ResourceList | 未提供描述。 |
MemorySwapConfiguration
出現在
欄位 | 描述 |
---|---|
swapBehavior string | swapBehavior 配置容器工作負載可用的 swap 記憶體。可以是 "", "NoSwap":工作負載不能使用 swap,預設選項。"LimitedSwap":工作負載的 swap 使用受到限制。swap 限制與容器的記憶體請求成比例。 |
ResourceChangeDetectionStrategy
(string
的別名)
出現在
ResourceChangeDetectionStrategy 表示內部管理器(secret、configmap)發現物件更改的模式。
ShutdownGracePeriodByPodPriority
出現在
ShutdownGracePeriodByPodPriority 根據 Pod 的關聯優先順序類別值指定 Pod 的關閉寬限期。
欄位 | 描述 |
---|---|
priority [必需]int32 | priority 是與關閉寬限期相關的優先順序值。 |
shutdownGracePeriodSeconds [必需]int64 | shutdownGracePeriodSeconds 是以秒為單位的關閉寬限期。 |
UserNamespaces
出現在
UserNamespaces 包含 User Namespace 配置。
欄位 | 描述 |
---|---|
idsPerPod int64 | IDsPerPod 是 UID 和 GID 的對映長度。長度必須是 65536 的倍數,且必須小於 1<<32。在非 Linux(如 Windows)上,只允許 null / absent。 更改此值可能需要重新建立節點上的所有容器。 預設值:65536 |
本頁面是自動生成的。
如果你打算報告此頁面存在的問題,請在問題描述中提及此頁面是自動生成的。修復可能需要在 Kubernetes 專案的其他地方進行。