website/content/zh/docs/reference/config-api/kubelet-config.v1beta1.md

123 KiB
Raw Blame History

title content_type package auto_generated
Kubelet 配置 (v1beta1) tool-reference kubelet.config.k8s.io/v1beta1 true

资源类型

KubeletConfiguration

KubeletConfiguration 中包含 Kubelet 的配置。

字段描述
apiVersion
string
kubelet.config.k8s.io/v1beta1
kind
string
KubeletConfiguration
enableServer [必需]
bool

enableServer 会启用 kubelet 的安全服务器。

注意kubelet 的不安全端口由 readOnlyPort 选项控制。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能会影响到与 kubelet 服务器交互的组件。

默认值:true

staticPodPath
string

staticPodPath 是指向要运行的本地静态Pod 的目录, 或者指向某个静态 Pod 文件的路径。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑新路径下所给的静态 Pod 集合可能与 kubelet 启动时所看到的集合不同,而这一差别可能会扰乱节点状态。

默认值:""

syncFrequency
meta/v1.Duration

syncFrequency 是对运行中的容器和配置进行同步的最长周期。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑缩短这一同步周期可能会带来负面的性能影响, 尤其当节点上 Pod 个数增加时。相反,增加此周期长度时可能会导致 ConfigMap、 Secret 这类资源未被及时更新。

默认值:"1m"

fileCheckFrequency
meta/v1.Duration

fileCheckFrequency 是对配置文件中新数据进行检查的时间间隔值。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑缩短此时长会导致 kubelet 更为频繁地重新加载其静态 Pod 配置, 而这会带来负面的性能影响。

默认值:"20s"

httpCheckFrequency
meta/v1.Duration

httpCheckFrequency 是对 HTTP 服务器上新数据进行检查的时间间隔值。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑缩短此时长会导致 kubelet 更为频繁地轮询 staticPodURL,而这会带来负面的性能影响。

默认值:"20s"

staticPodURL
string

staticPodURL 是访问要运行的静态 Pod 的 URL 地址。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,新的 URL 上包含的静态 Pod 集合可能与 kubelet 初始启动时看到的不同,而这种差异可能会扰乱节点状态。

默认值:""

staticPodURLHeader
map[string][]string

staticPodURLHeader是一个由字符串组成的映射表,其中包含的 HTTP 头部信息用于访问podURL

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,要考虑可能导致无法从staticPodURL 读取最新的静态 Pod 集合。

默认值nil

address
string

address 是 kubelet 提供服务所用的 IP 地址(设置为 0.0.0.0 使用所有网络接口提供服务)。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能干扰与 kubelet 服务器交互的组件。

默认值:"0.0.0.0"

port
int32

port 是 kubelet 用来提供服务所使用的端口号。 这一端口号必须介于 1 到 65535 之间,包含 1 和 65535。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能干扰与 kubelet 服务器交互的组件。

默认值10250

readOnlyPort
int32

readOnlyPort 是 kubelet 用来提供服务所使用的只读端口号。 此端口上的服务不支持身份认证或鉴权。这一端口号必须介于 1 到 65535 之间, 包含 1 和 65535。将此字段设置为 0 会禁用只读服务。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能干扰与 kubelet 服务器交互的组件。

默认值0禁用

tlsCertFile
string

tlsCertFile是包含 HTTPS 所需要的 x509 证书的文件 (如果有 CA 证书,会串接到服务器证书之后)。如果tlsCertFiletlsPrivateKeyFile都没有设置,则系统会为节点的公开地址生成自签名的证书和私钥, 并将其保存到 kubelet --cert-dir参数所指定的目录下。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能干扰与 kubelet 服务器交互的组件。

默认值:""

tlsPrivateKeyFile
string

tlsPrivateKeyFile是一个包含与tlsCertFile 证书匹配的 X509 私钥的文件。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能干扰与 kubelet 服务器交互的组件。

默认值:""

tlsCipherSuites
[]string

