kube-apiserver 配置 (v1)
软件包 v1 是 API 的 v1 版本。
资源类型
AdmissionConfiguration
AdmissionConfiguration 为准入控制器提供版本化配置。
字段 | 描述 |
---|---|
apiVersion 字符串 | apiserver.config.k8s.io/v1 |
种类 字符串 | AdmissionConfiguration |
插件 []AdmissionPluginConfiguration | 插件允许为每个准入控制插件指定配置。 |
EncryptionConfiguration
EncryptionConfiguration 存储加密提供程序的完整配置。它还允许使用通配符来指定要加密的资源。使用 '*.<组>' 加密组内的所有资源,或使用 '*.*' 加密所有资源。'*.' 可用于加密核心组中的所有资源。'*.*' 将加密所有资源,甚至包括 API 服务器启动后添加的自定义资源。不允许在同一个资源列表中或跨多个条目使用重叠的通配符,因为部分配置将无效。资源列表按顺序处理,较早的列表优先。
示例
kind: EncryptionConfiguration
apiVersion: apiserver.config.k8s.io/v1
resources:
- resources:
- events
providers:
- identity: {} # do not encrypt events even though *.* is specified below
- resources:
- secrets
- configmaps
- pandas.awesome.bears.example
providers:
- aescbc:
keys:
- name: key1
secret: c2VjcmV0IGlzIHNlY3VyZQ==
- resources:
- '*.apps'
providers:
- aescbc:
keys:
- name: key2
secret: c2VjcmV0IGlzIHNlY3VyZSwgb3IgaXMgaXQ/Cg==
- resources:
- '*.*'
providers:
- aescbc:
keys:
- name: key3
secret: c2VjcmV0IGlzIHNlY3VyZSwgSSB0aGluaw==
字段 | 描述 |
---|---|
apiVersion 字符串 | apiserver.config.k8s.io/v1 |
种类 字符串 | EncryptionConfiguration |
资源 [必填][]ResourceConfiguration | 资源是一个包含资源及其对应加密提供程序的列表。 |
AESConfiguration
出现在
AESConfiguration 包含 AES 变换器的 API 配置。
字段 | 描述 |
---|---|
密钥 [必填][]Key | 密钥是用于创建 AES 变换器的密钥列表。对于 AES-CBC,每个密钥必须为 32 字节长;对于 AES-GCM,每个密钥必须为 16、24 或 32 字节长。 |
AdmissionPluginConfiguration
出现在
AdmissionPluginConfiguration 提供单个插件的配置。
字段 | 描述 |
---|---|
名称 [必填]字符串 | 名称是准入控制器的名称。它必须与注册的准入插件名称匹配。 |
路径 字符串 | 路径是指向包含插件配置的配置文件的路径。 |
配置 k8s.io/apimachinery/pkg/runtime.Unknown | 配置是一个嵌入式配置对象,用作插件的配置。如果存在,它将用于代替配置文件的路径。 |
IdentityConfiguration
出现在
IdentityConfiguration 是一个空结构体,允许在提供程序配置中使用身份转换器。
KMSConfiguration
出现在
KMSConfiguration 包含基于 KMS 的信封转换器的名称、缓存大小和配置文件路径。
字段 | 描述 |
---|---|
apiVersion 字符串 | KeyManagementService 的 apiVersion |
名称 [必填]字符串 | 名称是要使用的 KMS 插件的名称。 |
缓存大小 int32 | 缓存大小是在内存中缓存的最大密钥数量。默认值为 1000。设置为负值以禁用缓存。此字段仅适用于 KMS v1 提供程序。 |
端点 [必填]字符串 | 端点是 gRPC 服务器侦听地址,例如 "unix:///var/run/kms-provider.sock"。 |
超时 meta/v1.Duration | gRPC 调用 kms-plugin 的超时时间(例如 5 秒)。默认为 3 秒。 |
Key
出现在
Key 包含为转换器提供的密钥的名称和密钥本身。
字段 | 描述 |
---|---|
名称 [必填]字符串 | 名称是在将数据存储到磁盘时要使用的密钥的名称。 |
密钥 [必填]字符串 | 密钥是实际的密钥,采用 base64 编码。 |
ProviderConfiguration
出现在
ProviderConfiguration 存储为加密提供程序提供的配置。
字段 | 描述 |
---|---|
aesgcm [必填]AESConfiguration | aesgcm 是 AES-GCM 变换器的配置。 |
aescbc [必填]AESConfiguration | aescbc 是 AES-CBC 变换器的配置。 |
secretbox [必填]SecretboxConfiguration | secretbox 是基于 Secretbox 的变换器的配置。 |
identity [必填]IdentityConfiguration | identity 是身份转换器的(空)配置。 |
kms [必填]KMSConfiguration | kms 包含基于 KMS 的信封转换器的名称、缓存大小和配置文件路径。 |
ResourceConfiguration
出现在
ResourceConfiguration 存储每个资源的配置。
字段 | 描述 |
---|---|
资源 [必填][]字符串 | 资源是要加密的 Kubernetes 资源列表。资源名称派生自组/版本/资源的 |
提供程序 [必填][]ProviderConfiguration | 提供程序是要用于读取和写入磁盘资源的转换器列表。例如:aesgcm、aescbc、secretbox、identity、kms。 |
SecretboxConfiguration
出现在
SecretboxConfiguration 包含 Secretbox 变换器的 API 配置。
字段 | 描述 |
---|---|
密钥 [必填][]Key | 密钥是用于创建 Secretbox 变换器的密钥列表。每个密钥必须为 32 字节长。 |
本页面由系统自动生成。
如果您计划报告此页面的问题,请在问题描述中说明该页面是自动生成的。修复可能需要在 Kubernetes 项目的其他地方进行。