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”)。如果为 int,则为最大纳秒数(例如 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 是每百万跨度收集的样本数。建议不设置。如果未设置,采样器将尊重其父跨度的采样率,但否则从不采样。 |
VModuleConfiguration
([]k8s.io/component-base/logs/api/v1.VModuleItem
的别名)
出现于
VModuleConfiguration 是各个文件名或模式以及相应的详细程度阈值的集合。
VerbosityLevel
(uint32
的别名)
出现于
VerbosityLevel 表示 klog 或 logr 详细程度阈值。
CredentialProviderConfig
CredentialProviderConfig 是包含有关每个 exec 凭据提供程序信息的配置。Kubelet 从磁盘读取此配置并按 CredentialProvider 类型指定启用每个提供程序。
字段 | 描述 |
---|---|
apiVersion string | kubelet.config.k8s.io/v1beta1 |
kind string | CredentialProviderConfig |
providers [必需][]CredentialProvider | providers 是 Kubelet 将启用的凭据提供程序插件列表。多个提供程序可能与单个映像匹配,在这种情况下,来自所有提供程序的凭据将被返回给 Kubelet。如果为单个映像调用了多个提供程序,则结果将被合并。如果提供程序返回重叠的 auth 密钥,则使用列表中较早提供程序的值。 |
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/" 注意:不建议使用 temp 文件夹作为日志目录,因为它可能在许多地方导致意外行为。 |
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 是一个包含用于访问 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 是包含用于 HTTPS 的 x509 证书的文件。(如果有,CA 证书在服务器证书之后连接)。如果未提供 tlsCertFile 和 tlsPrivateKeyFile,则会为公共地址生成自签名证书和密钥,并保存到传递给 Kubelet 的 --cert-dir 标志的目录中。默认:"" |
tlsPrivateKeyFile string | tlsPrivateKeyFile 是包含与 tlsCertFile 匹配的 x509 私钥的文件。默认:"" |
tlsCipherSuites []string | tlsCipherSuites 是服务器允许的密码套件列表。请注意,TLS 1.3 密码套件不可配置。值来自 tls 包常量(https://golang.ac.cn/pkg/crypto/tls/#pkg-constants)。默认:nil |
tlsMinVersion string | tlsMinVersion 是支持的最低 TLS 版本。值来自 tls 包常量(https://golang.ac.cn/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 |
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)。默认:false |
healthzPort int32 | healthzPort 是本地主机 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 服务器。默认值:nil |
streamingConnectionIdleTimeout meta/v1.Duration | streamingConnectionIdleTimeout 是流式连接在自动关闭之前可以处于空闲状态的最长时间。默认值:“4h” |
nodeStatusUpdateFrequency meta/v1.Duration | nodeStatusUpdateFrequency 是 kubelet 计算节点状态的频率。如果未启用节点租约功能,它也是 kubelet 将节点状态发布到主节点的频率。注意:当未启用节点租约功能时,更改此常量时要小心,它必须与 nodecontroller 中的 nodeMonitorGracePeriod 协同工作。默认值:“10s” |
nodeStatusReportFrequency meta/v1.Duration | nodeStatusReportFrequency 是 kubelet 将节点状态发布到主节点的频率,前提是节点状态没有改变。如果检测到任何更改,kubelet 将忽略此频率并立即发布节点状态。它仅在启用节点租约功能时使用。nodeStatusReportFrequency 的默认值为 5m。但如果显式设置 nodeStatusUpdateFrequency,则 nodeStatusReportFrequency 的默认值将设置为 nodeStatusUpdateFrequency 以实现向后兼容性。默认值:“5m” |
nodeLeaseDurationSeconds int32 | nodeLeaseDurationSeconds 是 Kubelet 在其相应的租约上设置的持续时间。NodeLease 通过让 Kubelet 在 kube-node-lease 命名空间中创建并定期续订一个以节点命名的租约来提供节点健康的指示器。如果租约过期,则可以认为节点不健康。该租约目前每 10 秒续订一次,根据 KEP-0009。将来,租约续订间隔可能会根据租约持续时间设置。该字段值必须大于 0。默认值:40 |
imageMinimumGCAge meta/v1.Duration | imageMinimumGCAge 是未使用的镜像在垃圾回收之前的最短年龄。默认值:“2m” |
imageMaximumGCAge meta/v1.Duration | imageMaximumGCAge 是镜像在垃圾回收之前可以处于未使用状态的最长时间。该字段的默认值为“0s”,这将禁用该字段,这意味着镜像不会因为长时间未使用而被垃圾回收。默认值:“0s”(已禁用) |
imageGCHighThresholdPercent int32 | imageGCHighThresholdPercent 是磁盘使用率达到某个百分比后,始终运行镜像垃圾回收的百分比。该百分比通过将该字段值除以 100 来计算,因此该字段必须在 0 到 100 之间(包含 0 和 100)。如果指定,该值必须大于 imageGCLowThresholdPercent。默认值:85 |
imageGCLowThresholdPercent int32 | imageGCLowThresholdPercent 是磁盘使用率达到某个百分比之前,绝不运行镜像垃圾回收的百分比。垃圾回收的最低磁盘使用率。该百分比通过将该字段值除以 100 来计算,因此该字段值必须在 0 到 100 之间(包含 0 和 100)。如果指定,该值必须小于 imageGCHighThresholdPercent。默认值:80 |
volumeStatsAggPeriod meta/v1.Duration | volumeStatsAggPeriod 是为所有 Pod 计算和缓存卷磁盘使用率的频率。默认值:“1m” |
kubeletCgroups string | kubeletCgroups 是用于隔离 kubelet 的 cgroup 的绝对名称。默认值:“” |
systemCgroups string | systemCgroups 是用于放置所有尚未在容器中的非内核进程的 cgroup 的绝对名称。如果无容器,则为空。回滚此标志需要重新启动。如果此字段不为空,则必须指定 cgroupRoot。默认值:“” |
cgroupRoot string | cgroupRoot 是用于 Pod 的根 cgroup。这是由容器运行时以尽力而为的方式处理的。 |
cgroupsPerQOS bool | cgroupsPerQOS 启用基于 QoS 的 CGroup 层次结构:QoS 类别的顶级 CGroup,所有 Burstable 和 BestEffort Pod 都在它们的特定顶级 QoS CGroup 下启动。默认值:true |
cgroupDriver string | cgroupDriver 是 kubelet 用于操作主机上 CGroup 的驱动程序(cgroupfs 或 systemd)。默认值:“cgroupfs” |
cpuManagerPolicy string | cpuManagerPolicy 是要使用的策略的名称。需要启用 CPUManager 功能门。默认值:“None” |
cpuManagerPolicyOptions map[string]string | cpuManagerPolicyOptions 是一组键值对,允许设置额外的选项来微调 cpu 管理器策略的行为。需要启用“CPUManager”和“CPUManagerPolicyOptions”功能门。默认值:nil |
cpuManagerReconcilePeriod meta/v1.Duration | cpuManagerReconcilePeriod 是 CPU 管理器的协调周期。需要启用 CPUManager 功能门。默认值:“10s” |
memoryManagerPolicy string | memoryManagerPolicy 是内存管理器要使用的策略的名称。需要启用 MemoryManager 功能门。默认值:“none” |
topologyManagerPolicy string | topologyManagerPolicy 是要使用的拓扑管理器策略的名称。有效值包括
默认值:“none” |
topologyManagerScope string | topologyManagerScope 表示拓扑管理器请求和提示提供者生成的拓扑提示生成的范围。有效值包括
默认值:“container” |
topologyManagerPolicyOptions map[string]string | TopologyManagerPolicyOptions 是一组键值对,允许设置额外的选项来微调拓扑管理器策略的行为。需要启用“TopologyManager”和“TopologyManagerPolicyOptions”功能门。默认值:nil |
qosReserved map[string]string | qosReserved 是一组资源名称到百分比对,指定为保证 QoS 等级保留的最小资源百分比。当前支持的资源:“memory” 需要启用 QOSReserved 功能门。默认值:nil |
runtimeRequestTimeout meta/v1.Duration | runtimeRequestTimeout 是所有运行时请求的超时时间,除了长时间运行的请求(拉取、日志、执行和附加)。默认值:“2m” |
hairpinMode string | hairpinMode 指定 Kubelet 应如何为容器网桥配置发夹数据包。设置此标志允许服务中的端点在应该尝试访问自己的服务时将负载均衡回自身。值
通常,必须设置 |
maxPods int32 | maxPods 是可以在此 Kubelet 上运行的 Pod 的最大数量。该值必须是非负整数。默认值:110 |
podCIDR string | podCIDR 是用于 Pod IP 地址的 CIDR,仅在独立模式下使用。在集群模式下,这是从控制平面获取的。默认值:“” |
podPidsLimit int64 | podPidsLimit 是任何 Pod 中的 PIDs 的最大数量。默认值:-1 |
resolvConf string | resolvConf 是用作容器 DNS 解析配置基础的解析器配置文件。如果设置为空字符串,将覆盖默认值并有效地禁用 DNS 查找。默认值:“/etc/resolv.conf” |
runOnce bool | runOnce 使 Kubelet 一次检查 API 服务器以获取 Pod,运行这些 Pod 以及静态 Pod 文件指定的 Pod,然后退出。默认值:false |
cpuCFSQuota bool | cpuCFSQuota 为指定 CPU 限制的容器启用 CPU CFS 配额强制执行。默认值: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 的请求的 contentType。默认值:“application/vnd.kubernetes.protobuf” |
kubeAPIQPS int32 | kubeAPIQPS 是与 kubernetes apiserver 交谈时要使用的 QPS。默认值:50 |
kubeAPIBurst int32 | kubeAPIBurst 是与 kubernetes API 服务器交谈时允许的突发量。此字段不能为负数。默认值:100 |
serializeImagePulls bool | serializeImagePulls 如果启用,则告诉 Kubelet 一次拉取一个镜像。我们建议不要在运行 docker 守护进程(版本小于 1.9 或使用 Aufs 存储后端)的节点上更改默认值。问题 #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 在退出驱逐压力条件之前必须等待的持续时间。默认值:“5m” |
evictionMaxPodGracePeriod int32 | evictionMaxPodGracePeriod 是响应满足软驱逐阈值而终止 Pod 时允许使用的最大宽限期(以秒为单位)。此值有效地限制了软驱逐期间 Pod 的 terminationGracePeriodSeconds 值。注意:由于问题 #64530,此值的行为存在一个错误,即此值当前只是在软驱逐期间覆盖宽限期,这可能会增加 Pod 上设置的宽限期。此错误将在将来的版本中修复。默认值:0 |
evictionMinimumReclaim map[string]string | evictionMinimumReclaim 是一个信号名称到数量的映射,定义了最小回收量,这描述了 kubelet 在执行 Pod 驱逐时回收的给定资源的最小数量,同时该资源处于压力状态。例如: |
podsPerCore int32 | podsPerCore 是每个内核的 Pod 的最大数量。不能超过 maxPods。该值必须是非负整数。如果为 0,则对 Pod 的数量没有限制。默认值:0 |
enableControllerAttachDetach bool | enableControllerAttachDetach 使 Attach/Detach 控制器能够管理调度到此节点的卷的附加/分离,并禁用 kubelet 执行任何附加/分离操作。注意:kubelet 不支持附加/分离 CSI 卷,因此此选项必须为 true 才能使用这种用例。默认值:true |
protectKernelDefaults bool | protectKernelDefaults,如果为 true,则会导致 Kubelet 在内核标志与其预期不符时出错。否则,Kubelet 将尝试修改内核标志以匹配其预期。默认值:false |
makeIPTablesUtilChains bool | makeIPTablesUtilChains,如果为真,则会导致 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 如果节点上启用了交换,则启动失败。默认值:true |
memorySwap MemorySwapConfiguration | memorySwap 配置容器工作负载可用的交换内存。 |
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 是一组 ResourceName=ResourceQuantity(例如 cpu=200m,memory=150G)对,用于描述为非 Kubernetes 组件保留的资源。目前仅支持 cpu 和 memory。有关更多详细信息,请参阅 https://kubernetes.ac.cn/docs/user-guide/compute-resources。默认值:nil |
kubeReserved map[string]string | kubeReserved 是一组 ResourceName=ResourceQuantity(例如 cpu=200m,memory=150G)对,用于描述为 Kubernetes 系统组件保留的资源。目前支持 cpu、memory 和根文件系统的本地存储。有关更多详细信息,请参阅 https://kubernetes.ac.cn/docs/concepts/configuration/manage-resources-containers/。默认值:nil |
reservedSystemCPUs [必需]string | reservedSystemCPUs 选项指定为主机级系统线程和与 Kubernetes 相关的线程保留的 CPU 列表。这提供了“静态” CPU 列表,而不是 systemReserved 和 kubeReserved 的“动态”列表。此选项不支持 systemReservedCgroup 或 kubeReservedCgroup。 |
showHiddenMetricsForVersion string | showHiddenMetricsForVersion 是要显示隐藏指标的先前版本。只有先前的次要版本才有意义,其他值将不被允许。格式为 |
systemReservedCgroup string | systemReservedCgroup 帮助 Kubelet 识别用于强制执行 |
kubeReservedCgroup string | kubeReservedCgroup 帮助 Kubelet 识别用于强制执行 |
enforceNodeAllocatable []string | 此标志指定 Kubelet 需要执行的各种节点可分配强制执行。此标志接受选项列表。可接受的选项是 |
allowedUnsafeSysctls []string | 不安全 sysctl 或 sysctl 模式(以 |
volumePluginDir string | volumePluginDir 是要搜索其他第三方卷插件的目录的完整路径。默认值:"/usr/libexec/kubernetes/kubelet-plugins/volume/exec/" |
providerID string | providerID,如果设置,将设置外部提供者(即云提供者)可用于标识特定节点的实例的唯一 ID。默认值:"" |
kernelMemcgNotification bool | kernelMemcgNotification,如果设置,则指示 Kubelet 与内核 memcg 通知集成,以确定内存驱逐阈值是否超过,而不是轮询。默认值:false |
logging [必需]LoggingConfiguration | logging 指定日志记录的选项。有关更多信息,请参阅 日志选项。默认值:格式: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 的关闭宽限期。收到关闭请求时,Kubelet 将在节点上运行的所有 pod 上启动关闭,宽限期取决于 pod 的优先级,然后等待所有 pod 退出。数组中的每个条目都表示在节点关闭时,优先级类值位于该值和列表中下一个更高条目范围内的 pod 的正常关闭时间。例如,要允许关键 pod 在 10 秒内关闭,优先级 >= 10000 的 pod 在 20 秒内关闭,所有剩余的 pod 在 30 秒内关闭。 shutdownGracePeriodByPodPriority
Kubelet 在退出之前等待的时间最多是节点上表示的每个优先级类范围的所有 shutdownGracePeriodSeconds 的最大值。当所有 pod 都退出或达到其宽限期时,Kubelet 将释放关闭抑制锁。要求启用 GracefulNodeShutdown 特性门。如果设置了 ShutdownGracePeriod 或 ShutdownGracePeriodCriticalPods,则此配置必须为空。默认值:nil |
reservedMemory []MemoryReservation | reservedMemory 指定 NUMA 节点的逗号分隔的内存保留列表。该参数仅在内存管理器功能的上下文中才有意义。内存管理器不会为容器工作负载分配保留的内存。例如,如果您的 NUMA0 有 10Gi 的内存,并且 reservedMemory 被指定为在 NUMA0 上保留 1Gi 的内存,那么内存管理器将假定只有 9Gi 可用于分配。您可以指定不同的 NUMA 节点和内存类型数量。您完全可以省略此参数,但您应该知道,所有 NUMA 节点的保留内存量应该等于 节点可分配 指定的内存量。如果至少有一个节点可分配参数具有非零值,则您需要至少指定一个 NUMA 节点。此外,避免指定
默认值:nil |
enableProfilingHandler bool | enableProfilingHandler 通过 Web 界面 host:port/debug/pprof/ 启用性能分析。默认值:true |
enableDebugFlagsHandler bool | enableDebugFlagsHandler 通过 Web 界面 host:port/debug/flags/v 启用标志端点。默认值:true |
seccompDefault bool | SeccompDefault 启用使用 |
memoryThrottlingFactor float64 | MemoryThrottlingFactor 指定在设置 cgroupv2 memory.high 值以强制执行 MemoryQoS 时,乘以内存限制或节点可分配内存的因子。降低此因子将为容器 cgroup 设置更低的 high 限制并施加更重的回收压力,而增加将施加更少的回收压力。有关更多详细信息,请参阅 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 和 memory 的方式进行管理。它还允许为 emptyDir 卷设置 sizeLimit,如果来自卷的磁盘使用量超过限制,将触发 pod 驱逐。此功能取决于检测正确根文件系统磁盘使用量的能力。对于某些系统(如 kind rootless),如果无法支持此功能,则应禁用 LocalStorageCapacityIsolation 功能。禁用后,用户不应为容器的短暂存储设置请求/限制,或为 emptyDir 设置 sizeLimit。默认值:true |
containerRuntimeEndpoint [必需]string | ContainerRuntimeEndpoint 是容器运行时的端点。在 Linux 上支持 Unix 域套接字,而在 Windows 上支持 npipe 和 tcp 端点。示例:'unix:///path/to/runtime.sock'、'npipe:////./pipe/runtime' |
imageServiceEndpoint string | ImageServiceEndpoint 是容器镜像服务的端点。在 Linux 上支持 Unix 域套接字,而在 Windows 上支持 npipe 和 tcp 端点。示例:'unix:///path/to/runtime.sock'、'npipe:////./pipe/runtime'。如果未指定,则使用 containerRuntimeEndpoint 中的值。 |
SerializedNodeConfigSource
SerializedNodeConfigSource 允许我们序列化 v1.NodeConfigSource。此类型由 Kubelet 内部用于跟踪检查点动态配置。它存在于 kubeletconfig API 组中,因为它被归类为 Kubelet 的版本化输入。
字段 | 描述 |
---|---|
apiVersion string | kubelet.config.k8s.io/v1beta1 |
kind string | SerializedNodeConfigSource |
source core/v1.NodeConfigSource | source 是我们正在序列化的源。 |
CredentialProvider
出现于
CredentialProvider 代表一个由 kubelet 调用的执行插件。只有当要拉取的镜像与插件处理的镜像匹配时才会调用该插件(参见 matchImages)。
字段 | 描述 |
---|---|
name [必填]string | name 是凭据提供程序的必填名称。它必须与 kubelet 所见的提供程序可执行文件名称匹配。该可执行文件必须位于 kubelet 的 bin 目录中(由 --image-credential-provider-bin-dir 标志设置)。 |
matchImages [必填][]string | matchImages 是一个必填的字符串列表,用于匹配镜像以确定是否应调用此提供程序。如果其中一个字符串与 kubelet 请求的镜像匹配,则会调用该插件,并有机会提供凭据。镜像预计包含注册表域和 URL 路径。 matchImages 中的每个条目都是一个模式,可以包含一个端口和一个路径。通配符可以在域中使用,但不能在端口或路径中使用。通配符支持子域,例如 '*.k8s.io' 或 'k8s.*.io',以及顶级域,例如 'k8s.*'。匹配部分子域,例如 'app*.k8s.io',也受支持。每个通配符只能匹配一个子域段,因此 '*.io' 不匹配 '*.k8s.io'。 当以下所有条件都满足时,镜像和 matchImage 之间存在匹配关系
matchImages 的示例值
|
defaultCacheDuration [必填]meta/v1.Duration | defaultCacheDuration 是插件在插件响应中未提供缓存持续时间的情况下,在内存中缓存凭据的默认持续时间。此字段是必需的。 |
apiVersion [必填]string | 执行 CredentialProviderRequest 的必填输入版本。返回的 CredentialProviderResponse 必须使用与输入相同的编码版本。当前支持的值为
|
args []string | 传递给命令以执行它的参数。 |
env []ExecEnvVar | Env 定义要公开给进程的附加环境变量。这些变量与主机环境以及 client-go 用于向插件传递参数的变量合并。 |
ExecEnvVar
出现于
ExecEnvVar 用于在执行基于执行的凭据插件时设置环境变量。
字段 | 描述 |
---|---|
name [必填]string | 没有提供描述。 |
value [必填]string | 没有提供描述。 |
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 授权程序的“已授权”响应的持续时间。 |
cacheUnauthorizedTTL meta/v1.Duration | cacheUnauthorizedTTL 是缓存来自 Webhook 授权程序的“未授权”响应的持续时间。 |
KubeletX509Authentication
出现于
字段 | 描述 |
---|---|
clientCAFile string | clientCAFile 是 PEM 编码证书捆绑包的路径。如果设置,任何呈现由捆绑包中的某个授权机构签名的客户端证书的请求都将使用与通用名称相对应的用户名以及与客户端证书中的组织相对应的组进行身份验证。 |
MemoryReservation
出现于
MemoryReservation 指定每个 NUMA 节点的不同类型的内存预留
字段 | 描述 |
---|---|
numaNode [必填]int32 | 没有提供描述。 |
limits [必填]core/v1.ResourceList | 没有提供描述。 |
MemorySwapConfiguration
出现于
字段 | 描述 |
---|---|
swapBehavior string | swapBehavior 配置可用于容器工作负载的交换内存。可以是“”,"NoSwap":工作负载不能使用交换内存,默认选项。"LimitedSwap":工作负载交换内存使用量有限。交换内存限制与容器的内存请求成比例。 |
ResourceChangeDetectionStrategy
(string
的别名)
出现于
ResourceChangeDetectionStrategy 表示内部管理器(secret、configmap)发现对象更改的模式。
ShutdownGracePeriodByPodPriority
出现于
ShutdownGracePeriodByPodPriority 指定基于其关联的优先级类值的 Pod 的关闭宽限期
字段 | 描述 |
---|---|
priority [必填]int32 | priority 是与关闭宽限期关联的优先级值 |
shutdownGracePeriodSeconds [必填]int64 | shutdownGracePeriodSeconds 是关闭宽限期(以秒为单位) |
此页面是自动生成的。
如果您打算报告此页面的问题,请在您的问题描述中提及该页面是自动生成的。修复可能需要在 Kubernetes 项目的其他地方进行。