pod-preset
weight: 19 title: Pod Preset date: “2022-05-21T00:00:00+08:00” type: book
本页是关于
理解Pod Preset
Pod Preset
是用来在
您可以使用 label selector 来指定为哪些
使用
关于该背景的更多信息,请参阅
如何工作
PodPreset
- 检索所有可用的
PodPresets
。 - 检查
PodPreset 标签选择器上的标签,看看其是否能够匹配正在创建的Pod 上的标签。 - 尝试将由
PodPreset
定义的各种资源合并到正在创建的Pod 中。 - 出现错误时,在该
Pod 上引发记录合并错误的事件,PodPreset 不会注入任何资源到创建的Pod 中。 - 注释刚生成的修改过的
Pod spec ,以表明它已被PodPreset 修改过。注释的格式为podpreset.admission.kubernetes.io/podpreset-<pod-preset name>": "<resource version>"
。
每个PodPreset
可以应用于零个或多个PodPreset
应用于一个或多个Env
、EnvFrom
和 VolumeMounts
的更改,Volume
的更改,
注意:
Pod Preset 可以在适当的时候修改Pod spec 中的spec.containers
字段。Pod Preset 中的资源定义将不会应用于initContainers
字段。
禁用特定Pod 的Pod Preset
在某些情况下,您可能不希望podpreset.admission.kubernetes.io/exclude:"true"
。
启用Pod Preset
为了在集群中使用
- 您已启用
settings.k8s.io/v1alpha1/podpreset
API 类型。例如,可以通过在API server 的--runtime-config
选项中包含settings.k8s.io/v1alpha1=true
来完成此操作。 - 您已启用
PodPreset
准入控制器。一种方法是将PodPreset
包含在为API server 指定的--admission-control
选项值中。 - 您已经在要使用的命名空间中通过创建
PodPreset
对象来定义PodPreset
。