Merge pull request #103589 from SergeyKanzhelev/updateHelpText

update the help text of KubeletConfig following the DynamicKubletConf…
This commit is contained in:
Kubernetes Prow Robot 2021-07-09 06:01:25 -07:00 committed by GitHub
commit f6df5a6818
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -90,13 +90,15 @@ type KubeletConfiguration struct {
// enableServer enables Kubelet's secured server. // enableServer enables Kubelet's secured server.
// Note: Kubelet's insecure port is controlled by the readOnlyPort option. // Note: Kubelet's insecure port is controlled by the readOnlyPort option.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may disrupt components that interact with the Kubelet server. // it may disrupt components that interact with the Kubelet server.
// Default: true // Default: true
EnableServer *bool `json:"enableServer,omitempty"` EnableServer *bool `json:"enableServer,omitempty"`
// staticPodPath is the path to the directory containing local (static) pods to // staticPodPath is the path to the directory containing local (static) pods to
// run, or the path to a single static pod file. // run, or the path to a single static pod file.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// the set of static pods specified at the new path may be different than the // the set of static pods specified at the new path may be different than the
// ones the Kubelet initially started with, and this may disrupt your node. // ones the Kubelet initially started with, and this may disrupt your node.
// Default: "" // Default: ""
@ -104,7 +106,8 @@ type KubeletConfiguration struct {
StaticPodPath string `json:"staticPodPath,omitempty"` StaticPodPath string `json:"staticPodPath,omitempty"`
// syncFrequency is the max period between synchronizing running // syncFrequency is the max period between synchronizing running
// containers and config. // containers and config.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// shortening this duration may have a negative performance impact, especially // shortening this duration may have a negative performance impact, especially
// as the number of Pods on the node increases. Alternatively, increasing this // as the number of Pods on the node increases. Alternatively, increasing this
// duration will result in longer refresh times for ConfigMaps and Secrets. // duration will result in longer refresh times for ConfigMaps and Secrets.
@ -112,43 +115,49 @@ type KubeletConfiguration struct {
// +optional // +optional
SyncFrequency metav1.Duration `json:"syncFrequency,omitempty"` SyncFrequency metav1.Duration `json:"syncFrequency,omitempty"`
// fileCheckFrequency is the duration between checking config files for // fileCheckFrequency is the duration between checking config files for
// new data // new data.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// shortening the duration will cause the Kubelet to reload local Static Pod // shortening the duration will cause the Kubelet to reload local Static Pod
// configurations more frequently, which may have a negative performance impact. // configurations more frequently, which may have a negative performance impact.
// Default: "20s" // Default: "20s"
// +optional // +optional
FileCheckFrequency metav1.Duration `json:"fileCheckFrequency,omitempty"` FileCheckFrequency metav1.Duration `json:"fileCheckFrequency,omitempty"`
// httpCheckFrequency is the duration between checking http for new data // httpCheckFrequency is the duration between checking http for new data.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// shortening the duration will cause the Kubelet to poll staticPodURL more // shortening the duration will cause the Kubelet to poll staticPodURL more
// frequently, which may have a negative performance impact. // frequently, which may have a negative performance impact.
// Default: "20s" // Default: "20s"
// +optional // +optional
HTTPCheckFrequency metav1.Duration `json:"httpCheckFrequency,omitempty"` HTTPCheckFrequency metav1.Duration `json:"httpCheckFrequency,omitempty"`
// staticPodURL is the URL for accessing static pods to run // staticPodURL is the URL for accessing static pods to run.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// the set of static pods specified at the new URL may be different than the // the set of static pods specified at the new URL may be different than the
// ones the Kubelet initially started with, and this may disrupt your node. // ones the Kubelet initially started with, and this may disrupt your node.
// Default: "" // Default: ""
// +optional // +optional
StaticPodURL string `json:"staticPodURL,omitempty"` StaticPodURL string `json:"staticPodURL,omitempty"`
// staticPodURLHeader is a map of slices with HTTP headers to use when accessing the podURL // staticPodURLHeader is a map of slices with HTTP headers to use when accessing the podURL.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may disrupt the ability to read the latest set of static pods from StaticPodURL. // it may disrupt the ability to read the latest set of static pods from StaticPodURL.
// Default: nil // Default: nil
// +optional // +optional
StaticPodURLHeader map[string][]string `json:"staticPodURLHeader,omitempty"` StaticPodURLHeader map[string][]string `json:"staticPodURLHeader,omitempty"`
// address is the IP address for the Kubelet to serve on (set to 0.0.0.0 // address is the IP address for the Kubelet to serve on (set to 0.0.0.0
// for all interfaces). // for all interfaces).
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may disrupt components that interact with the Kubelet server. // it may disrupt components that interact with the Kubelet server.
// Default: "0.0.0.0" // Default: "0.0.0.0"
// +optional // +optional
Address string `json:"address,omitempty"` Address string `json:"address,omitempty"`
// port is the port for the Kubelet to serve on. // port is the port for the Kubelet to serve on.
// The port number must be between 1 and 65535, inclusive. // The port number must be between 1 and 65535, inclusive.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may disrupt components that interact with the Kubelet server. // it may disrupt components that interact with the Kubelet server.
// Default: 10250 // Default: 10250
// +optional // +optional
@ -157,7 +166,8 @@ type KubeletConfiguration struct {
// no authentication/authorization. // no authentication/authorization.
// The port number must be between 1 and 65535, inclusive. // The port number must be between 1 and 65535, inclusive.
// Setting this field to 0 disables the read-only service. // Setting this field to 0 disables the read-only service.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may disrupt components that interact with the Kubelet server. // it may disrupt components that interact with the Kubelet server.
// Default: 0 (disabled) // Default: 0 (disabled)
// +optional // +optional
@ -167,27 +177,31 @@ type KubeletConfiguration struct {
// tlsPrivateKeyFile are not provided, a self-signed certificate // tlsPrivateKeyFile are not provided, a self-signed certificate
// and key are generated for the public address and saved to the directory // and key are generated for the public address and saved to the directory
// passed to the Kubelet's --cert-dir flag. // passed to the Kubelet's --cert-dir flag.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may disrupt components that interact with the Kubelet server. // it may disrupt components that interact with the Kubelet server.
// Default: "" // Default: ""
// +optional // +optional
TLSCertFile string `json:"tlsCertFile,omitempty"` TLSCertFile string `json:"tlsCertFile,omitempty"`
// tlsPrivateKeyFile is the file containing x509 private key matching tlsCertFile // tlsPrivateKeyFile is the file containing x509 private key matching tlsCertFile.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may disrupt components that interact with the Kubelet server. // it may disrupt components that interact with the Kubelet server.
// Default: "" // Default: ""
// +optional // +optional
TLSPrivateKeyFile string `json:"tlsPrivateKeyFile,omitempty"` TLSPrivateKeyFile string `json:"tlsPrivateKeyFile,omitempty"`
// tlsCipherSuites is the list of allowed cipher suites for the server. // tlsCipherSuites is the list of allowed cipher suites for the server.
// Values are from tls package constants (https://golang.org/pkg/crypto/tls/#pkg-constants). // Values are from tls package constants (https://golang.org/pkg/crypto/tls/#pkg-constants).
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may disrupt components that interact with the Kubelet server. // it may disrupt components that interact with the Kubelet server.
// Default: nil // Default: nil
// +optional // +optional
TLSCipherSuites []string `json:"tlsCipherSuites,omitempty"` TLSCipherSuites []string `json:"tlsCipherSuites,omitempty"`
// tlsMinVersion is the minimum TLS version supported. // tlsMinVersion is the minimum TLS version supported.
// Values are from tls package constants (https://golang.org/pkg/crypto/tls/#pkg-constants). // Values are from tls package constants (https://golang.org/pkg/crypto/tls/#pkg-constants).
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may disrupt components that interact with the Kubelet server. // it may disrupt components that interact with the Kubelet server.
// Default: "" // Default: ""
// +optional // +optional
@ -195,7 +209,8 @@ type KubeletConfiguration struct {
// rotateCertificates enables client certificate rotation. The Kubelet will request a // rotateCertificates enables client certificate rotation. The Kubelet will request a
// new certificate from the certificates.k8s.io API. This requires an approver to approve the // new certificate from the certificates.k8s.io API. This requires an approver to approve the
// certificate signing requests. // certificate signing requests.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// disabling it may disrupt the Kubelet's ability to authenticate with the API server // disabling it may disrupt the Kubelet's ability to authenticate with the API server
// after the current certificate expires. // after the current certificate expires.
// Default: false // Default: false
@ -206,15 +221,17 @@ type KubeletConfiguration struct {
// the 'certificates.k8s.io' API. This requires an approver to approve the // the 'certificates.k8s.io' API. This requires an approver to approve the
// certificate signing requests (CSR). The RotateKubeletServerCertificate feature // certificate signing requests (CSR). The RotateKubeletServerCertificate feature
// must be enabled when setting this field. // must be enabled when setting this field.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// disabling it will stop the renewal of Kubelet server certificates, which can // disabling it will stop the renewal of Kubelet server certificates, which can
// disrupt components that interact with the Kubelet server in the long term, // disrupt components that interact with the Kubelet server in the long term,
// due to certificate expiration. // due to certificate expiration.
// Default: false // Default: false
// +optional // +optional
ServerTLSBootstrap bool `json:"serverTLSBootstrap,omitempty"` ServerTLSBootstrap bool `json:"serverTLSBootstrap,omitempty"`
// authentication specifies how requests to the Kubelet's server are authenticated // authentication specifies how requests to the Kubelet's server are authenticated.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may disrupt components that interact with the Kubelet server. // it may disrupt components that interact with the Kubelet server.
// Defaults: // Defaults:
// anonymous: // anonymous:
@ -224,8 +241,9 @@ type KubeletConfiguration struct {
// cacheTTL: "2m" // cacheTTL: "2m"
// +optional // +optional
Authentication KubeletAuthentication `json:"authentication"` Authentication KubeletAuthentication `json:"authentication"`
// authorization specifies how requests to the Kubelet's server are authorized // authorization specifies how requests to the Kubelet's server are authorized.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may disrupt components that interact with the Kubelet server. // it may disrupt components that interact with the Kubelet server.
// Defaults: // Defaults:
// mode: Webhook // mode: Webhook
@ -237,7 +255,8 @@ type KubeletConfiguration struct {
// registryPullQPS is the limit of registry pulls per second. // registryPullQPS is the limit of registry pulls per second.
// The value must not be a negative number. // The value must not be a negative number.
// Setting it to 0 means no limit. // Setting it to 0 means no limit.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may impact scalability by changing the amount of traffic produced // it may impact scalability by changing the amount of traffic produced
// by image pulls. // by image pulls.
// Default: 5 // Default: 5
@ -247,7 +266,8 @@ type KubeletConfiguration struct {
// pulls to burst to this number, while still not exceeding registryPullQPS. // pulls to burst to this number, while still not exceeding registryPullQPS.
// The value must not be a negative number. // The value must not be a negative number.
// Only used if registryPullQPS is greater than 0. // Only used if registryPullQPS is greater than 0.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may impact scalability by changing the amount of traffic produced // it may impact scalability by changing the amount of traffic produced
// by image pulls. // by image pulls.
// Default: 10 // Default: 10
@ -255,7 +275,8 @@ type KubeletConfiguration struct {
RegistryBurst int32 `json:"registryBurst,omitempty"` RegistryBurst int32 `json:"registryBurst,omitempty"`
// eventRecordQPS is the maximum event creations per second. If 0, there // eventRecordQPS is the maximum event creations per second. If 0, there
// is no limit enforced. The value cannot be a negative number. // is no limit enforced. The value cannot be a negative number.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may impact scalability by changing the amount of traffic produced by // it may impact scalability by changing the amount of traffic produced by
// event creations. // event creations.
// Default: 5 // Default: 5
@ -265,7 +286,8 @@ type KubeletConfiguration struct {
// allows event creations to burst to this number, while still not exceeding // allows event creations to burst to this number, while still not exceeding
// eventRecordQPS. This field canot be a negative number and it is only used // eventRecordQPS. This field canot be a negative number and it is only used
// when eventRecordQPS > 0. // when eventRecordQPS > 0.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may impact scalability by changing the amount of traffic produced by // it may impact scalability by changing the amount of traffic produced by
// event creations. // event creations.
// Default: 10 // Default: 10
@ -274,33 +296,38 @@ type KubeletConfiguration struct {
// enableDebuggingHandlers enables server endpoints for log access // enableDebuggingHandlers enables server endpoints for log access
// and local running of containers and commands, including the exec, // and local running of containers and commands, including the exec,
// attach, logs, and portforward features. // attach, logs, and portforward features.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// disabling it may disrupt components that interact with the Kubelet server. // disabling it may disrupt components that interact with the Kubelet server.
// Default: true // Default: true
// +optional // +optional
EnableDebuggingHandlers *bool `json:"enableDebuggingHandlers,omitempty"` EnableDebuggingHandlers *bool `json:"enableDebuggingHandlers,omitempty"`
// enableContentionProfiling enables lock contention profiling, if enableDebuggingHandlers is true. // enableContentionProfiling enables lock contention profiling, if enableDebuggingHandlers is true.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// enabling it may carry a performance impact. // enabling it may carry a performance impact.
// Default: false // Default: false
// +optional // +optional
EnableContentionProfiling bool `json:"enableContentionProfiling,omitempty"` EnableContentionProfiling bool `json:"enableContentionProfiling,omitempty"`
// healthzPort is the port of the localhost healthz endpoint (set to 0 to disable) // healthzPort is the port of the localhost healthz endpoint (set to 0 to disable).
// A valid number is between 1 and 65535. // A valid number is between 1 and 65535.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may disrupt components that monitor Kubelet health. // it may disrupt components that monitor Kubelet health.
// Default: 10248 // Default: 10248
// +optional // +optional
HealthzPort *int32 `json:"healthzPort,omitempty"` HealthzPort *int32 `json:"healthzPort,omitempty"`
// healthzBindAddress is the IP address for the healthz server to serve on // healthzBindAddress is the IP address for the healthz server to serve on.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may disrupt components that monitor Kubelet health. // it may disrupt components that monitor Kubelet health.
// Default: "127.0.0.1" // Default: "127.0.0.1"
// +optional // +optional
HealthzBindAddress string `json:"healthzBindAddress,omitempty"` HealthzBindAddress string `json:"healthzBindAddress,omitempty"`
// oomScoreAdj is The oom-score-adj value for kubelet process. Values // oomScoreAdj is The oom-score-adj value for kubelet process. Values
// must be within the range [-1000, 1000]. // must be within the range [-1000, 1000].
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may impact the stability of nodes under memory pressure. // it may impact the stability of nodes under memory pressure.
// Default: -999 // Default: -999
// +optional // +optional
@ -316,7 +343,8 @@ type KubeletConfiguration struct {
// clusterDNS is a list of IP addresses for the cluster DNS server. If set, // clusterDNS is a list of IP addresses for the cluster DNS server. If set,
// kubelet will configure all containers to use this for DNS resolution // kubelet will configure all containers to use this for DNS resolution
// instead of the host's DNS servers. // instead of the host's DNS servers.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// changes will only take effect on Pods created after the update. Draining // changes will only take effect on Pods created after the update. Draining
// the node is recommended before changing this field. // the node is recommended before changing this field.
// Default: nil // Default: nil
@ -324,7 +352,8 @@ type KubeletConfiguration struct {
ClusterDNS []string `json:"clusterDNS,omitempty"` ClusterDNS []string `json:"clusterDNS,omitempty"`
// streamingConnectionIdleTimeout is the maximum time a streaming connection // streamingConnectionIdleTimeout is the maximum time a streaming connection
// can be idle before the connection is automatically closed. // can be idle before the connection is automatically closed.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may impact components that rely on infrequent updates over streaming // it may impact components that rely on infrequent updates over streaming
// connections to the Kubelet server. // connections to the Kubelet server.
// Default: "4h" // Default: "4h"
@ -335,7 +364,8 @@ type KubeletConfiguration struct {
// kubelet posts node status to master. // kubelet posts node status to master.
// Note: When node lease feature is not enabled, be cautious when changing the // Note: When node lease feature is not enabled, be cautious when changing the
// constant, it must work with nodeMonitorGracePeriod in nodecontroller. // constant, it must work with nodeMonitorGracePeriod in nodecontroller.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may impact node scalability, and also that the node controller's // it may impact node scalability, and also that the node controller's
// nodeMonitorGracePeriod must be set to N*NodeStatusUpdateFrequency, // nodeMonitorGracePeriod must be set to N*NodeStatusUpdateFrequency,
// where N is the number of retries before the node controller marks // where N is the number of retries before the node controller marks
@ -361,7 +391,8 @@ type KubeletConfiguration struct {
// may be set based on the lease duration. // may be set based on the lease duration.
// The field value must be greater than 0. // The field value must be greater than 0.
// Requires the NodeLease feature gate to be enabled. // Requires the NodeLease feature gate to be enabled.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// decreasing the duration may reduce tolerance for issues that temporarily prevent // decreasing the duration may reduce tolerance for issues that temporarily prevent
// the Kubelet from renewing the lease (e.g. a short-lived network issue). // the Kubelet from renewing the lease (e.g. a short-lived network issue).
// Default: 40 // Default: 40
@ -369,7 +400,8 @@ type KubeletConfiguration struct {
NodeLeaseDurationSeconds int32 `json:"nodeLeaseDurationSeconds,omitempty"` NodeLeaseDurationSeconds int32 `json:"nodeLeaseDurationSeconds,omitempty"`
// imageMinimumGCAge is the minimum age for an unused image before it is // imageMinimumGCAge is the minimum age for an unused image before it is
// garbage collected. // garbage collected.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may trigger or delay garbage collection, and may change the image overhead // it may trigger or delay garbage collection, and may change the image overhead
// on the node. // on the node.
// Default: "2m" // Default: "2m"
@ -380,7 +412,8 @@ type KubeletConfiguration struct {
// dividing this field value by 100, so this field must be between 0 and // dividing this field value by 100, so this field must be between 0 and
// 100, inclusive. When specified, the value must be greater than // 100, inclusive. When specified, the value must be greater than
// imageGCLowThresholdPercent. // imageGCLowThresholdPercent.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may trigger or delay garbage collection, and may change the image overhead // it may trigger or delay garbage collection, and may change the image overhead
// on the node. // on the node.
// Default: 85 // Default: 85
@ -391,7 +424,8 @@ type KubeletConfiguration struct {
// collect to. The percent is calculated by dividing this field value by 100, // collect to. The percent is calculated by dividing this field value by 100,
// so the field value must be between 0 and 100, inclusive. When specified, the // so the field value must be between 0 and 100, inclusive. When specified, the
// value must be less than imageGCHighThresholdPercent. // value must be less than imageGCHighThresholdPercent.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may trigger or delay garbage collection, and may change the image overhead // it may trigger or delay garbage collection, and may change the image overhead
// on the node. // on the node.
// Default: 80 // Default: 80
@ -399,7 +433,8 @@ type KubeletConfiguration struct {
ImageGCLowThresholdPercent *int32 `json:"imageGCLowThresholdPercent,omitempty"` ImageGCLowThresholdPercent *int32 `json:"imageGCLowThresholdPercent,omitempty"`
// volumeStatsAggPeriod is the frequency for calculating and caching volume // volumeStatsAggPeriod is the frequency for calculating and caching volume
// disk usage for all pods. // disk usage for all pods.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// shortening the period may carry a performance impact. // shortening the period may carry a performance impact.
// Default: "1m" // Default: "1m"
// +optional // +optional
@ -458,7 +493,8 @@ type KubeletConfiguration struct {
CPUManagerPolicyOptions map[string]string `json:"cpuManagerPolicyOptions,omitempty"` CPUManagerPolicyOptions map[string]string `json:"cpuManagerPolicyOptions,omitempty"`
// cpuManagerReconcilePeriod is the reconciliation period for the CPU Manager. // cpuManagerReconcilePeriod is the reconciliation period for the CPU Manager.
// Requires the CPUManager feature gate to be enabled. // Requires the CPUManager feature gate to be enabled.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// shortening the period may carry a performance impact. // shortening the period may carry a performance impact.
// Default: "10s" // Default: "10s"
// +optional // +optional
@ -509,7 +545,8 @@ type KubeletConfiguration struct {
QOSReserved map[string]string `json:"qosReserved,omitempty"` QOSReserved map[string]string `json:"qosReserved,omitempty"`
// runtimeRequestTimeout is the timeout for all runtime requests except long running // runtimeRequestTimeout is the timeout for all runtime requests except long running
// requests - pull, logs, exec and attach. // requests - pull, logs, exec and attach.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may disrupt components that interact with the Kubelet server. // it may disrupt components that interact with the Kubelet server.
// Default: "2m" // Default: "2m"
// +optional // +optional
@ -525,14 +562,16 @@ type KubeletConfiguration struct {
// //
// Generally, one must set `--hairpin-mode=hairpin-veth to` achieve hairpin NAT, // Generally, one must set `--hairpin-mode=hairpin-veth to` achieve hairpin NAT,
// because promiscuous-bridge assumes the existence of a container bridge named cbr0. // because promiscuous-bridge assumes the existence of a container bridge named cbr0.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may require a node reboot, depending on the network plugin. // it may require a node reboot, depending on the network plugin.
// Default: "promiscuous-bridge" // Default: "promiscuous-bridge"
// +optional // +optional
HairpinMode string `json:"hairpinMode,omitempty"` HairpinMode string `json:"hairpinMode,omitempty"`
// maxPods is the maximum number of Pods that can run on this Kubelet. // maxPods is the maximum number of Pods that can run on this Kubelet.
// The value must be a non-negative integer. // The value must be a non-negative integer.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// changes may cause Pods to fail admission on Kubelet restart, and may change // changes may cause Pods to fail admission on Kubelet restart, and may change
// the value reported in Node.Status.Capacity[v1.ResourcePods], thus affecting // the value reported in Node.Status.Capacity[v1.ResourcePods], thus affecting
// future scheduling decisions. Increasing this value may also decrease performance, // future scheduling decisions. Increasing this value may also decrease performance,
@ -548,14 +587,16 @@ type KubeletConfiguration struct {
// +optional // +optional
PodCIDR string `json:"podCIDR,omitempty"` PodCIDR string `json:"podCIDR,omitempty"`
// podPidsLimit is the maximum number of PIDs in any pod. // podPidsLimit is the maximum number of PIDs in any pod.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// lowering it may prevent container processes from forking after the change. // lowering it may prevent container processes from forking after the change.
// Default: -1 // Default: -1
// +optional // +optional
PodPidsLimit *int64 `json:"podPidsLimit,omitempty"` PodPidsLimit *int64 `json:"podPidsLimit,omitempty"`
// resolvConf is the resolver configuration file used as the basis // resolvConf is the resolver configuration file used as the basis
// for the container DNS resolution configuration. // for the container DNS resolution configuration.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// changes will only take effect on Pods created after the update. Draining // changes will only take effect on Pods created after the update. Draining
// the node is recommended before changing this field. // the node is recommended before changing this field.
// Default: "/etc/resolv.conf" // Default: "/etc/resolv.conf"
@ -568,7 +609,8 @@ type KubeletConfiguration struct {
RunOnce bool `json:"runOnce,omitempty"` RunOnce bool `json:"runOnce,omitempty"`
// cpuCFSQuota enables CPU CFS quota enforcement for containers that // cpuCFSQuota enables CPU CFS quota enforcement for containers that
// specify CPU limits. // specify CPU limits.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// disabling it may reduce node stability. // disabling it may reduce node stability.
// Default: true // Default: true
// +optional // +optional
@ -576,7 +618,8 @@ type KubeletConfiguration struct {
// cpuCFSQuotaPeriod is the CPU CFS quota period value, `cpu.cfs_period_us`. // cpuCFSQuotaPeriod is the CPU CFS quota period value, `cpu.cfs_period_us`.
// The value must be between 1 us and 1 second, inclusive. // The value must be between 1 us and 1 second, inclusive.
// Requires the CustomCPUCFSQuotaPeriod feature gate to be enabled. // Requires the CustomCPUCFSQuotaPeriod feature gate to be enabled.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// limits set for containers will result in different cpu.cfs_quota settings. This // limits set for containers will result in different cpu.cfs_quota settings. This
// will trigger container restarts on the node being reconfigured. // will trigger container restarts on the node being reconfigured.
// Default: "100ms" // Default: "100ms"
@ -585,28 +628,32 @@ type KubeletConfiguration struct {
// nodeStatusMaxImages caps the number of images reported in Node.status.images. // nodeStatusMaxImages caps the number of images reported in Node.status.images.
// The value must be greater than -2. // The value must be greater than -2.
// Note: If -1 is specified, no cap will be applied. If 0 is specified, no image is returned. // Note: If -1 is specified, no cap will be applied. If 0 is specified, no image is returned.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// different values can be reported on node status. // different values can be reported on node status.
// Default: 50 // Default: 50
// +optional // +optional
NodeStatusMaxImages *int32 `json:"nodeStatusMaxImages,omitempty"` NodeStatusMaxImages *int32 `json:"nodeStatusMaxImages,omitempty"`
// maxOpenFiles is Number of files that can be opened by Kubelet process. // maxOpenFiles is Number of files that can be opened by Kubelet process.
// The value must be a non-negative number. // The value must be a non-negative number.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may impact the ability of the Kubelet to interact with the node's filesystem. // it may impact the ability of the Kubelet to interact with the node's filesystem.
// Default: 1000000 // Default: 1000000
// +optional // +optional
MaxOpenFiles int64 `json:"maxOpenFiles,omitempty"` MaxOpenFiles int64 `json:"maxOpenFiles,omitempty"`
// contentType is contentType of requests sent to apiserver. // contentType is contentType of requests sent to apiserver.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may impact the ability for the Kubelet to communicate with the API server. // it may impact the ability for the Kubelet to communicate with the API server.
// If the Kubelet loses contact with the API server due to a change to this field, // If the Kubelet loses contact with the API server due to a change to this field,
// the change cannot be reverted via dynamic Kubelet config. // the change cannot be reverted via dynamic Kubelet config.
// Default: "application/vnd.kubernetes.protobuf" // Default: "application/vnd.kubernetes.protobuf"
// +optional // +optional
ContentType string `json:"contentType,omitempty"` ContentType string `json:"contentType,omitempty"`
// kubeAPIQPS is the QPS to use while talking with kubernetes apiserver // kubeAPIQPS is the QPS to use while talking with kubernetes apiserver.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may impact scalability by changing the amount of traffic the Kubelet // it may impact scalability by changing the amount of traffic the Kubelet
// sends to the API server. // sends to the API server.
// Default: 5 // Default: 5
@ -614,7 +661,8 @@ type KubeletConfiguration struct {
KubeAPIQPS *int32 `json:"kubeAPIQPS,omitempty"` KubeAPIQPS *int32 `json:"kubeAPIQPS,omitempty"`
// kubeAPIBurst is the burst to allow while talking with kubernetes API server. // kubeAPIBurst is the burst to allow while talking with kubernetes API server.
// This field cannot be a negative number. // This field cannot be a negative number.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may impact scalability by changing the amount of traffic the Kubelet // it may impact scalability by changing the amount of traffic the Kubelet
// sends to the API server. // sends to the API server.
// Default: 10 // Default: 10
@ -624,7 +672,8 @@ type KubeletConfiguration struct {
// at a time. We recommend *not* changing the default value on nodes that // at a time. We recommend *not* changing the default value on nodes that
// run docker daemon with version < 1.9 or an Aufs storage backend. // run docker daemon with version < 1.9 or an Aufs storage backend.
// Issue #10959 has more details. // Issue #10959 has more details.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may impact the performance of image pulls. // it may impact the performance of image pulls.
// Default: true // Default: true
// +optional // +optional
@ -632,7 +681,8 @@ type KubeletConfiguration struct {
// evictionHard is a map of signal names to quantities that defines hard eviction // evictionHard is a map of signal names to quantities that defines hard eviction
// thresholds. For example: `{"memory.available": "300Mi"}`. // thresholds. For example: `{"memory.available": "300Mi"}`.
// To explicitly disable, pass a 0% or 100% threshold on an arbitrary resource. // To explicitly disable, pass a 0% or 100% threshold on an arbitrary resource.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may trigger or delay Pod evictions. // it may trigger or delay Pod evictions.
// Default: // Default:
// memory.available: "100Mi" // memory.available: "100Mi"
@ -643,7 +693,8 @@ type KubeletConfiguration struct {
EvictionHard map[string]string `json:"evictionHard,omitempty"` EvictionHard map[string]string `json:"evictionHard,omitempty"`
// evictionSoft is a map of signal names to quantities that defines soft eviction thresholds. // evictionSoft is a map of signal names to quantities that defines soft eviction thresholds.
// For example: `{"memory.available": "300Mi"}`. // For example: `{"memory.available": "300Mi"}`.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may trigger or delay Pod evictions, and may change the allocatable reported // it may trigger or delay Pod evictions, and may change the allocatable reported
// by the node. // by the node.
// Default: nil // Default: nil
@ -651,14 +702,16 @@ type KubeletConfiguration struct {
EvictionSoft map[string]string `json:"evictionSoft,omitempty"` EvictionSoft map[string]string `json:"evictionSoft,omitempty"`
// evictionSoftGracePeriod is a map of signal names to quantities that defines grace // evictionSoftGracePeriod is a map of signal names to quantities that defines grace
// periods for each soft eviction signal. For example: `{"memory.available": "30s"}`. // periods for each soft eviction signal. For example: `{"memory.available": "30s"}`.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may trigger or delay Pod evictions. // it may trigger or delay Pod evictions.
// Default: nil // Default: nil
// +optional // +optional
EvictionSoftGracePeriod map[string]string `json:"evictionSoftGracePeriod,omitempty"` EvictionSoftGracePeriod map[string]string `json:"evictionSoftGracePeriod,omitempty"`
// evictionPressureTransitionPeriod is the duration for which the kubelet has to wait // evictionPressureTransitionPeriod is the duration for which the kubelet has to wait
// before transitioning out of an eviction pressure condition. // before transitioning out of an eviction pressure condition.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// lowering it may decrease the stability of the node when the node is overcommitted. // lowering it may decrease the stability of the node when the node is overcommitted.
// Default: "5m" // Default: "5m"
// +optional // +optional
@ -669,7 +722,8 @@ type KubeletConfiguration struct {
// Note: Due to issue #64530, the behavior has a bug where this value currently just // Note: Due to issue #64530, the behavior has a bug where this value currently just
// overrides the grace period during soft eviction, which can increase the grace // overrides the grace period during soft eviction, which can increase the grace
// period from what is set on the Pod. This bug will be fixed in a future release. // period from what is set on the Pod. This bug will be fixed in a future release.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// lowering it decreases the amount of time Pods will have to gracefully clean // lowering it decreases the amount of time Pods will have to gracefully clean
// up before being killed during a soft eviction. // up before being killed during a soft eviction.
// Default: 0 // Default: 0
@ -679,7 +733,8 @@ type KubeletConfiguration struct {
// which describe the minimum amount of a given resource the kubelet will reclaim when // which describe the minimum amount of a given resource the kubelet will reclaim when
// performing a pod eviction while that resource is under pressure. // performing a pod eviction while that resource is under pressure.
// For example: `{"imagefs.available": "2Gi"}`. // For example: `{"imagefs.available": "2Gi"}`.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may change how well eviction can manage resource pressure. // it may change how well eviction can manage resource pressure.
// Default: nil // Default: nil
// +optional // +optional
@ -687,7 +742,8 @@ type KubeletConfiguration struct {
// podsPerCore is the maximum number of pods per core. Cannot exceed maxPods. // podsPerCore is the maximum number of pods per core. Cannot exceed maxPods.
// The value must be a non-negative integer. // The value must be a non-negative integer.
// If 0, there is no limit on the number of Pods. // If 0, there is no limit on the number of Pods.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// changes may cause Pods to fail admission on Kubelet restart, and may change // changes may cause Pods to fail admission on Kubelet restart, and may change
// the value reported in `Node.status.capacity.pods`, thus affecting // the value reported in `Node.status.capacity.pods`, thus affecting
// future scheduling decisions. Increasing this value may also decrease performance, // future scheduling decisions. Increasing this value may also decrease performance,
@ -697,8 +753,9 @@ type KubeletConfiguration struct {
PodsPerCore int32 `json:"podsPerCore,omitempty"` PodsPerCore int32 `json:"podsPerCore,omitempty"`
// enableControllerAttachDetach enables the Attach/Detach controller to // enableControllerAttachDetach enables the Attach/Detach controller to
// manage attachment/detachment of volumes scheduled to this node, and // manage attachment/detachment of volumes scheduled to this node, and
// disables kubelet from executing any attach/detach operations // disables kubelet from executing any attach/detach operations.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// changing which component is responsible for volume management on a live node // changing which component is responsible for volume management on a live node
// may result in volumes refusing to detach if the node is not drained prior to // may result in volumes refusing to detach if the node is not drained prior to
// the update, and if Pods are scheduled to the node before the // the update, and if Pods are scheduled to the node before the
@ -710,7 +767,8 @@ type KubeletConfiguration struct {
// protectKernelDefaults, if true, causes the Kubelet to error if kernel // protectKernelDefaults, if true, causes the Kubelet to error if kernel
// flags are not as it expects. Otherwise the Kubelet will attempt to modify // flags are not as it expects. Otherwise the Kubelet will attempt to modify
// kernel flags to match its expectation. // kernel flags to match its expectation.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// enabling it may cause the Kubelet to crash-loop if the Kernel is not configured as // enabling it may cause the Kubelet to crash-loop if the Kernel is not configured as
// Kubelet expects. // Kubelet expects.
// Default: false // Default: false
@ -720,7 +778,8 @@ type KubeletConfiguration struct {
// are present on host. // are present on host.
// These rules will serve as utility rules for various components, e.g. kube-proxy. // These rules will serve as utility rules for various components, e.g. kube-proxy.
// The rules will be created based on iptablesMasqueradeBit and iptablesDropBit. // The rules will be created based on iptablesMasqueradeBit and iptablesDropBit.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// disabling it will prevent the Kubelet from healing locally misconfigured iptables rules. // disabling it will prevent the Kubelet from healing locally misconfigured iptables rules.
// Default: true // Default: true
// +optional // +optional
@ -728,8 +787,9 @@ type KubeletConfiguration struct {
// iptablesMasqueradeBit is the bit of the iptables fwmark space to mark for SNAT. // iptablesMasqueradeBit is the bit of the iptables fwmark space to mark for SNAT.
// Values must be within the range [0, 31]. Must be different from other mark bits. // Values must be within the range [0, 31]. Must be different from other mark bits.
// Warning: Please match the value of the corresponding parameter in kube-proxy. // Warning: Please match the value of the corresponding parameter in kube-proxy.
// TODO: clean up IPTablesMasqueradeBit in kube-proxy // TODO: clean up IPTablesMasqueradeBit in kube-proxy.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it needs to be coordinated with other components, like kube-proxy, and the update // it needs to be coordinated with other components, like kube-proxy, and the update
// will only be effective if MakeIPTablesUtilChains is enabled. // will only be effective if MakeIPTablesUtilChains is enabled.
// Default: 14 // Default: 14
@ -737,7 +797,8 @@ type KubeletConfiguration struct {
IPTablesMasqueradeBit *int32 `json:"iptablesMasqueradeBit,omitempty"` IPTablesMasqueradeBit *int32 `json:"iptablesMasqueradeBit,omitempty"`
// iptablesDropBit is the bit of the iptables fwmark space to mark for dropping packets. // iptablesDropBit is the bit of the iptables fwmark space to mark for dropping packets.
// Values must be within the range [0, 31]. Must be different from other mark bits. // Values must be within the range [0, 31]. Must be different from other mark bits.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it needs to be coordinated with other components, like kube-proxy, and the update // it needs to be coordinated with other components, like kube-proxy, and the update
// will only be effective if MakeIPTablesUtilChains is enabled. // will only be effective if MakeIPTablesUtilChains is enabled.
// Default: 15 // Default: 15
@ -746,7 +807,8 @@ type KubeletConfiguration struct {
// featureGates is a map of feature names to bools that enable or disable experimental // featureGates is a map of feature names to bools that enable or disable experimental
// features. This field modifies piecemeal the built-in default values from // features. This field modifies piecemeal the built-in default values from
// "k8s.io/kubernetes/pkg/features/kube_features.go". // "k8s.io/kubernetes/pkg/features/kube_features.go".
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider the // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider the
// documentation for the features you are enabling or disabling. While we // documentation for the features you are enabling or disabling. While we
// encourage feature developers to make it possible to dynamically enable // encourage feature developers to make it possible to dynamically enable
// and disable features, some changes may require node reboots, and some // and disable features, some changes may require node reboots, and some
@ -755,7 +817,8 @@ type KubeletConfiguration struct {
// +optional // +optional
FeatureGates map[string]bool `json:"featureGates,omitempty"` FeatureGates map[string]bool `json:"featureGates,omitempty"`
// failSwapOn tells the Kubelet to fail to start if swap is enabled on the node. // failSwapOn tells the Kubelet to fail to start if swap is enabled on the node.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// setting it to true will cause the Kubelet to crash-loop if swap is enabled. // setting it to true will cause the Kubelet to crash-loop if swap is enabled.
// Default: true // Default: true
// +optional // +optional
@ -766,14 +829,16 @@ type KubeletConfiguration struct {
MemorySwap MemorySwapConfiguration `json:"memorySwap,omitempty"` MemorySwap MemorySwapConfiguration `json:"memorySwap,omitempty"`
// containerLogMaxSize is a quantity defining the maximum size of the container log // containerLogMaxSize is a quantity defining the maximum size of the container log
// file before it is rotated. For example: "5Mi" or "256Ki". // file before it is rotated. For example: "5Mi" or "256Ki".
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may trigger log rotation. // it may trigger log rotation.
// Default: "10Mi" // Default: "10Mi"
// +optional // +optional
ContainerLogMaxSize string `json:"containerLogMaxSize,omitempty"` ContainerLogMaxSize string `json:"containerLogMaxSize,omitempty"`
// containerLogMaxFiles specifies the maximum number of container log files that can // containerLogMaxFiles specifies the maximum number of container log files that can
// be present for a container. // be present for a container.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// lowering it may cause log files to be deleted. // lowering it may cause log files to be deleted.
// Default: 5 // Default: 5
// +optional // +optional
@ -795,7 +860,8 @@ type KubeletConfiguration struct {
// pairs that describe resources reserved for non-kubernetes components. // pairs that describe resources reserved for non-kubernetes components.
// Currently only cpu and memory are supported. // Currently only cpu and memory are supported.
// See http://kubernetes.io/docs/user-guide/compute-resources for more detail. // See http://kubernetes.io/docs/user-guide/compute-resources for more detail.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may not be possible to increase the reserved resources, because this // it may not be possible to increase the reserved resources, because this
// requires resizing cgroups. Always look for a NodeAllocatableEnforced event // requires resizing cgroups. Always look for a NodeAllocatableEnforced event
// after updating this field to ensure that the update was successful. // after updating this field to ensure that the update was successful.
@ -807,7 +873,8 @@ type KubeletConfiguration struct {
// Currently cpu, memory and local storage for root file system are supported. // Currently cpu, memory and local storage for root file system are supported.
// See https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ // See https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
// for more details. // for more details.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may not be possible to increase the reserved resources, because this // it may not be possible to increase the reserved resources, because this
// requires resizing cgroups. Always look for a NodeAllocatableEnforced event // requires resizing cgroups. Always look for a NodeAllocatableEnforced event
// after updating this field to ensure that the update was successful. // after updating this field to ensure that the update was successful.
@ -856,7 +923,8 @@ type KubeletConfiguration struct {
// This field is supported only when `cgroupsPerQOS` is set to true. // This field is supported only when `cgroupsPerQOS` is set to true.
// Refer to [Node Allocatable](https://git.k8s.io/community/contributors/design-proposals/node/node-allocatable.md) // Refer to [Node Allocatable](https://git.k8s.io/community/contributors/design-proposals/node/node-allocatable.md)
// for more information. // for more information.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// removing enforcements may reduce the stability of the node. Alternatively, adding // removing enforcements may reduce the stability of the node. Alternatively, adding
// enforcements may reduce the stability of components which were using more than // enforcements may reduce the stability of components which were using more than
// the reserved amount of resources; for example, enforcing kube-reserved may cause // the reserved amount of resources; for example, enforcing kube-reserved may cause
@ -873,14 +941,16 @@ type KubeletConfiguration struct {
AllowedUnsafeSysctls []string `json:"allowedUnsafeSysctls,omitempty"` AllowedUnsafeSysctls []string `json:"allowedUnsafeSysctls,omitempty"`
// volumePluginDir is the full path of the directory in which to search // volumePluginDir is the full path of the directory in which to search
// for additional third party volume plugins. // for additional third party volume plugins.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that changing // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that changing
// the volumePluginDir may disrupt workloads relying on third party volume plugins. // the volumePluginDir may disrupt workloads relying on third party volume plugins.
// Default: "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/" // Default: "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/"
// +optional // +optional
VolumePluginDir string `json:"volumePluginDir,omitempty"` VolumePluginDir string `json:"volumePluginDir,omitempty"`
// providerID, if set, sets the unique ID of the instance that an external // providerID, if set, sets the unique ID of the instance that an external
// provider (i.e. cloudprovider) can use to identify a specific node. // provider (i.e. cloudprovider) can use to identify a specific node.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may impact the ability of the Kubelet to interact with cloud providers. // it may impact the ability of the Kubelet to interact with cloud providers.
// Default: "" // Default: ""
// +optional // +optional
@ -888,7 +958,8 @@ type KubeletConfiguration struct {
// kernelMemcgNotification, if set, instructs the the kubelet to integrate with the // kernelMemcgNotification, if set, instructs the the kubelet to integrate with the
// kernel memcg notification for determining if memory eviction thresholds are // kernel memcg notification for determining if memory eviction thresholds are
// exceeded rather than polling. // exceeded rather than polling.
// Dynamic Kubelet Config (deprecated): If dynamically updating this field, consider that // If DynamicKubeletConfig (deprecated; default off) is on, when
// dynamically updating this field, consider that
// it may impact the way Kubelet interacts with the kernel. // it may impact the way Kubelet interacts with the kernel.
// Default: false // Default: false
// +optional // +optional