tlsCipherSuites是一个字符串列表,其中包含服务器所接受的加密包名称。 列表中的每个值来自于tls包中定义的常数(https://golang.org/pkg/crypto/tls/#pkg-constants

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能干扰到与 kubelet 服务器交互的组件。

默认值nil

tlsMinVersion
string

tlsMinVersion给出所支持的最小 TLS 版本。 字段取值来自于tls包中的常数定义(https://golang.org/pkg/crypto/tls/#pkg-constants

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能干扰到与 kubelet 服务器交互的组件。

默认值:""

rotateCertificates
bool

rotateCertificates用来启用客户端证书轮换。kubelet 会调用 certificates.k8s.io API 来请求新的证书。需要有一个批复人批准证书签名请求。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑禁用此行为时可能导致 kubelet 无法在当前证书过期时向 API 服务器执行身份认证。

默认值false

serverTLSBootstrap
bool

serverTLSBootstrap用来启用服务器证书引导。系统不再使用自签名的服务证书, kubelet 会调用certificates.k8s.io API 来请求证书。 需要有一个批复人来批准证书签名请求CSR。 设置此字段时,RotateKubeletServerCertificate特性必须被启用。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑禁用此特性会导致 kubelet 的服务器证书无法被续约, 长期上这会干扰到与 kubelet 服务器交互的组件,因为证书会过期。

默认值false

authentication
KubeletAuthentication

authorization设置发送给 kubelet 服务器的请求是如何进行身份认证的。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能干扰与 kubelet 服务器交互的组件。

默认值:


  anonymous:
    enabled: false
  webhook:
    enabled: true
    cacheTTL: "2m"
  
authorization
KubeletAuthorization

authorization设置发送给 kubelet 服务器的请求是如何进行鉴权的。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能会干扰到与 kubelet 服务器交互的组件。

默认值:


  mode: Webhook
  webhook:
    cacheAuthorizedTTL: "5m"
    cacheUnauthorizedTTL: "30s"
  
registryPullQPS
int32

registryPullQPS是每秒钟可以执行的镜像仓库拉取操作限值。 此值必须不能为负数。将其设置为 0 表示没有限值。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑这类更新可能会因为镜像拉取所产生的流量变化而导致集群可扩缩能力问题。

默认值5

registryBurst
int32

registryBurst是突发性镜像拉取的上限值,允许镜像拉取临时上升到所指定数量, 不过仍然不超过registryPullQPS所设置的约束。此值必须是非负值。 只有registryPullQPS参数值大于 0 时才会使用此设置。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能因为镜像拉取所造成的流量变化,导致集群可扩缩能力受影响。

默认值10

eventRecordQPS
int32

eventRecordQPS设置每秒钟可创建的事件个数上限。如果此值为 0 则表示没有限制。此值不能设置为负数。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能因为生成事件所造成的流量变化,导致集群可扩缩能力受影响。

默认值5

eventBurst
int32

eventBurst是突发性事件创建的上限值,允许事件创建临时上升到所指定数量, 不过仍然不超过eventRecordQPS所设置的约束。此值必须是非负值, 且只有eventRecordQPS大于 0 时才会使用此设置。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能因为事件创建所造成的流量变化,导致集群可扩缩能力受影响。

默认值10

enableDebuggingHandlers
bool

enableDebuggingHandlers启用服务器上用来访问日志、 在本地运行容器和命令的端点,包括execattachlogsportforward等功能。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑禁用此能力可能干扰到与 kubelet 服务器交互的组件。

默认值true

enableContentionProfiling
bool

enableContentionProfiling用于启用锁竞争性能分析, 仅用于enableDebuggingHandlerstrue的场合。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑启用此分析可能隐含着一定的性能影响。

默认值false

healthzPort
int32

healthzPort是本地主机上提供healthz端点的端口 (设置值为 0 时表示禁止)。合法值介于 1 和 65535 之间。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能干扰到监控 kubelet 健康状况的组件。

默认值10248

healthzBindAddress
string

healthzBindAddresshealthz服务器用来提供服务的 IP 地址。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能影响到监测 kubelet 健康状况的组件。

默认值:"127.0.0.1"

oomScoreAdj
int32

oomScoreAdj 是为 kubelet 进程设置的oom-score-adj值。 所设置的取值要在 [-1000, 1000] 范围之内。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能影响到内存压力较大时节点的稳定性。

默认值:-999

clusterDomain
string

clusterDomain是集群的 DNS 域名。如果设置了此字段kubelet 会配置所有容器,使之在搜索主机的搜索域的同时也搜索这里指定的 DNS 域。

DynamicKubeletConfig (已弃用,默认为关闭): 不建议动态更新此字段,因为这一设置值要与整个集群中的其他组件保持一致。

默认值:""

clusterDNS
[]string

clusterDNS是集群 DNS 服务器的 IP 地址的列表。 如果设置了kubelet 将会配置所有容器使用这里的 IP 地址而不是宿主系统上的 DNS 服务器来完成 DNS 解析。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑变更仅会对更新后创建的 Pod 起作用。建议在更改此字段之前腾空节点。

默认值nil

streamingConnectionIdleTimeout
meta/v1.Duration

streamingConnectionIdleTimeout设置流式连接在被自动关闭之前可以空闲的最长时间。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能影响到依赖于通过与 kubelet 服务器间流式连接来接受非频繁更新事件的组件。

默认值:"4h"

nodeStatusUpdateFrequency
meta/v1.Duration

nodeStatusUpdateFrequency是 kubelet 计算节点状态的频率。 如果未启用节点租约特性,这一字段设置的也是 kubelet 向控制面投递节点状态的频率。

注意:如果节点租约特性未被启用,更改此参数设置时要非常小心, 所设置的参数值必须与节点控制器的nodeMonitorGracePeriod协同。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑变更可能影响节点的可扩缩性。还要注意节点控制器的 nodeMonitorGracePeriod必须设置为NnodeStatusUpdateFrequency 其中N是节点控制器标记节点不健康之前执行重试的次数。

默认值:"10s"

nodeStatusReportFrequency
meta/v1.Duration

nodeStatusReportFrequency是节点状态未发生变化时kubelet 向控制面更新节点状态的频率。如果节点状态发生变化,则 kubelet 会忽略这一频率设置, 立即更新节点状态。

此字段仅当启用了节点租约特性时才被使用。nodeStatusReportFrequency 的默认值是"5m"。不过,如果nodeStatusUpdateFrequency 被显式设置了,则nodeStatusReportFrequency的默认值会等于 nodeStatusUpdateFrequency值,这是为了实现向后兼容。

默认值:"5m"

nodeLeaseDurationSeconds
int32

nodeLeaseDurationSeconds是 kubelet 会在其对应的 Lease 对象上设置的时长值。 NodeLease让 kubelet 来在kube-node-lease名字空间中创建 按节点名称命名的租约并定期执行续约操作,并通过这种机制来了解节点健康状况。

如果租约过期,则节点可被视作不健康。根据 KEP-0009 约定,目前的租约每 10 秒钟续约一次。 在将来,租约的续约时间间隔可能会根据租约的时长来设置。

此字段的取值必须大于零。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑缩短租约期限可能降低节点对那些暂时导致 kubelet 无法续约的问题的容忍度(例如,时延很短的网络问题)。

默认值40

imageMinimumGCAge
meta/v1.Duration

imageMinimumGCAge是对未使用镜像进行垃圾搜集之前允许其存在的时长。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑这种变更可能触发垃圾收集或者延迟垃圾收集, 并且可能影响节点上镜像的额外开销。

默认值:"2m"

imageGCHighThresholdPercent
int32

imageGCHighThresholdPercent所给的是镜像的磁盘用量百分数, 一旦镜像用量超过此阈值,则镜像垃圾收集会一直运行。百分比是用这里的值除以 100 得到的,所以此字段取值必须介于 0 和 100 之间,包括 0 和 100。如果设置了此字段 则取值必须大于imageGCLowThresholdPercent取值。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑这种变更可能触发垃圾收集或者延迟垃圾收集, 并且可能影响节点上镜像的额外开销。

默认值85

imageGCLowThresholdPercent
int32

imageGCLowThresholdPercent所给的是镜像的磁盘用量百分数, 镜像用量低于此阈值时不会执行镜像垃圾收集操作。垃圾收集操作也将此作为最低磁盘用量边界。 百分比是用这里的值除以 100 得到的,所以此字段取值必须介于 0 和 100 之间,包括 0 和 100。 如果设置了此字段,则取值必须小于imageGCHighThresholdPercent取值。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑这种变更可能触发垃圾收集或者延迟垃圾收集, 并且可能影响节点上镜像的额外开销。

默认值80

volumeStatsAggPeriod
meta/v1.Duration

volumeStatsAggPeriod是计算和缓存所有 Pod 磁盘用量的频率。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑缩短此周期长度可能产生性能影响。

默认值:"1m"

kubeletCgroups
string

kubeletCgroups是用来隔离 kubelet 的控制组CGroup的绝对名称。

DynamicKubeletConfig (已弃用): 更新此字段时需要对整个节点执行重启。最安全的做法是确保此值与本地配置相同。

默认值:""

systemCgroups
string

systemCgroups是用来放置那些未被容器化的、非内核的进程的控制组 (CGroup的绝对名称。设置为空字符串表示没有这类容器。回滚此字段设置需要重启节点。 当此字段非空时,必须设置cgroupRoot字段。

DynamicKubeletConfig (已弃用): 更新此字段时需要对整个节点执行重启。最安全的做法是确保此值与本地配置相同。

默认值:""

cgroupRoot
string

cgroupRoot是用来运行 Pod 的控制组 (CGroup。 容器运行时会尽可能处理此字段的设置值。

DynamicKubeletConfig (已弃用): 更新此字段时需要对整个节点执行重启。最安全的做法是确保此值与本地配置相同。

默认值:""

cgroupsPerQOS
bool

cgroupsPerQOS用来启用基于 QoS 的控制组CGroup层次结构 顶层的控制组用于不同 QoS 类,所有BurstableBestEffort Pod 都会被放置到对应的顶级 QoS 控制组下。

DynamicKubeletConfig (已弃用): 更新此字段时需要对整个节点执行重启。最安全的做法是确保此值与本地配置相同。

默认值true

cgroupDriver
string

cgroupDriver是 kubelet 用来操控宿主系统上控制组 (CGroup 的驱动程序cgroupfs 或 systemd

DynamicKubeletConfig (已弃用): 更新此字段时需要对整个节点执行重启。最安全的做法是确保此值与本地配置相同。

默认值:"cgroupfs"

cpuManagerPolicy
string

cpuManagerPolicy是要使用的策略名称。需要启用CPUManager 特性门控。

DynamicKubeletConfig (已弃用): 更新此字段时需要对整个节点执行重启。最安全的做法是确保此值与本地配置相同。

默认值:"None"

cpuManagerPolicyOptions
map[string]string

cpuManagerPolicyOptions是一组key=value键值映射, 容许通过额外的选项来精细调整 CPU 管理器策略的行为。需要CPUManagerCPUManagerPolicyOptions两个特性门控都被启用。

DynamicKubeletConfig (已弃用): 更新此字段时需要对整个节点执行重启。最安全的做法是确保此值与本地配置相同。

默认值nil

cpuManagerReconcilePeriod
meta/v1.Duration

cpuManagerReconcilePeriod是 CPU 管理器的协调周期时长。 需要启用CPUManager特性门控。

DynamicKubeletConfig (已弃用):

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑缩短周期时长可能带来的性能影响。

默认值:"10s"

memoryManagerPolicy
string

memoryManagerPolicy是内存管理器要使用的策略的名称。 要求启用MemoryManager特性门控。

DynamicKubeletConfig (已弃用): 更新此字段时需要对整个节点执行重启。最安全的做法是确保此值与本地配置相同。

默认值:"none"

topologyManagerPolicy
string

topologyManagerPolicy是要使用的拓扑管理器策略名称。合法值包括:

  • restrictedkubelet 仅接受在所请求资源上实现最佳 NUMA 对齐的 Pod。
  • best-effortkubelet 会优选在 CPU 和设备资源上实现 NUMA 对齐的 Pod。
  • nonekubelet 不了解 Pod CPU 和设备资源 NUMA 对齐需求。
  • single-numa-nodekubelet 仅允许在 CPU 和设备资源上对齐到同一 NUMA 节点的 Pod。

如果策略不是 "none",则要求启用TopologyManager特性门控。

DynamicKubeletConfig (已弃用): 更新此字段时需要对整个节点执行重启。最安全的做法是确保此值与本地配置相同。

默认值:"none"

topologyManagerScope
string

topologyManagerScope代表的是拓扑提示生成的范围, 拓扑提示信息由提示提供者生成,提供给拓扑管理器。合法值包括:

  • container:拓扑策略是按每个容器来实施的。
  • pod:拓扑策略是按每个 Pod 来实施的。

"pod" 范围要求启用TopologyManager特性门控。

默认值:"container"

qosReserved
map[string]string

qosReserved是一组从资源名称到百分比值的映射,用来为Guaranteed QoS 类型的负载预留供其独占使用的资源百分比。目前支持的资源为:"memory"。 需要启用QOSReserved特性门控。

DynamicKubeletConfig (已弃用): 更新此字段时需要对整个节点执行重启。最安全的做法是确保此值与本地配置相同。

默认值nil

runtimeRequestTimeout
meta/v1.Duration

runtimeRequestTimeout用来设置除长期运行的请求(pulllogsexecattach)之外所有运行时请求的超时时长。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能干扰与 kubelet 服务器交互的组件。

默认值:"2m"

hairpinMode
string

hairpinMode设置 kubelet 如何为发夹模式数据包配置容器网桥。 设置此字段可以让 Service 中的端点在尝试访问自身 Service 时将服务请求路由的自身。 可选值有:

  • "promiscuous-bridge":将容器网桥设置为混杂模式。
  • "hairpin-veth":在容器的 veth 接口上设置发夹模式标记。
  • "none":什么也不做。

一般而言,用户必须设置--hairpin-mode=hairpin-veth才能实现发夹模式的网络地址转译 NAT因为混杂模式的网桥要求存在一个名为cbr0的容器网桥。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑取决于网络插件,可能需要重启节点。

默认值:"promiscuous-bridge"

maxPods
int32

maxPods是此 kubelet 上课运行的 Pod 个数上限。此值必须为非负整数。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑变更可能导致 kubelet 重启时 Pod 无法被准入, 而且可能改变Node.status.capacity[v1.ResourcePods]中报告的数值, 从而影响将来的调度决策。增大此个数值也可能会降低性能,因为会有更多的 Pod 塞到同一节点运行。

默认值110

podCIDR
string

podCIDR是用来设置 Pod IP 地址的 CIDR 值,仅用于独立部署模式。 运行于集群模式时,这一数值会从控制面获得。

DynamicKubeletConfig (已弃用): 此字段应该总是设置为默认的空字符串值。并且仅用来设置独立运行的 kubelet 因为这种 kubelet 模式下无法利用动态 kubelet 配置能力。

默认值:""

podPidsLimit
int64

podPidsLimit是每个 Pod 中可使用的 PID 个数上限。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑减小此值可能会导致变更后无法创建容器进程。

默认值:-1

resolvConf
string

resolvConf是一个域名解析配置文件,用作容器 DNS 解析配置的基础。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑变更仅会对更新完成后所创建的 Pod 起作用。 建议在变更此字段之前先腾空节点。如果此值设置为空字符串,则会覆盖 DNS 解析的默认配置, 本质上相当于禁用了 DNS 查询。

默认值:"/etc/resolv.conf"

runOnce
bool

runOnce字段被设置时kubelet 会咨询 API 服务器一次并获得 Pod 列表, 运行在静态 Pod 文件中指定的 Pod 及这里所获得的的 Pod然后退出。

默认值false

cpuCFSQuota
bool

cpuCFSQuota允许为设置了 CPU 限制的容器实施 CPU CFS 配额约束。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑禁止此功能可能会降低节点稳定性。

默认值true

cpuCFSQuotaPeriod
meta/v1.Duration

cpuCFSQuotaPeriod设置 CPU CFS 配额周期值,cpu.cfs_period_us。 此值需要介于 1 微秒和 1 秒之间,包含 1 微秒和 1 秒。 此功能要求启用CustomCPUCFSQuotaPeriod特性门控被启用。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑为容器所设置的限制值可能导致cpu.cfs_period_us 设置发生变化。这一变化会在节点被重新配置时触发容器重启。

默认值:"100ms"

nodeStatusMaxImages
int32

nodeStatusMaxImages限制Node.status.images中报告的镜像数量。 此值必须大于 -2。

注意:如果设置为 -1则不会对镜像数量做限制如果设置为 0则不会返回任何镜像。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑节点状态中可能报告不同的数值。

默认值50

maxOpenFiles
int64

maxOpenFiles是 kubelet 进程可以打开的文件个数。此值必须不能为负数。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能影响到 kubelet 与节点文件系统间交互的能力。

默认值1000000

contentType
string

contentType是向 API 服务器发送请求时使用的内容类型。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑这样做可能影响 kubelet 与 API 服务器通信的能力。 如果 kubelet 因为此字段的变更而失去与 API 服务器间的连接, 则之前所作的变更无法通过动态 kubelet 配置来实现回退。

默认值:"application/vnd.kubernetes.protobuf"

kubeAPIQPS
int32

kubeAPIQPS设置与 Kubernetes API 服务器通信时要使用的 QPS每秒查询数

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑这可能因为 kubelet 与 API 服务器之间流量的变化而影响集群扩缩能力。

默认值5

kubeAPIBurst
int32

kubeAPIBurst设置与 Kubernetes API 服务器通信时突发的流量级别。 此字段取值不可以是负数。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑这可能因为 kubelet 与 API 服务器之间流量的变化而影响集群扩缩能力。

默认值10

serializeImagePulls
bool

serializeImagePulls被启用时会通知 kubelet 每次仅拉取一个镜像。 我们建议不要在所运行的 docker 守护进程版本低于 1.9、使用 aufs 存储后端的节点上更改默认值。详细信息可参见 Issue #10959。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑这可能会影响镜像拉取的性能。

默认值true

evictionHard
map[string]string

evictionHard是一个映射,是从信号名称到定义硬性驱逐阈值的映射。 例如:{"memory.available": "300Mi"}。 如果希望显式地禁用,可以在任意资源上将其阈值设置为 0% 或 100%。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑这可能会触发或延迟 Pod 驱逐操作。

默认值:

  memory.available:  "100Mi"
  nodefs.available:  "10%"
  nodefs.inodesFree: "5%"
  imagefs.available: "15%"
  
evictionSoft
map[string]string

evictionSoft是一个映射,是从信号名称到定义软性驱逐阈值的映射。 例如:{"memory.available": "300Mi"}

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑这可能会触发或延迟 Pod 驱逐操作, 并且可能造成节点所报告的可分配资源数量发生变化。

默认值nil

evictionSoftGracePeriod
map[string]string

evictionSoftGracePeriod是一个映射,是从信号名称到每个软性驱逐信号的宽限期限。 例如:{"memory.available": "30s"}

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑这可能会触发或延迟 Pod 驱逐操作。

默认值nil

evictionPressureTransitionPeriod
meta/v1.Duration

evictionPressureTransitionPeriod设置 kubelet 离开驱逐压力状况之前必须要等待的时长。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑减少此字段值可能会在节点过量分配时降低节点稳定性。

默认值:"5m"

evictionMaxPodGracePeriod
int32

evictionMaxPodGracePeriod是指达到软性逐出阈值而引起 Pod 终止时, 可以赋予的宽限期限最大值(按秒计)。这个值本质上限制了软性逐出事件发生时, Pod 可以获得的terminationGracePeriodSeconds

注意:由于 Issue #64530 的原因,系统中存在一个缺陷,即此处所设置的值会在软性逐出时覆盖 Pod 的宽限期设置,从而有可能增加 Pod 上原本设置的宽限期限时长。 这个缺陷会在未来版本中修复。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑缩短此宽限期限值会导致软性逐出期间 Pod 在被杀死之前用来体面地完成清理工作可用的时间。

默认值0

evictionMinimumReclaim
map[string]string

evictionMinimumReclaim是一个映射,定义信号名称与最小回收量数值之间的关系。 最小回收量指的是资源压力较大而执行 Pod 驱逐操作时kubelet 对给定资源的最小回收量。 例如:{"imagefs.available": "2Gi"}

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑这可能会改变驱逐操作应对资源压力的效果。

默认值nil

podsPerCore
int32

podsPerCore设置的是每个核上 Pod 个数上限。此值不能超过maxPods。 所设值必须是非负整数。如果设置为 0则意味着对 Pod 个数没有限制。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑变更可能导致 kubelet 重启时 Pod 无法被准入, 还可能导致Node.status.capacity.pods所报告的数值发生变化, 进而影响到将来的调度决策。增大此值也会降低性能,因为在同一个处理器核上需要运行更多的 Pod。

默认值0

enableControllerAttachDetach
bool

enableControllerAttachDetach用来允许 Attach/Detach 控制器管理调度到本节点的卷的挂接attachment和解除挂接detachement 并且禁止 kubelet 执行任何 attach/detach 操作。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑在运行中的节点上更改由哪个组件来负责卷管理时, 这一变更可能导致节点在被更新前尚未腾空时卷无法被解除挂接。 如果 kubelet 尚未更新volumes.kubernetes.io/controller-managed-attach-detach 注解时 Pod 已经被调度到了该节点,节点上的卷也会无法解除挂接。 一般而言,最安全的做法是将此字段设置为与本地配置相同的值。

默认值true

protectKernelDefaults
bool

protectKernelDefaults设置为true时,会令 kubelet 在发现内核参数与预期不符时出错退出。若此字段设置为false,则 kubelet 会尝试更改内核参数以满足其预期。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑启用此设置会在内核参数与 kubelet 预期不匹配时导致 kubelet 进入崩溃循环Crash-Loop状态。

默认值false

makeIPTablesUtilChains
bool

makeIPTablesUtilChains设置为true时,相当于允许 kubelet 确保一组 iptables 规则存在于宿主机上。这些规则会为不同的组件(例如 kube-proxy 提供工具性质的规则。它们是基于iptablesMasqueradeBitiptablesDropBit 来创建的。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑禁用此行为会导致 kubelet 无法在本地 iptables 规则出错时实现自愈。

默认值true

iptablesMasqueradeBit
int32

iptablesMasqueradeBit是 iptables fwmark 空间中用来为 SNAT 作标记的位。此值必须介于[0, 31]区间,必须与其他标记位不同。

警告:请确保此值设置与 kube-proxy 中对应的参数设置取值相同。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑此处的变更要与其他组件(如 kube-proxy相应的变更协调一致。 只有当makeIPTablesUtilChains能力被启用时,这里的更新才会起作用。

默认值14

iptablesDropBit
int32

iptablesDropBit是 iptables fwmark 空间中用来标记丢弃包的数据位。 此值必须介于[0, 31]区间,必须与其他标记位不同。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑此处的变更要与其他组件(如 kube-proxy相应的变更协调一致。 只有当makeIPTablesUtilChains能力被启用时,这里的更新才会起作用。

默认值15

featureGates
map[string]bool

featureGates是一个从功能特性名称到布尔值的映射,用来启用或禁用实验性的功能。 此字段可逐条更改文件 "k8s.io/kubernetes/pkg/features/kube_features.go" 中所给的内置默认值。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑你所启用或禁止的功能特性的文档。 尽管我们鼓励功能特性的开发人员使动态启用或禁用功能特性成为可能, 某些变更可能要求重新启动节点,某些特性可能要求在从启用到禁用切换时作出精细的协调。

默认值nil

failSwapOn
bool

failSwapOn通知 kubelet 在节点上启用交换分区时拒绝启动。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑缩短此周期长度可能产生性能影响。

默认值true

memorySwap
MemorySwapConfiguration

memorySwap配置容器负载可用的交换内存。

containerLogMaxSize
string

containerLogMaxSize是定义容器日志文件被轮转之前可以到达的最大尺寸。 例如:"5Mi" 或 "256Ki"。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能会触发日志轮转。

默认值:"10Mi"

containerLogMaxFiles
int32

containerLogMaxFiles设置每个容器可以存在的日志文件个数上限。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑降低此值可能导致日志文件被删除。

默认值:"5"

configMapAndSecretChangeDetectionStrategy
ResourceChangeDetectionStrategy

configMapAndSecretChangeDetectionStrategy是 ConfigMap 和 Secret 管理器的运行模式。合法值包括:

  • Getkubelet 从 API 服务器直接取回必要的对象;
  • Cachekubelet 使用 TTL 缓存来管理来自 API 服务器的对象;
  • Watchkubelet 使用 watch 操作来观察所关心的对象的变更。

默认值:"Watch"

systemReserved
map[string]string

systemReserved是一组资源名称=资源数量对, 用来描述为非 Kubernetes 组件预留的资源(例如:'cpu=200m,memory=150G')。

目前仅支持 CPU 和内存。更多细节可参见 http://kubernetes.io/zh/docs/user-guide/compute-resources

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑增加预留资源也许是不可能的,因为需要改变控制组大小。 在更改了此字段之后,应该总是关注NodeAllocatableEnforced事件, 以确保更新是成功的。

默认值Nil

kubeReserved
map[string]string

kubeReserved是一组资源名称=资源数量对, 用来描述为 Kubernetes 系统组件预留的资源(例如:'cpu=200m,memory=150G')。 目前支持 CPU、内存和根文件系统的本地存储。 更多细节可参见 https://kubernetes.io/zh/docs/concepts/configuration/manage-resources-containers/

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑增加预留资源也许是不可能的,因为需要改变控制组大小。 在更改了此字段之后,应该总是关注NodeAllocatableEnforced事件, 以确保更新是成功的。

默认值Nil

reservedSystemCPUs [必需]
string

reservedSystemCPUs选项设置为宿主级系统线程和 Kubernetes 相关线程所预留的 CPU 列表。此字段提供的是一种“静态”的 CPU 列表,而不是像 systemReservedkubeReserved所提供的“动态”列表。 此选项不支持systemReservedCgroupkubeReservedCgroup

showHiddenMetricsForVersion
string

showHiddenMetricsForVersion是你希望显示隐藏度量值的上一版本。 只有上一个次版本是有意义的,其他值都是不允许的。 字段值的格式为<major>.<minor>,例如:1.16。 此格式的目的是为了确保在下一个版本中有新的度量值被隐藏时,你有机会注意到这类变化, 而不是当这些度量值在其后的版本中彻底去除时来不及应对。

默认值:""

systemReservedCgroup
string

systemReservedCgroup帮助 kubelet 识别用来为 OS 系统级守护进程实施 systemReserved计算资源预留时使用的顶级控制组CGroup。 参考[Node Allocatable](https://git.k8s.io/community/contributors/design-proposals/node/node-allocatable.md) 以了解详细信息。

DynamicKubeletConfig(已弃用): 此字段更新时需要整个节点重启。最安全的做法是保持此值与本地配置相同。

默认值:""

kubeReservedCgroup
string

kubeReservedCgroup 帮助 kubelet 识别用来为 Kubernetes 节点系统级守护进程实施 kubeReserved计算资源预留时使用的顶级控制组CGroup。 参阅Node Allocatable 了解进一步的信息。

DynamicKubeletConfig(已弃用): 此字段更新时需要整个节点重启。最安全的做法是保持此值与本地配置相同。

默认值:""

enforceNodeAllocatable
[]string

此标志设置 kubelet 需要执行的各类节点可分配资源策略。此字段接受一组选项列表。 可接受的选项有nonepodssystem-reservedkube-reserved

如果设置了none,则字段值中不可以包含其他选项。

如果列表中包含system-reserved,则必须设置systemReservedCgroup

如果列表中包含kube-reserved,则必须设置kubeReservedCgroup

这个字段只有在cgroupsPerQOS被设置为true才被支持。

参阅Node Allocatable 了解进一步的信息。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑去掉此机制可能会降低节点稳定性。 反之,添加此机制可能会降低原来使用资源超出预留量的组件的稳定性。 例如,实施 kube-reserved 在 kubelet 使用资源超出预留量时可能导致 kubelet 发生 OOM 而实施 system-reserved 机制可能导致使用资源超出预留量的系统守护进程发生 OOM。

默认值:["pods"]

allowedUnsafeSysctls
[]string

用逗号分隔的白名单列表,其中包含不安全的 sysctl 或 sysctl 模式(以结尾)。

不安全的 sysctl 组有 kernel.shmkernel.msgkernel.semfs.mqueue.net.

例如:"kernel.msg,net.ipv4.route.min\_pmtu"

默认值:[]

volumePluginDir
string

volumePluginDir是用来搜索其他第三方卷插件的目录的路径。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑更改volumePluginDir可能干扰使用第三方卷插件的负载。

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

providerID
string

providerID字段被设置时,指定的是一个外部提供者(即云驱动)实例的唯一 ID 该提供者可用来唯一性地标识特定节点。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑可能影响到 kubelet 与云驱动之间进行交互的能力。

默认值:""

kernelMemcgNotification
bool

kernelMemcgNotification字段如果被设置了,会告知 kubelet 集成内核的 memcg 通知机制来确定是否超出内存逐出阈值,而不是使用轮询机制来判定。

DynamicKubeletConfig (已弃用,默认为关闭)被启用时, 如果动态更新了此字段,请考虑这样做可能影响到 kubelet 与内核的交互方式。

默认值false

logging [必需]
LoggingConfiguration

logging设置日志机制选项。更多的详细信息科参阅 日志选项

默认值:

Format: text
enableSystemLogHandler
bool

enableSystemLogHandler用来启用通过 Web 接口 host:port/logs/ 访问系统日志的能力。

默认值true

shutdownGracePeriod
meta/v1.Duration

shutdownGracePeriod设置节点关闭期间,节点自身需要延迟以及为 Pod 提供的宽限期限的总时长。

默认值:"0s"

shutdownGracePeriodCriticalPods
meta/v1.Duration

shutdownGracePeriodCriticalPods设置节点关闭期间用来终止关键性 Pod 的时长。此时长要短于shutdownGracePeriod。 例如,如果shutdownGracePeriod=30sshutdownGracePeriodCriticalPods=10s 在节点关闭期间,前 20 秒钟被预留用来体面终止普通 Pod后 10 秒钟用来终止关键 Pod。

默认值:"0s"

shutdownGracePeriodByPodPriority
[]ShutdownGracePeriodByPodPriority

shutdownGracePeriodByPodPriority设置基于 Pod 相关的优先级类值而确定的体面关闭时间。当 kubelet 收到关闭请求的时候kubelet 会针对节点上运行的所有 Pod 发起关闭操作,这些关闭操作会根据 Pod 的优先级确定其宽限期限, 之后 kubelet 等待所有 Pod 退出。

数组中的每个表项代表的是节点关闭时 Pod 的体面终止时间;这里的 Pod 的优先级类介于列表中当前优先级类值和下一个表项的优先级类值之间。

例如,要赋予关键 Pod 10 秒钟时间来关闭,赋予优先级>=10000 Pod 20 秒钟时间来关闭, 赋予其余的 Pod 30 秒钟来关闭。

shutdownGracePeriodByPodPriority:

  • priority: 2000000000 shutdownGracePeriodSeconds: 10
  • priority: 10000 shutdownGracePeriodSeconds: 20
  • priority: 0 shutdownGracePeriodSeconds: 30

在退出之前kubelet 要等待的时间上限为节点上所有优先级类的 shutdownGracePeriodSeconds的最大值。 当所有 Pod 都退出或者到达其宽限期限时kubelet 会释放关闭防护锁。 此功能要求GracefulNodeShutdown特性门控被启用。

shutdownGracePeriodshutdownGracePeriodCriticalPods 被设置时,此配置字段必须为空。

默认值nil

reservedMemory
[]MemoryReservation

reservedMemory给出一个逗号分隔的列表,为 NUMA 节点预留内存。

此参数仅在内存管理器功能特性语境下有意义。内存管理器不会为容器负载分配预留内存。 例如,如果你的 NUMA0 节点内存为 10GireservedMemory设置为在 NUMA0 上预留 1Gi 内存,内存管理器会认为其上只有 9Gi 内存可供分配。

你可以设置不同数量的 NUMA 节点和内存类型。你也可以完全忽略这个字段,不过你要清楚, 所有 NUMA 节点上预留内存的总量要等于通过 node allocatable 设置的内存量。

如果至少有一个节点可分配参数设置值非零,则你需要设置至少一个 NUMA 节点。

此外,避免如下设置:

  1. 在配置值中存在重复项NUMA 节点和内存类型相同,但配置值不同,这是不允许的。
  2. 为任何内存类型设置限制值为零。
  3. NUMA 节点 ID 在宿主系统上不存在。/li>
  4. memoryhugepages-<size>之外的内存类型。

默认值nil

enableProfilingHandler
bool

enableProfilingHandler启用通过 host:port/debug/pprof/ 接口来执行性能分析。

默认值true

enableDebugFlagsHandler
bool

enableDebugFlagsHandler启用通过 host:port/debug/flags/v Web 接口上的标志设置。

默认值true

seccompDefault
bool

seccompDefault字段允许针对所有负载将RuntimeDefault 设置为默认的 seccomp 配置。这一设置要求对应的SeccompDefault特性门控被启用。

默认值false

memoryThrottlingFactor
float64

当设置 cgroupv2 memory.high以实施MemoryQoS特性时, memoryThrottlingFactor用来作为内存限制或节点可分配内存的系数。

减小此系数会为容器控制组设置较低的 high 限制值,从而增大回收压力;反之, 增大此系数会降低回收压力。更多细节参见 http://kep.k8s.io/2570

默认值0.8

registerWithTaints
[]core/v1.Taint

registerWithTaints是一个由污点组成的数组,包含 kubelet 注册自身时要向节点对象添加的污点。只有registerNodetrue 时才会起作用,并且仅在节点的最初注册时起作用。

默认值nil

registerNode
bool

registerNode启用向 API 服务器的自动注册。

默认值true

SerializedNodeConfigSource

SerializedNodeConfigSource 允许对 v1.NodeConfigSource 执行序列化操作。 这一类型供 kubelet 内部使用,以便跟踪动态配置的检查点。 此资源存在于 kubeletconfig API 组是因为它被当做是对 kubelet 的一种版本化输入。

字段描述
apiVersion
string
kubelet.config.k8s.io/v1beta1
kind
string
SerializedNodeConfigSource
source
core/v1.NodeConfigSource

source是我们执行序列化的数据源。

KubeletAnonymousAuthentication

出现在:

字段描述
enabled
bool

enabled允许匿名用户向 kubelet 服务器发送请求。 未被其他身份认证方法拒绝的请求都会被当做匿名请求。 匿名请求对应的用户名为system:anonymous,对应的用户组名为 system:unauthenticated

KubeletAuthentication

出现在:

字段描述
x509
KubeletX509Authentication

x509包含与 x509 客户端证书认证相关的配置。

webhook
KubeletWebhookAuthentication

webhook包含与 Webhook 持有者令牌认证相关的配置。

anonymous
KubeletAnonymousAuthentication

anonymous包含与匿名身份认证相关的配置信息。

KubeletAuthorization

出现在:

字段描述
mode
KubeletAuthorizationMode

mode>是应用到 kubelet 服务器所接收到的请求上的鉴权模式。合法值包括 AlwaysAllowWebhook。 Webhook 模式使用 SubjectAccessReview API 来确定鉴权。

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

NUMA 节点

limits [必需]
core/v1.ResourceList

资源列表

MemorySwapConfiguration

出现在:

字段描述
swapBehavior
string

swapBehavior配置容器负载可以使用的交换内存。可以是

  • ""、"LimitedSwap":工作负载的内存和交换分区总用量不能超过 Pod 的内存限制;
  • "UnlimitedSwap":工作负载可以无限制地使用交换分区,上限是可分配的约束。

ResourceChangeDetectionStrategy

string 类型的别名)

出现在:

ResourceChangeDetectionStrategy 给出的是内部管理器ConfigMap、Secret 用来发现对象变化的模式。

ShutdownGracePeriodByPodPriority

出现在:

ShutdownGracePeriodByPodPriority 基于 Pod 关联的优先级类数值来为其设置关闭宽限时间。

字段描述
priority [必需]
int32

priority是与关闭宽限期限相关联的优先级值。

shutdownGracePeriodSeconds [必需]
int64

shutdownGracePeriodSeconds是按秒数给出的关闭宽限期限。

FormatOptions

出现在:

FormatOptions 包含为不同日志格式提供的选项。

字段描述
json [必需]
JSONOptions

[试验功能] json 包含为 "json" 日志格式提供的选项。

JSONOptions

出现在:

JSONOptions 包含为 "json" 日志格式提供的选项。

字段描述
splitStream [必需]
bool

[试验功能] splitStream 将错误信息重定向到标准错误输出stderr 而将提示信息重定向到标准输出stdout并为二者提供缓存。 默认设置是将二者都写出到标准输出,并且不提供缓存。

infoBufferSize [必需]
k8s.io/apimachinery/pkg/api/resource.QuantityValue

[试验功能] infoBufferSize 在分离数据流时用来设置提示数据流的大小。 默认值为 0相当于禁止缓存。

LoggingConfiguration

出现在:

LoggingConfiguration 包含日志选项。 参考 Logs Options 以了解更多信息。

字段描述
format [必需]
string

format 设置日志消息的结构。默认的格式取值为 text

flushFrequency [必需]
time.Duration

对日志进行清洗的最大间隔秒数。如果所选的日志后端在写入日志消息时不提供缓存, 则此配置会被忽略。

verbosity [必需]
uint32

verbosity 用来确定日志消息记录的详细程度阈值。默认值为 0 意味着仅记录最重要的消息。数值越大,额外的消息越多。出错消息总是会被记录下来。

vmodule [必需]
VModuleConfiguration

vmodule 会在单个文件层面重载 verbosity 阈值的设置。 这一选项仅支持 "text" 日志格式。

sanitization [必需]
bool

[试验功能] 当启用此选项时,被标记为敏感的字段(密码、秘钥、令牌)不会被日志记录。 运行时日志过滤功能可能会引入非常大的计算开销,因此在生产环境中不应启用。

options [必需]
FormatOptions

[试验功能] options 中包含特定于不同日志格式的配置参数。 只有针对所选格式的选项会被使用,但是合法性检查时会查看所有选项配置。

VModuleConfiguration

[]k8s.io/component-base/config/v1alpha1.VModuleItem 类型的别名)

出现在:

VModuleConfiguration 是一个集合,其中包含一个个文件名(或文件名模式) 及其对应的详细程度阈值。