แฒจแแแแจแแแ. แแแ แแแแ: แกแขแแขแแ แแแฌแแ แ แกแแแข แแแฃแ, แแแแแแแ แแ, แ แแแแแกแแช แแฅแแก แแแแ แแแแแชแแแแแแ IT-แจแ, แ แแแแแแช แแ แแก แจแแแแ แแแแแญแแ แฌแแแแแก แแแขแแ แ/แแแแแแแขแแ แ (แซแแ แแแแแแ VMware vSphere-แแ). แแก แแฎแแ แแฃแจแแแแก แแแก VMware แจแแแแแแแแ แแแแแแแแ Heptio-แจแ (แจแแซแแแแแแ 2016 แฌแแแก), แ แแแแแแช แกแแแชแแแแแแแ แแแฃแแแ แฆแ แฃแแแแแแ แแแแแแแแแแกแ แแ Kubernetes-แจแ. แแแแแ แขแแฅแกแขแ แแแกแแฎแฃแ แแแ แ แแแแ แช แแแแแแฃแ แแ แแแแแแแ แแแกแแแแ แจแแกแแแแแก Kubernetes-แแกแแแแก แแแแคแแแฃแ แแชแแแก แแแแแฏแแแแขแจแ แขแแฅแแแแแแแแก แแแแแงแแแแแแ. , แ แแแแแแช แชแแขแ แฎแแแก แฌแแ K8-แแก แแแฌแแแ แแแฎแแ.

