使用默认配置扩展部署

Extending deployments with default configuration

我有一个配置映射,它定义了一些变量,例如环境,然后将这些变量传递到很多这样的部署配置中

- name: ENV
      valueFrom:
        configMapKeyRef:
          name: my-config-map
          key: ENV

秘密和一些像 ssl 证书这样的卷在配置中也很常见。是否有一些 kubernetes 类型可以创建扩展正常部署的基本服务部署?或者其他一些方法来处理这个问题?同样使用 kustomize,那里可能有一个选项。

您可以使用 PodPreset 对象在创建时将机密、卷安装和环境变量等信息注入 pods。

在开始使用 PodPreset 之前,您需要执行几个步骤:

  • 首先需要启用 API 类型 settings.k8s.io/v1alpha1/podpreset,这可以通过在 API 服务器的 --runtime-config 选项中包含 settings.k8s.io/v1alpha1=true 来完成
  • 启用准入控制器 PodPreset。您可以通过在为 API 服务器
  • 指定的 --enable-admission-plugins 选项值中包含 PodPreset 来实现
  • 之后,您需要在您将使用的命名空间中创建 PodPreset 对象,并通过键入 kubectl apply -f preset.yaml
  • 来创建它

请参阅official documentation了解其工作原理。