kubernetes - 是否可以在 kustomize 中使用动态名称前缀/名称后缀?

标签 kubernetes kubernetes-helm kustomize

在 Helm 中,可以使用指定发布名称

helm install my-release-name 图表路径

这意味着,我可以使用 CLI 指定版本名称及其组件(使用全名)。

在kustomize中(我是kustomize新手),也有类似的概念,namePrefixnameSuffix可以在 kustomization.yaml

中定义
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization

namePrefix: overlook-

resources:
- deployment.yaml

但是,这种方法需要一个自定义文件,使用“动态”namePrefix 意味着必须使用模板生成 kustomization.yaml,而 kustomize 就是避免模板化。

有什么方法可以动态指定该值吗?

最佳答案

您可以使用 kustomize edit编辑 nameprefixnamesuffix 值。

例如:

Deployment.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: the-deployment
spec:
  replicas: 5
  template:
    containers:
      - name: the-container
        image: registry/conatiner:latest

Kustomization.yaml

apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization

resources:
- deployment.yaml

然后您可以运行 kustomize edit set nameprefix dev-kustomize build 。 将返回以下内容:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: dev-the-deployment
spec:
  replicas: 5
  template:
    containers:
    - image: registry/conatiner:latest
      name: the-container

关于kubernetes - 是否可以在 kustomize 中使用动态名称前缀/名称后缀?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65415295/

相关文章:

kubernetes - 如何在 Kubernetes 中创建服务帐户并将 token 关联到新服务帐户

ssl - Kubernetes 内部 nginx 入口 Controller ,带 SSL 终止和 ssl 直通

kubernetes - 我应该更喜欢 Kustomize 而不是 Helm

docker - 我如何在kubernetes PHP pod中运行cronjobs?

amazon-web-services - 在 Kubernetes 中使用 Terraform 输出

kubernetes - 如何在 kubectl 中更改用户?

docker - Helm 图表部署和私有(private) docker 存储库

kubernetes-helm - Helm 到 ConfigMap 安装 Fluentd 插件,并在 Jenkins 上收到此错误有任何提示吗?

kubernetes - 自定义: patch in multiple volumeMounts

kubernetes - 如何通过 Kustomize 替换注释中的变量?