āĻŦāĻŋāĻāĻĻā§āĻ°āĻ. āĻ
āĻ¨ā§āĻŦāĻžāĻĻ: āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻāĻŋ āĻ˛āĻŋāĻā§āĻā§āĻ¨ āĻ¸ā§āĻāĻ āĻ˛ā§, āĻāĻāĻāĻ¨ āĻĒā§āĻ°āĻā§āĻļāĻ˛ā§ āĻ¯āĻžāĻ° IT-āĻ¤ā§ āĻŦā§āĻ¯āĻžāĻĒāĻ āĻ
āĻāĻŋāĻā§āĻāĻ¤āĻž āĻ°āĻ¯āĻŧā§āĻā§, āĻ¯āĻŋāĻ¨āĻŋ āĻ¸āĻžāĻ¤āĻāĻŋ āĻŽā§āĻĻā§āĻ°āĻŋāĻ¤ āĻŦāĻāĻ¯āĻŧā§āĻ° āĻ˛ā§āĻāĻ/āĻ¸āĻš-āĻ˛ā§āĻāĻ (āĻĒā§āĻ°āĻ§āĻžāĻ¨āĻ¤ VMware vSphere-āĻ)āĨ¤ āĻ¤āĻŋāĻ¨āĻŋ āĻāĻāĻ¨ āĻā§āĻ˛āĻžāĻāĻĄ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻŋāĻ āĻāĻŦāĻ āĻā§āĻŦāĻžāĻ°āĻ¨ā§āĻāĻ¸ā§ āĻŦāĻŋāĻļā§āĻˇā§āĻāĻ°āĻŖ āĻāĻ°ā§ āĻāĻ° āĻāĻŋāĻāĻŽāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻ¸āĻžāĻŦāĻ¸āĻŋāĻĄāĻŋāĻ¯āĻŧāĻžāĻ°āĻŋ Heptio (2016 āĻ¸āĻžāĻ˛ā§ āĻ
āĻ°ā§āĻāĻŋāĻ¤) āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻžāĻ āĻāĻ°ā§āĻ¨āĨ¤ āĻĒāĻžāĻ ā§āĻ¯āĻāĻŋ āĻ¨āĻŋāĻā§āĻ āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻā§āĻŦāĻžāĻ°āĻ¨ā§āĻāĻ¸ā§āĻ° āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻžāĻ° āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤ āĻāĻŦāĻ āĻ¸āĻšāĻā§ āĻŦā§āĻāĻžāĻ° āĻā§āĻŽāĻŋāĻāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§
Kustomize āĻšāĻ˛ āĻāĻāĻāĻŋ āĻā§āĻ˛ āĻ¯āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° "āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ā§ āĻ¸āĻ°āĻ˛, āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ-āĻŽā§āĻā§āĻ¤ YAML āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋ āĻāĻžāĻ¸ā§āĻāĻŽāĻžāĻāĻ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧ, āĻāĻ¸āĻ˛ YAML āĻ
āĻā§āĻˇāĻ¤ āĻāĻŦāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ¯ā§āĻā§āĻ¯ āĻ°ā§āĻā§" (āĻŦāĻŋāĻŦāĻ°āĻŖ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻĨā§āĻā§ āĻ§āĻžāĻ° āĻāĻ°āĻž kubectl -k
āĻāĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻ
ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻ¤ā§ (āĻ¯āĻĻāĻŋāĻ Kubernetes 1.15 āĻ
āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§, āĻĒā§āĻĨāĻ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋāĻāĻŋ kubectl-āĻ āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤ āĻā§āĻˇāĻŽāĻ¤āĻžāĻ° āĻā§āĻ¯āĻŧā§ āĻ¨āĻ¤ā§āĻ¨)āĨ¤ (āĻŦāĻŋāĻāĻĻā§āĻ°āĻ. āĻ
āĻ¨ā§āĻŦāĻžāĻĻ: āĻāĻ° āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻ āĻ°āĻŋāĻ˛āĻŋāĻ āĻ¨āĻŋāĻ¯āĻŧā§
āĻāĻ° āĻ¸āĻšāĻāĻ¤āĻŽ āĻĢāĻ°ā§āĻŽ/āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§, kustomize āĻšāĻ˛ āĻ¸āĻŽā§āĻĒāĻĻā§āĻ° āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ°āĻš (YAML āĻĢāĻžāĻāĻ˛ āĻ¯āĻž Kubernetes āĻ
āĻŦāĻā§āĻā§āĻāĻā§ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°ā§: āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž, āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž, āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋ) āĻāĻŦāĻ āĻ¸ā§āĻ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸ā§ āĻ¯ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§āĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžā§ˇ āĻ āĻŋāĻ āĻ¯ā§āĻŽāĻ¨ āĻŽā§āĻ āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĨāĻžāĻāĻž āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻ¨āĻž āĻ¸ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ Makefile
, āĻāĻŦāĻ āĻĄāĻāĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§āĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻ§āĻžāĻ°āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§ Dockerfile
,āĻāĻžāĻ¸ā§āĻāĻŽāĻžāĻāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° kustomization.yaml
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸ā§āĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻā§ āĻā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¯āĻŧ āĻ¸ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§āĨ¤
āĻāĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻĢāĻžāĻāĻ˛ āĻāĻā§ kustomization.yaml
:
resources:
- deployment.yaml
- service.yaml
namePrefix: dev-
namespace: development
commonLabels:
environment: development
āĻāĻŽāĻŋ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻĨāĻž āĻŦāĻ˛āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻŦ āĻ¨āĻžāĨ¤ kustomization.yaml
(āĻāĻāĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻžāĻ˛ āĻ˛ā§āĻāĻž āĻšāĻ¯āĻŧā§āĻā§
- āĻā§āĻˇā§āĻ¤ā§āĻ°
resources
āĻāĻŋ (āĻā§āĻ¨ āĻ¸āĻŽā§āĻĒāĻĻ) kustomize āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻŦā§ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§āĨ¤ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻŦā§deployment.yaml
иservice.yaml
āĻāĻĒāĻ¨āĻžāĻ° āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ¤ā§ (āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻŦāĻž āĻāĻĒā§āĻā§āĻˇāĻŋāĻ āĻĒāĻžāĻĨ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨)āĨ¤ - āĻā§āĻˇā§āĻ¤ā§āĻ°
namePrefix
āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻĒāĻ¸āĻ°ā§āĻ āĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ kustomize āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ (āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ -dev-
) āĻāĻ°ā§āĻĒ āĻāĻ°āĻžname
āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸āĻŽā§āĻĒāĻĻresources
. āĻāĻāĻāĻžāĻŦā§, āĻ¯āĻĻāĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻāĻā§name
āĻ āĻ°ā§āĻĨ āĻ¸āĻšnginx-deployment
, āĻāĻžāĻ¸ā§āĻāĻŽāĻžāĻāĻ āĻāĻāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦā§dev-nginx-deployment
. - āĻā§āĻˇā§āĻ¤ā§āĻ°
namespace
āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸āĻŽā§āĻĒāĻĻā§ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ¨āĻžāĻŽāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¯ā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ kustomize āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§āĨ¤ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, Deployment āĻāĻŦāĻ Service āĻ¨āĻžāĻŽāĻ¸ā§āĻĨāĻžāĻ¨ā§ āĻĒāĻĄāĻŧāĻŦā§development
. - āĻ
āĻŦāĻļā§āĻˇā§, āĻŽāĻžāĻ
commonLabels
āĻ˛ā§āĻŦā§āĻ˛āĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨ā§ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻŦā§ā§ˇ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖā§, kustomize āĻ¨āĻžāĻŽ āĻ¸āĻš āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻ˛ā§āĻŦā§āĻ˛ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻŦā§environment
āĻāĻŦāĻ āĻ āĻ°ā§āĻĨdevelopment
.
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻ¯āĻĻāĻŋ āĻāĻ°ā§ kustomize build .
āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ¤ā§ kustomization.yaml
āĻāĻŦāĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽā§āĻĒāĻĻ (āĻ¯ā§āĻŽāĻ¨ āĻĢāĻžāĻāĻ˛ deployment.yaml
и service.yaml
), āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻāĻāĻĒā§āĻā§ āĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¸āĻš āĻāĻāĻāĻŋ āĻĒāĻžāĻ ā§āĻ¯ āĻĒāĻžāĻŦā§ kustomization.yaml
.
āĻŦāĻŋāĻāĻĻā§āĻ°āĻ. āĻ
āĻ¨ā§āĻŦāĻžāĻĻ: kustomize āĻāĻ° "āĻ¸āĻšāĻ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻāĻĒāĻ° āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§āĻ° āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻĨā§āĻā§ āĻĻā§āĻˇā§āĻāĻžāĻ¨ā§āĻ¤
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻļā§āĻ°ā§āĻ¤āĻŋāĻŦāĻĻā§āĻ§ āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ˛ā§ āĻāĻāĻāĻĒā§āĻāĻāĻŋ āĻĒā§āĻ¨āĻāĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§:
kustomize build . > custom-config.yaml
āĻāĻāĻāĻĒā§āĻ āĻĄā§āĻāĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻ (āĻāĻāĻ āĻāĻ¨āĻĒā§āĻ āĻĄā§āĻāĻž āĻāĻāĻ āĻāĻāĻāĻĒā§āĻ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦā§), āĻ¤āĻžāĻ āĻāĻĒāĻ¨āĻžāĻā§ āĻĢāĻ˛āĻžāĻĢāĻ˛āĻāĻŋ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¨āĻžāĨ¤ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§, āĻāĻāĻŋ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻ āĻ¨ā§āĻ¯ āĻāĻŽāĻžāĻ¨ā§āĻĄā§ āĻĒā§āĻ°ā§āĻ°āĻŖ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§:
kustomize build . | kubectl apply -f -
āĻāĻžāĻ¸ā§āĻāĻŽāĻžāĻāĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻā§āĻ˛āĻŋāĻ āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ
ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ kubectl -k
(Kubernetes āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ 1.14 āĻĨā§āĻā§)āĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻ¸ā§āĻŦāĻ¤āĻ¨ā§āĻ¤ā§āĻ° kustomize āĻĒā§āĻ¯āĻžāĻā§āĻāĻāĻŋ āĻāĻ¨ā§āĻāĻŋāĻā§āĻ°ā§āĻā§āĻĄ kubectl āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° āĻā§āĻ¯āĻŧā§ āĻĻā§āĻ°ā§āĻ¤ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ (āĻ
āĻ¨ā§āĻ¤āĻ¤ āĻāĻāĻŋ Kubernetes 1.15 āĻ°āĻŋāĻ˛āĻŋāĻā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§)āĨ¤
āĻĒāĻžāĻ āĻāĻ°āĻž āĻāĻŋāĻā§āĻāĻžāĻ¸āĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨: "āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻ¤āĻŦā§ āĻāĻ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻāĻŋāĻ˛āĻ¤āĻž āĻā§āĻ¨?" āĻŽāĻšāĻžāĻ¨ āĻĒā§āĻ°āĻļā§āĻ¨. āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖā§, āĻĒā§āĻ°āĻā§āĻ¤āĻĒāĻā§āĻˇā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻĢāĻžāĻāĻ˛ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻ¨ deployment.yaml
и service.yaml
āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¤āĻžāĻ°āĻž āĻ¯āĻĻāĻŋ āĻ
āĻ¨ā§āĻ¯ āĻāĻžāĻ°ā§ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§āĻ° āĻāĻžāĻāĻāĻž āĻšāĻ¯āĻŧ? āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻž āĻāĻ āĻŋāĻ¨ āĻāĻ°ā§ āĻ¤ā§āĻ˛ā§ (āĻ¯āĻĻāĻŋ āĻ
āĻ¸āĻŽā§āĻāĻŦ āĻ¨āĻž āĻšāĻ¯āĻŧ) āĻ¯āĻāĻ¨ āĻŽā§āĻ˛/āĻā§āĻ¸ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¤āĻāĻ¨ āĻāĻāĻāĻŋ āĻāĻžāĻāĻāĻž āĻ°āĻŋāĻŦā§āĻ¸ āĻāĻ°āĻžāĨ¤ kustomize āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§ āĻāĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻā§āĻ¨ā§āĻĻā§āĻ°ā§āĻā§āĻ¤ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ kustomization.yaml
, āĻŽā§āĻ˛ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻā§ āĻ
āĻā§āĻˇāĻ¤ āĻ°ā§āĻā§ āĻāĻŦāĻ āĻāĻāĻāĻžāĻŦā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ āĻŽā§āĻ˛ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻā§ āĻ°āĻŋāĻŦā§āĻ¸ āĻāĻ°āĻž āĻ¸āĻšāĻ āĻāĻ°ā§ āĻ¤ā§āĻ˛ā§āĨ¤
āĻāĻ°āĻ āĻāĻāĻŋāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻžāĻ¸ā§āĻāĻŽāĻžāĻāĻā§āĻ° āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻā§āĻ˛āĻŋ āĻ¸ā§āĻĒāĻˇā§āĻ āĻšāĻ¯āĻŧā§ āĻāĻ ā§āĨ¤ āĻāĻĒāĻ°ā§āĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖā§ kustomization.yaml
āĻāĻŦāĻ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻāĻāĻ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ¤ā§ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, kustomize āĻāĻŽāĻ¨ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ¸ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻāĻŦāĻ āĻāĻ° āĻ
āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻ°ā§āĻĒ āĻ°āĻ¯āĻŧā§āĻā§, āĻ¯āĻž āĻāĻ āĻ¨āĻžāĻŽā§āĻ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ. āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻāĻāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ 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 build .
āĻā§āĻ¯āĻžāĻāĻžāĻ˛āĻā§ overlays/prod
- āĻāĻĒāĻ¨āĻŋ āĻāĻ¤ā§āĻĒāĻžāĻĻāĻ¨ āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻĒāĻžāĻŦā§āĻ¨āĨ¤ āĻāĻŦāĻ āĻāĻ āĻ¸āĻŦ - āĻŽā§āĻ˛ āĻā§āĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¨āĻž āĻāĻ°ā§ (āĻāĻŋāĻ¤ā§āĻ¤āĻŋ) āĻĢāĻžāĻāĻ˛, āĻ¸āĻŦ āĻāĻāĻāĻŋ āĻā§āĻˇāĻŖāĻžāĻŽā§āĻ˛āĻ āĻāĻŦāĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻ āĻāĻĒāĻžāĻ¯āĻŧā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻŦā§āĻ¸ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻāĻŦāĻ āĻāĻāĻžāĻ°āĻ˛ā§ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖā§ āĻĒā§āĻ°āĻ¤āĻŋāĻļā§āĻ°ā§āĻ¤āĻŋāĻŦāĻĻā§āĻ§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻā§āĻ¨ā§ āĻ°āĻžāĻā§āĻ¨ āĻ¯ā§ āĻāĻ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻāĻĒāĻ¨āĻŋ āĻ¯ā§ āĻā§āĻ¨āĻ āĻ¸āĻŽāĻ¯āĻŧ āĻĒāĻāĻ¨ā§āĻĻāĻ¸āĻ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĒā§āĻ¨āĻ°ā§āĻ¤ā§āĻĒāĻžāĻĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤
āĻŦāĻŋāĻāĻĻā§āĻ°āĻ. āĻ
āĻ¨ā§āĻŦāĻžāĻĻ: āĻāĻžāĻ¸ā§āĻāĻŽāĻžāĻāĻā§ āĻāĻāĻžāĻ°āĻ˛ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻāĻ˛ā§āĻĒ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻĨā§āĻā§ āĻāĻŋāĻ¤ā§āĻ°āĻŖ
āĻāĻžāĻ¸ā§āĻāĻŽāĻžāĻāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻ āĻ§āĻŋāĻ āĻāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§ āĻāĻā§āĻāĻžāĻĻāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¤āĻžāĻ° āĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ. āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻŽāĻŋ āĻāĻļāĻž āĻāĻ°āĻŋ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻžāĻ˛ āĻā§āĻŽāĻŋāĻāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§āĨ¤
āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻ¸āĻŽā§āĻĒāĻĻ
āĻāĻžāĻ¸ā§āĻāĻŽāĻžāĻāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ āĻ¨ā§āĻ āĻāĻžāĻ˛ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ āĻāĻŦāĻ āĻĒā§āĻ°āĻāĻžāĻļāĻ¨āĻž āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻāĻžāĻ¨ā§ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻ¯āĻž āĻāĻŽāĻŋ āĻŦāĻŋāĻļā§āĻˇāĻāĻžāĻŦā§ āĻĻāĻ°āĻāĻžāĻ°ā§ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻāĻ°ā§āĻāĻŋ:
-
Kustomize āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻĒāĻ°āĻŋāĻŦā§āĻļā§āĻ° āĻĒāĻŖā§āĻ¯/āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¸ YAML āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻ¨ ; -
āĻāĻžāĻ¸ā§āĻāĻŽāĻžāĻāĻ â āĻā§āĻŦāĻžāĻ°āĻ¨ā§āĻāĻ¸ā§ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻāĻŋāĻ āĻāĻ°āĻžāĻ° āĻ¸āĻ āĻŋāĻ āĻāĻĒāĻžāĻ¯āĻŧ ; -
āĻāĻžāĻ¸ā§āĻāĻŽāĻžāĻāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻā§āĻŦāĻžāĻ°āĻ¨ā§āĻāĻ¸ āĻ āĻŦāĻā§āĻā§āĻā§āĻ° āĻā§āĻˇāĻŖāĻžāĻŽā§āĻ˛āĻ āĻŦā§āĻ¯āĻŦāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž ; -
āĻāĻĒāĻ¸ā§āĻā§āĻ°āĻŋāĻŽ āĻšā§āĻ˛āĻŽ āĻāĻžāĻ°ā§āĻ āĻāĻžāĻ¸ā§āĻāĻŽāĻžāĻāĻ āĻāĻ°ā§ āĻāĻžāĻ¸ā§āĻāĻŽāĻžāĻāĻ āĻāĻ°āĻž .
āĻŦāĻŋāĻāĻĻā§āĻ°āĻ. āĻ
āĻ¨ā§āĻŦāĻžāĻĻ: āĻāĻĒāĻ¨āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒā§āĻ°āĻāĻžāĻļāĻŋāĻ¤ āĻ˛āĻŋāĻā§āĻ āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻ¸ā§āĻĒāĻžāĻ°āĻŋāĻļ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻāĻ¨ā§āĻ¨āĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¨āĻžāĻ° āĻ¯āĻĻāĻŋ āĻĒā§āĻ°āĻļā§āĻ¨ āĻŦāĻž āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻĨāĻžāĻā§, āĻāĻŽāĻŋ āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ¨ā§āĻŽā§āĻā§āĻ¤āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻŽāĻžāĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻāĻžāĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ āĻ¨ā§āĻŦāĻžāĻĻāĻ āĻĨā§āĻā§ PS
āĻāĻŽāĻžāĻĻā§āĻ° āĻŦā§āĻ˛āĻā§āĻ āĻĒāĻĄāĻŧā§āĻ¨:
- ÂĢ
āĻā§āĻŦāĻžāĻ°āĻ¨ā§āĻāĻ¸ā§ āĻāĻžāĻ˛āĻŋāĻ¤ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻŦāĻŋāĻāĻžāĻļāĻāĻžāĻ°ā§āĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻ°āĻā§āĻāĻžāĻŽ "; - ÂĢ
Kubernetes 1.14: āĻ¨āĻ¤ā§āĻ¨ āĻāĻŋ āĻāĻā§ āĻ¤āĻžāĻ° āĻšāĻžāĻāĻ˛āĻžāĻāĻāĻ¸ "; - ÂĢ
āĻāĻŽāĻ¸ā§āĻāĻžāĻ°āĻĄāĻžāĻŽā§ āĻšā§āĻ˛āĻŽ āĻ¸āĻžāĻŽāĻŋāĻ 2019 āĻāĻ° āĻĒāĻžāĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻĢāĻ˛āĻžāĻĢāĻ˛ "; - ÂĢ
āĻā§āĻŦāĻžāĻ°āĻ¨ā§āĻā§āĻ¸ - āĻšā§āĻ˛āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻāĻžāĻ°ā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻŋāĻ āĻā§āĻŽāĻŋāĻāĻž Âģ.
āĻāĻ¤ā§āĻ¸: www.habr.com