Kustomize แแ แแก แแแกแขแ แฃแแแแขแ, แ แแแแแแช แกแแจแฃแแแแแแก แแซแแแแก แแแแฎแแแ แแแแแแก โแแแแฎแแแแแ แแแ แขแแแ, แจแแแแแแแแแก แแแ แแจแ YAML แคแแแแแแแก แแแ แแแแ แกแฎแแแแแกแฎแแ แแแแแแแแกแแแแก, แแแขแแแแ แแ แแแแแแแฃแ แ YAML แฎแแแฃแฎแแแแแแ แแ แแแแแกแแงแแแแแแแโ (แแฆแฌแแ แแแแแ แแแ แแแแแ แแแกแแกแฎแแแ ). Kustomize แจแแแซแแแแ แแแจแแแแฃแแ แแงแแก แแแ แแแแแ แแ, แ แแแแ แช Kubernetes 1.14, แแแแแแงแแแแก kubectl -k แแแก แคแฃแแฅแชแแแแแแแแแแ แฌแแแแแแกแแแแก (แแฃแแชแ Kubernetes 1.15-แแก แแแฎแแแแแ, แชแแแแ แแ แแแแแ แฃแคแ แ แแฎแแแแ, แแแแ แ แแฃแแแฅแขแแจแ แฉแแจแแแแแฃแแ แจแแกแแซแแแแแแแแแ). (แฒจแแแแจแแแ. แแแ แแแแ: แแ แแแแ แแแแแจแแแแแ แแแ แแแแ แแกแแแ kubeadm แฃแขแแแแขแแจแ.) แแ แแแกแขแจแ แแแแแ แแแแแฎแแแแก แแแแแชแแ แแฃแกแขแแแแแแแแก แกแแคแฃแซแแแแแ.
แแแกแ แฃแแแ แขแแแแกแ แคแแ แแแ/แแแแแแแชแแแ, kustomize แแ แแก แฃแแ แแแแ แ แแกแฃแ แกแแแแก แแแแแฅแชแแ (YAML แคแแแแแแ, แ แแแแแแแช แแแแกแแแฆแแ แแแแ Kubernetes แแแแแฅแขแแแก: แแแแแแแแแ, แกแแ แแแกแแแ แแ แ.แจ.) แแแฃแก แแแกแขแ แฃแฅแชแแแแแก แกแแ แแ แชแแแแแแแแแแกแแแแก, แ แแแแแแแช แฃแแแ แแแแฎแแ แชแแแแแแก แแ แ แแกแฃแ แกแแแจแ. แแกแแแ, แ แแแแ แช make แแงแแแแแก แแแกแขแ แฃแฅแชแแแแแก แแแแแแแฅแขแก, แ แแแแแแช แจแแแชแแแก Makefileแแ Docker แแจแแแแแก แแแแขแแแแแ แก แแแกแขแ แฃแฅแชแแแแแก แกแแคแฃแซแแแแแ Dockerfileแแแฎแแแ แแแแก แแแ แแแแ kustomization.yaml แจแแแแแฎแแก แแแกแขแ แฃแฅแชแแแแ แแแแก แจแแกแแฎแแ, แแฃ แ แ แชแแแแแแแแแแก แจแแขแแแ แกแฃแ แก แแแแฎแแแ แแแแแก แ แแกแฃแ แกแแแแก แแ แแแแแแแแแจแ.
แแฅ แแ แแก แคแแแแแก แแแแแแแแ kustomization.yaml:
resources:
- deployment.yaml
- service.yaml
namePrefix: dev-
namespace: development
commonLabels:
environment: development แแ แจแแแแชแแแแ แแแกแแฃแแ แ แคแแแแจแ แแ แกแแแฃแ แงแแแแ แจแแกแแซแแ แแแแแ. kustomization.yaml (แแแแก แจแแกแแฎแแ แแแ แแแ แแ แแก แแแฌแแ แแแ ), แแแแ แแ แแ แแแแชแแ แแแแแ แแฎแกแแแก แแแแแ แแขแฃแ แแแแแแแแแ:
- แกแแแแแ
resourcesแแแฃแแแแแแก แ แ (แ แแแแแ แ แแกแฃแ แกแแแ) แจแแแชแแแแแ แแฃแกแขแแแแแแแ. แแ แจแแแแฎแแแแแจแ, แแก แแซแแแก แ แแกแฃแ แกแแแก แคแแแแแแจแdeployment.yamlะธservice.yamlแแฅแแแแก แแแ แแฅแขแแ แแแจแ (แจแแแแซแแแแ แแแฃแแแแแ แกแ แฃแแ แแ แจแแแแ แแแแแ แแแแแแแแ แกแแญแแ แแแแแก แจแแแแฎแแแแแจแ). - แกแแแแแ
namePrefixแแแแแแแก kustomize แแแแแแขแแ แแแ แแแแฃแแ แแ แแคแแฅแกแ (แแ แจแแแแฎแแแแแจแ -dev-) แแแแฌแแ แแกnameแกแคแแ แแจแ แแแแกแแแฆแแ แฃแแ แงแแแแ แ แแกแฃแ แกแresources. แแแ แแแแ, แแฃ แแแแแแแแแ แแฅแแกnameแแแแจแแแแแแแแnginx-deployment, แแแ แแแแ แแแฎแแแก แแแกdev-nginx-deployment. - แกแแแแแ
namespaceแแแแแแแก kustomize-แก แแแแแแขแแก แแแชแแแฃแแ แกแแฎแแแแ แกแแแ แชแ แงแแแแ แ แแกแฃแ แกแก. แแ แจแแแแฎแแแแแจแ, Deployment and Service แแแฎแแแแแ แกแแฎแแแแ แกแแแ แชแแจแdevelopment. - แกแแแแแแแ, แแแแ
commonLabelsแจแแแชแแแก แแขแแแแขแแแแก แแ แแแแแแแแแก, แ แแแแแแช แแแแแแขแแแ แงแแแแ แ แแกแฃแ แกแก. แฉแแแแก แแแแแแแแจแ, kustomize แแแแแแญแแแก แแขแแแแขแก แ แแกแฃแ แกแแแก แกแแฎแแแแenvironmentแแ แแแแจแแแแแแแdevelopment.
แแฃ แแแแฎแแแ แแแแแ แแแแแแแก kustomize build . แแแ แแฅแขแแ แแแจแ แคแแแแแแ แแ แแแ kustomization.yaml แแ แกแแญแแ แ แ แแกแฃแ แกแแแ (แแแ. แคแแแแแแ deployment.yaml ะธ service.yaml), แจแแแแแ แแแแแกแแแแแแ แแแแฆแแแก แขแแฅแกแขแก, แ แแแแแจแแช แแแแแแแแฃแแแ แชแแแแแแแแแ kustomization.yaml.

