Kubelet 配置 (v1alpha1)

资源类型

CredentialProviderConfig

CredentialProviderConfig 是包含每个 exec 凭据提供程序信息的配置。Kubelet 从磁盘读取此配置,并根据 CredentialProvider 类型启用每个提供程序。

字段描述
apiVersion
字符串
kubelet.config.k8s.io/v1alpha1
kind
字符串
CredentialProviderConfig
providers [必需]
[]CredentialProvider

providers 是 kubelet 将启用的凭据提供程序插件列表。多个提供程序可能会匹配单个镜像,在这种情况下,来自所有提供程序的凭据将返回给 kubelet。如果为单个镜像调用多个提供程序,则会合并结果。如果提供程序返回重叠的身份验证密钥,则使用此列表中较早的提供程序的值。

CredentialProvider

出现于

CredentialProvider 表示一个由 kubelet 调用的 exec 插件。仅当被拉取的镜像与插件处理的镜像匹配时(请参阅 matchImages)才会调用该插件。

字段描述
name [必需]
字符串

name 是凭据提供程序的必需名称。它必须与 kubelet 看到的提供程序可执行文件的名称匹配。可执行文件必须位于 kubelet 的 bin 目录中(由 --image-credential-provider-bin-dir 标志设置)。

matchImages [必需]
[]string

matchImages 是一个必需的字符串列表,用于匹配镜像,以确定是否应调用此提供程序。如果其中一个字符串与 kubelet 请求的镜像匹配,则将调用该插件并有机会提供凭据。镜像应包含注册表域和 URL 路径。

matchImages 中的每个条目都是一个模式,可以可选地包含端口和路径。可以在域中使用通配符,但不能在端口或路径中使用。通配符支持作为子域,例如 *.k8s.iok8s.*.io,以及顶级域,例如 k8s.*。还支持匹配部分子域,例如 app*.k8s.io。每个通配符只能匹配一个子域段,因此 *.io 不匹配 *.k8s.io

当以下所有条件都为真时,镜像和 matchImage 之间存在匹配:

  • 两者包含相同数量的域部分,并且每个部分都匹配。
  • imageMatch 的 URL 路径必须是目标镜像 URL 路径的前缀。
  • 如果 imageMatch 包含端口,则端口也必须在镜像中匹配。

matchImages 的示例值

  • 123456789.dkr.ecr.us-east-1.amazonaws.com
  • *.azurecr.io
  • gcr.io
  • *.*.registry.io
  • registry.io:8080/path
defaultCacheDuration [必需]
meta/v1.Duration

defaultCacheDuration 是插件在插件响应中未提供缓存持续时间的情况下,在内存中缓存凭据的默认持续时间。此字段是必需的。

apiVersion [必需]
字符串

exec CredentialProviderRequest 的必需输入版本。返回的 CredentialProviderResponse 必须使用与输入相同的编码版本。当前支持的值为:

  • credentialprovider.kubelet.k8s.io/v1alpha1
args
[]string

执行命令时传递给命令的参数。

env
[]ExecEnvVar

Env 定义要暴露给进程的其他环境变量。这些变量与主机的环境变量以及客户端 go 用来将参数传递给插件的变量进行合并。

ExecEnvVar

出现于

ExecEnvVar 用于在执行基于 exec 的凭据插件时设置环境变量。

字段描述
name [必需]
字符串
未提供描述。
value [必需]
字符串
未提供描述。

此页面是自动生成的。

如果您计划报告此页面的问题,请在您的问题描述中提及该页面是自动生成的。修复可能需要在 Kubernetes 项目中的其他位置进行。

上次修改时间:2023 年 10 月 3 日下午 2:09 PST: 更新配置 API 参考 (8b94250cc9)