gpt4 book ai didi

kubernetes - 在 kustomize 中选择性地应用名称前缀/名称后缀

转载 作者:行者123 更新时间:2023-12-02 12:25:04 25 4
gpt4 key购买 nike

目前我们正在使用 ${HOME}/bin/kustomize 编辑集 nameprefix prefix1
但它正在为我们所有的资源添加名称前缀,如 deployment.yaml 和 service.yaml。
我们只想将 nameprefix 应用于 deployment.yaml 而不是将其应用于 service.yaml

最佳答案

发布以获得更好的可见性:
如果您使用的是 :

kustomize edit set nameprefix prefix1
此命令将设置 名称前缀 在您当前 定制化 .
正如问题中所述 - 这就是它的工作方式, 名称前缀 将用于 中的所有指定资源kustomization.yaml .
请使用 的想法考虑以下场景叠加底座 自定义。
Tested with:
kustomize/v4.0.1
基础声明共同共享的资源和设置,覆盖声明其他差异。
.
├── base
│ ├── [deployment.yaml] Deployment nginx
│ ├── [kustomization.yaml] Kustomization
│ └── [service.yaml] Service nginx
└── prod
├── [kustomization.yaml] Kustomization
└── kustomizeconfig
└── [deploy-prefix-transformer.yaml] PrefixSuffixTransformer customPrefixer
  • 底座 : 常用文件
  • #deployment.yaml
    apiVersion: apps/v1
    kind: Deployment
    metadata:
    name: nginx
    spec:
    selector:
    matchLabels:
    run: nginx

    #service.yaml
    apiVersion: v1
    kind: Service
    metadata:
    name: nginx
    labels:
    run: nginx

    #kustomization.yaml
    resources:
    - deployment.yaml
    - service.yaml
    apiVersion: kustomize.config.k8s.io/v1beta1
    kind: Kustomization
  • 覆盖/生产 : kustomization.yaml

  • apiVersion: kustomize.config.k8s.io/v1beta1
    kind: Kustomization
    bases:
    - ../../base
    nameSuffix: -Suffix1
    transformers:
    - ./kustomizeconfig/deploy-prefix-transformer.yaml

  • 覆盖/生产/kustomizeconfig : 部署前缀转换器.yaml
  • apiVersion: builtin
    kind: PrefixSuffixTransformer
    metadata:
    name: customPrefixer
    prefix: "deploymentprefix-"
    fieldSpecs:
    - kind: Deployment
    path: metadata/name
    如您所见,使用此结构和内置插件 PrefixSuffixTransformer 你可以得到想要的效果:
    kustomize build overlay/prod/
    apiVersion: v1
    kind: Service
    metadata:
    labels:
    run: nginx
    name: nginx-Suffix1
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
    name: deploymentprefix-nginx-Suffix1
    spec:
    selector:
    matchLabels:
    run: nginx
    此配置 (overlay/prod/kustomization.yaml) 将适用 名称后缀:-Suffix1 中指定的所有资源底座 目录并使用 PrefixSuffixTransformer将在此特定示例中添加 前缀:“部署前缀-”部署.元数据.名称
    apiVersion: builtin
    kind: PrefixSuffixTransformer
    metadata:
    name: customPrefixer
    prefix: "deploymentprefix-"
    fieldSpecs:
    - kind: Deployment
    path: metadata/name

    /kustomizeconfig/deploy-prefix-transformer.yaml

    关于kubernetes - 在 kustomize 中选择性地应用名称前缀/名称后缀,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64218188/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com