แฒจแแแแจแแแ. แแแ แแแแ: แแแฃแกแขแ แแชแแ แกแแแ แแแฅแขแ แแแแฃแแแแขแแชแแแแแ แแฃแกแขแแแแแแแแก โแแแ แขแแแโ แแแแแงแแแแแแก แจแแกแแฎแแ
แแแแแแแแแแ แจแแแซแแแแ แแแแแแแกแแแแ แแแแก, แแฃ แกแแญแแ แแ แชแแแแแแแแแแก แแแแฎแแ แชแแแแแแ:
kustomize build . > custom-config.yamlแแแแแแแแแแ แแแแแชแแแแแ แแแขแแ แแแแแกแขแฃแแแ (แแแแแ แจแแงแแแแแก แแแแแชแแแแแ แแแแแแแฃแจแแแแแก แแแแแ แแแแแแแแแ แจแแแแแแแก), แแกแ แ แแ แแฅแแแ แแ แแญแแ แแแแแ แจแแแแแแก แคแแแแจแ แจแแแแฎแแ. แแแแก แแแชแแแแ, แแก แจแแแซแแแแ แแแแแแชแแก แแแ แแแแแ แกแฎแแ แแ แซแแแแแแก:
kustomize build . | kubectl apply -f - แแฃแกแขแแแแแแชแแแก แคแฃแแฅแชแแแแแ แฌแแแแแ แแกแแแ แจแแกแแซแแแแแแแ kubectl -k (แแฃแแแ แแแขแแก 1.14 แแแ แกแแแแแ). แแฃแแชแ, แแแฎแกแแแแแ, แ แแ แแแแแฃแแแแแแแแ kustomize แแแแแขแ แฃแคแ แ แกแฌแ แแคแแ แแฎแแแแแ, แแแแ แ แแแขแแแ แแ แแแฃแแ kubectl แแแแแขแ (แงแแแแ แจแแแแฎแแแแแจแ, แแกแแ Kubernetes 1.15 แแแแแจแแแแแจแ).
แแแแแฎแแแแแแแ แจแแแซแแแแ แฐแแแแฎแแ: "แ แแขแแ แแ แแก แแก แกแแ แแฃแแ, แแฃ แแฅแแแ แจแแแแซแแแแ แแแ แแแแแ แคแแแแแแแก แ แแแแฅแขแแ แแแ?" แแแแ แแแแฎแแ. แฉแแแแก แแแแแแแแจแ, แแแ แแแแช แจแแแซแแแแ แคแแแแแแแก แจแแชแแแ deployment.yaml ะธ service.yaml แแแ แแแแแ , แแแแ แแ แ แ แแแฎแแแแ, แแฃ แแกแแแ แกแฎแแแกแ แแ แแแฅแขแแก แฉแแแแแแ แแ แแแ? แคแแแแแแแก แจแแชแแแ แแแ แแแแแ แแ แแฃแแแแก (แแฃ แแ แ แจแแฃแซแแแแแแก) แฉแแแแแแก แฎแแแแฎแแแ แแแแ, แ แแแแกแแช แชแแแแแแแแแ แฎแแแแ แกแแฌแงแแก/แฌแงแแ แแจแ. Kustomize-แแก แแแแแงแแแแแ แกแแจแฃแแแแแแก แแแซแแแแ แแแแฎแแแแแ แแ แชแแแแแแแแแแก แชแแแขแ แแแแแแแ แคแแแแจแ kustomization.yaml, แแ แแแแแแแฃแ แ แคแแแแแแแก แฎแแแฃแฎแแแแแแ แแแขแแแแแ แแ แแแแ แแแแแแแแแแก แแ แแแแแแแฃแ แ แคแแแแแแแก แฎแแแแฎแแแ แแแแ, แกแแญแแ แแแแแก แจแแแแฎแแแแแจแ.
Kustomize-แแก แกแแ แแแแแแ แแจแแแ แ แฎแแแแ แฃแคแ แ แ แแฃแแ แแแแแงแแแแแแก แจแแแแฎแแแแแแจแ. แแแแแ แแแงแแแแแ แแแแแแแแจแ kustomization.yaml แแ แ แแกแฃแ แกแแแ แแแแแ แแแ แแฅแขแแ แแแจแแ. แแฃแแชแ, kustomize แแฎแแ แก แฃแญแแ แก แแแแแงแแแแแแก แจแแแแฎแแแแแแก, แ แแแแกแแช แแ แแก แแแแแก แแแแคแแแฃแ แแชแแ แแ แแแกแ แแ แแแแแ แแแ แแแแขแ, แแกแแแ แชแแแแแแ แ แแแแ แช แแแแแแแแแ. แแแแแแแแแ, แแแแฎแแแ แแแแแก แกแฃแ แแ แแแฆแ Deployment and Service nginx-แแกแแแแก, แ แแแแแแช แแ แแแแแแแงแแแ, แ แแแแ แช แแแแแแแแ, แแ แจแแแฅแแแ แแ แคแแแแแแแก แแแแแแแแ แแแแก, แแแแแแแก แแ แฌแแ แแแแแแก แแแ แกแแแแ (แแ แแแ แแแแขแแแ). แแแแกแแแแแก แแแก แแแกแญแแ แแแแ แแแแแแฆแแแจแแฃแแ แแแแแคแแ แแแแ แแ, แคแแฅแขแแแ แแแแ, แแแแแ แซแแ แแแแแ แ แแกแฃแ แกแแแ.
แแแแแคแแ แแแแแกแ แแ แซแแ แแแแแ แ แแกแฃแ แกแแแแก แแแแแก แกแแแแฃแกแขแ แแชแแแ (แกแแแแแแกแ แ แแกแฃแ แกแแแ), แแแแฃแจแแแ, แ แแ แแแ แแฅแขแแ แแแแก แแฅแแ แจแแแแแแ แกแขแ แฃแฅแขแฃแ แ:
- base
- deployment.yaml
- service.yaml
- kustomization.yaml
- overlays
- dev
- kustomization.yaml
- staging
- kustomization.yaml
- prod
- kustomization.yaml แคแแแแจแ base/kustomization.yaml แแแแฎแแแ แแแแแแ, แ แแแแแแแช แแงแแแแแแ แแแแก resources แฃแแ แแแแ แแแแแแชแฎแแแแ แ แแกแฃแ แกแแแ, แ แแแแแแแช แฃแแแ แจแแแชแแแแแก แแฃแกแขแแแแแก.
แแแแแแฃแ แคแแแแจแ overlays/{dev,staging,prod}/kustomization.yaml แแแแฎแแแ แแแแแแ แแแแแ แแแแแ แแแแแก แแแแคแแแฃแ แแชแแแก แแแแจแ resourcesแแ แจแแแแแ แแแฃแแแแแ แแแแแ แแขแฃแแ แชแแแแแแแแแ แแแชแแแฃแแ แแแ แแแ. แแแแแแแแแ, แคแแแแ overlays/dev/kustomization.yaml แจแแแซแแแแ แแแแแแงแฃแ แแแแแแก แแแ แ แแแชแแแฃแ แแแแแแแแแ:
resources:
- ../../base
namePrefix: dev-
namespace: development
commonLabels:
environment: development แแ แจแแแแฎแแแแแจแ แคแแแแ overlays/prod/kustomization.yaml แจแแแซแแแแ แกแ แฃแแแแ แแแแกแฎแแแแแแฃแแ แแงแแก:
resources:
- ../../base
namePrefix: prod-
namespace: production
commonLabels:
environment: production
sre-team: blue แ แแแแกแแช แแแแฎแแแ แแแแแ แแแแแก kustomize build . แแแขแแแแแจแ overlays/dev, kustomize แแแแแแแฃแจแแแแแก แแแแแแแแ แแแแก แแแ แแแแขแก. แแฃ แแแ แแแฎแแ kustomize build . แแแขแแแแแจแ overlays/prod - แแฅแแแ แแแแฆแแแ แฌแแ แแแแแแก แแแ แแแแขแก. แแ แแก แงแแแแแคแแ แ - แแ แแแแแแแจแ แชแแแแแแแแแแก แจแแขแแแแก แแแ แแจแ (แแแแ) แคแแแแแแ, แงแแแแแคแแ แ แแแแแแ แแชแแฃแแ แแ แแแขแแ แแแแแกแขแฃแแ แแแแ. แจแแแแซแแแแ แกแแแแแแกแ แแแแคแแแฃแ แแชแแ แแ แแแแแคแแ แแ แแแ แแฅแขแแ แแแแ แแแ แแแแแ แแแ แกแแแก แแแแขแ แแแแ, แแแแก แชแแแแ, แ แแ แแ แคแแแแแแแ แแแงแ แแแแแแ แแแแแกแแแแ แแ แแก แจแแแแซแแแแ แกแแกแฃแ แแแแ แแแแคแแแฃแ แแชแแแก แ แแแ แแแฃแชแแ แแแ.

แฒจแแแแจแแแ. แแแ แแแแ: แแแฃแกแขแ แแชแแ แกแแแ แแแฅแขแ แแแแฃแแแแขแแชแแแแแ แแฃแกแขแแแแแจแ แแแแแคแแ แแแแแก แแแแแงแแแแแแก แจแแกแแฎแแ
แแแ แแแแ แจแแแซแแแแ แแแแ แ แแแแแ แแแขแ แแแแ แ แแ แกแขแแขแแแจแแ แแแแแแแแกแฌแแแแแฃแแ. แแฃแแชแ, แแแแแ แแแฅแแก, แ แแ แแก แแแ แแ แจแแกแแแแแ แแฅแแแแ.
แฒแแแแขแแแแแ แ แแกแฃแ แกแแแ
แแแแ แ แแแ แแ แกแขแแขแแ แแ แแฃแแแแแแชแแแ แแฃแกแขแแแแแแแแก แจแแกแแฎแแ. แแฅ แแ แแก แ แแแแแแแแ, แ แแแแแแช แแ แแแแกแแแฃแแ แแแแ แกแแกแแ แแแแแ แแฆแแแฉแแแ:
- ;
- ;
- ;
- .
แฒจแแแแจแแแ. แแแ แแแแ: แแฅแแแ แแกแแแ แจแแแแซแแแแ แ แแแแแแแแแชแแ แแแฃแฌแแแ แแแฃแแแแแก แแแแแก, แ แแแแแแช แแแแแฅแแแงแแแแฃแแแ แ แแแแ แช แแ แแแ แแแแก แแแแกแแแขแแ, แ แแกแแช แแแฐแงแแแแ แแแแแแแแแก แแ แแแฃแแ แแฃแกแขแแแแแแแแก แจแแกแแฎแแ แฃแแฎแแแกแ แแแฎแกแแแแแแแแ.
แแฃ แแฅแแแ แแแฅแแ แจแแแแแฎแแแแ แแ แฌแแแแแแแแแแแ แแ แแแกแแแแก แแแกแแฃแแฏแแแแกแแแแแ, แแ แงแแแแแแแแก แฆแแ แแแ แแแแแฎแแแฃแ แแแแกแแแแก. แจแแแแซแแแแ แแแแแแแแจแแ แแแ แแแแแ แแ แแ . แแแแ แแแ แแฅแแแแ แแแแแคแแกแขแแแแก แแแแแคแแชแแ แแแแ kustomize-แแ!
PS แแแแ แแแแแแแกแแแ
แแกแแแ แฌแแแแแแฎแแ แฉแแแแก แแแแแแ:
- ยซ";
- ยซ";
- ยซ";
- ยซ".
แฌแงแแ แ: www.habr.com
