Kubernetes-āĻāĻ° āĻāĻžāĻā§ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻ°āĻ¯āĻŧā§āĻā§: āĻĒā§āĻ°āĻ¯āĻŧā§āĻ, āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž, āĻĒā§āĻ¯āĻžāĻ āĻāĻŦāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĨ¤ āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§āĻā§ āĻā§ āĻāĻ°ā§ āĻāĻŦāĻ āĻāĻāĻ¨ āĻ¸ā§āĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§ āĻ¤āĻž āĻ¨āĻŋāĻ¯āĻŧā§ āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻ¸ā§āĻ¨ āĻāĻāĻž āĻŦā§āĻ° āĻāĻ°āĻž āĻ¯āĻžāĻāĨ¤
āĻ¯āĻĻāĻŋ kubectl patch
, āĻ¯āĻž āĻ¤ā§āĻ˛āĻ¨āĻž āĻ
āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°ā§ āĻ¨āĻž apply
и patch
. āĻāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻāĻŋ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻŦāĻŋāĻāĻ˛ā§āĻĒā§āĻ° āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋāĻ° āĻ¸āĻ āĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻĻā§āĻāĻŦā§āĨ¤
āĻāĻāĻāĻŋ Kubernetes āĻ¸āĻŽā§āĻĒāĻĻā§āĻ° āĻā§āĻŦāĻ¨āĻāĻā§āĻ°ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ (āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž, āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž, āĻĒā§āĻ°āĻŦā§āĻļ, āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋ), āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻ āĻ¸āĻŽā§āĻĒāĻĻā§āĻ° āĻāĻŋāĻā§ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨, āĻ¯ā§āĻ āĻŦāĻž āĻ āĻĒāĻ¸āĻžāĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻāĻāĻŋ āĻ¨ā§āĻ āĻ¯ā§āĻ āĻāĻ°ā§āĻ¨, āĻĒā§āĻ°āĻ¤āĻŋāĻ˛āĻŋāĻĒāĻŋāĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻŦāĻžāĻĄāĻŧāĻžāĻ¨ āĻŦāĻž āĻšā§āĻ°āĻžāĻ¸ āĻāĻ°ā§āĻ¨āĨ¤
āĻā§āĻŦāĻžāĻ°āĻ¨ā§āĻāĻ¸ āĻ¸āĻŋāĻāĻ˛āĻāĻ
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ CLI āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ Kubernetes āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°ā§ āĻĨāĻžāĻā§āĻ¨ āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤ apply
и edit
. āĻā§āĻŽ apply
āĻĢāĻžāĻāĻ˛ āĻĨā§āĻā§ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻĒāĻĄāĻŧā§ āĻāĻŦāĻ āĻā§āĻŦāĻžāĻ°āĻ¨ā§āĻāĻ¸ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ "āĻāĻĒāĻ¸āĻžāĻ°ā§āĻ" āĻāĻ°ā§, āĻ¯ā§āĻŽāĻ¨ āĻāĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨āĻž āĻĨāĻžāĻāĻ˛ā§ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§ āĻāĻŦāĻ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĨāĻžāĻā§ āĻ¤āĻŦā§ āĻāĻāĻŋ āĻāĻĒāĻĄā§āĻ āĻāĻ°ā§āĨ¤ āĻā§āĻŽ edit
API āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻāĻāĻŋ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨ āĻĒāĻĄāĻŧā§, āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻĢāĻžāĻāĻ˛ā§ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻ˛ā§āĻā§, āĻ¯āĻž āĻāĻāĻāĻŋ āĻĒāĻžāĻ ā§āĻ¯ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻā§ āĻā§āĻ˛āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻĢāĻžāĻāĻ˛ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž āĻāĻŦāĻ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻžāĻ° āĻĒāĻ°ā§, kubectl
āĻāĻĒāĻŋāĻāĻ-āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻ°āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻĢā§āĻ°āĻ¤ āĻĒāĻžāĻ āĻžāĻŦā§, āĻ¯āĻž āĻāĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻ¸āĻŽā§āĻĒāĻĻā§ āĻ¸āĻžāĻŦāĻ§āĻžāĻ¨ā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻŦā§āĨ¤
āĻ¸āĻŦāĻžāĻ āĻāĻĻā§āĻļ āĻāĻžāĻ¨ā§āĻ¨ āĻ¨āĻž patch
и replace
. āĻā§āĻŽ patch
āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ˛āĻžāĻāĻ¨ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻ
āĻāĻļ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻ
āĻāĻļ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻā§āĻŽ replace
āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻ āĻāĻžāĻ āĻāĻ°ā§ edit
, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻŦāĻāĻŋāĻā§ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛āĻŋ āĻāĻ°āĻž āĻĻāĻ°āĻāĻžāĻ°: āĻāĻĒāĻ¨āĻžāĻā§ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ kubectl get -o yaml
, āĻāĻāĻŋ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻ°āĻĒāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ replace
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻ
āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻāĻāĻāĻŋ āĻ¸āĻŽā§āĻĒāĻĻ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻ¤ā§āĨ¤ āĻā§āĻŽ replace
āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸ āĻĒāĻĄāĻŧāĻžāĻ° āĻāĻŦāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻā§āĻ¨ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻāĻ˛ā§ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻ¨āĻžāĨ¤
āĻā§āĻŦāĻžāĻ°āĻ¨ā§āĻāĻ¸ āĻāĻĒāĻŋāĻāĻ
āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤ CoreV1().Pods().Update()
, replaceNamespacedService
āĻŦāĻž patch_namespaced_deployment
, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻžāĻ āĻāĻ°ā§āĻ¨ PUT
и PATCH
... āĻ¯āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ update
и replace
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° PUT
āĻāĻŦāĻ patch
, āĻāĻāĻŋ āĻ¯āĻ¤āĻ āĻ¤ā§āĻā§āĻ āĻšā§āĻ āĻ¨āĻž āĻā§āĻ¨, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ PATCH
.
āĻāĻāĻŋ āĻ¯ā§ āĻŽā§āĻ˛ā§āĻ¯āĻŦāĻžāĻ¨ kubectl
āĻāĻāĻžāĻĄāĻŧāĻžāĻ API āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°ā§āĨ¤ āĻ
āĻ¨ā§āĻ¯ āĻāĻĨāĻžāĻ¯āĻŧ, kubectl
āĻāĻāĻŋ Go āĻāĻžāĻˇāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ° āĻāĻĒāĻ°ā§ āĻāĻāĻāĻŋ āĻŽā§āĻĄāĻŧāĻ, āĻ¯āĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ API āĻā§āĻˇāĻŽāĻ¤āĻž āĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻ°āĻ āĻāĻŽāĻĒā§āĻ¯āĻžāĻā§āĻ āĻāĻŦāĻ āĻĒāĻ āĻ¨āĻ¯ā§āĻā§āĻ¯ āĻāĻāĻžāĻ°ā§ āĻ¸āĻžāĻŦāĻāĻŽāĻžāĻ¨ā§āĻĄ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻžāĻ° āĻā§āĻˇāĻŽāĻ¤āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻĒāĻ¨āĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻ˛āĻā§āĻˇā§āĻ¯ āĻāĻ°ā§āĻā§āĻ¨, āĻĒāĻĻā§āĻ§āĻ¤āĻŋ apply
āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ āĻ
āĻ¨ā§āĻā§āĻā§āĻĻā§ āĻāĻĒāĻ°ā§ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋāĨ¤ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ (āĻŽā§ 2020, āĻĒā§āĻ°āĻžāĻ¯āĻŧ. āĻ
āĻ¨ā§āĻŦāĻžāĻĻāĻ) āĻ¸āĻŦ āĻ¯ā§āĻā§āĻ¤āĻŋ kubectl apply
, āĻ
āĻ°ā§āĻĨāĻžā§ āĻ
āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦāĻšā§āĻ¨ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻāĻŦāĻ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻž, āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻāĻžāĻŦā§ āĻā§āĻĄā§āĻ° āĻĻāĻŋāĻā§ āĻāĻžāĻ āĻāĻ°ā§ kubectl
. āĻā§āĻˇā§āĻāĻž āĻāĻ˛āĻā§ apply
API āĻāĻ° āĻĻāĻŋāĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻāĻāĻ¨āĻ āĻŦāĻŋāĻāĻžāĻ¤ā§ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻŽāĻŋ āĻ¨ā§āĻā§ āĻāĻ°ā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻ˛āĻŋāĻāĻŦ.
āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§ āĻĒā§āĻ¯āĻžāĻ
āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻžāĻ˛ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ patch
, āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ¸āĻŽā§āĻĒāĻĻ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨. āĻāĻāĻāĻžāĻŦā§ āĻāĻāĻ¯āĻŧ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ Kubernetes API āĻāĻ° āĻāĻĒāĻ°ā§ āĻāĻžāĻ āĻāĻ°ā§ āĻāĻŦāĻ kubectl
(āĻāĻļā§āĻāĻ°ā§āĻ¯āĻāĻ¨āĻ āĻ¨āĻ¯āĻŧ, āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻŽā§āĻĄāĻŧāĻ, āĻĒā§āĻ°āĻžāĻ¯āĻŧ. āĻ
āĻ¨ā§āĻŦāĻžāĻĻāĻ).
āĻā§āĻļāĻ˛āĻāĻ¤āĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§āĻ¨
āĻ¸āĻŦ āĻĻāĻ˛ kubectl
apply
, edit
и patch
āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ PATCH
āĻāĻāĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ HTTP āĻ
āĻ¨ā§āĻ°ā§āĻ§ā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻ°āĻ āĻŦāĻŋāĻļāĻĻā§ āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻ
āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°ā§āĻ¨, āĻ¤āĻŦā§ āĻ¤āĻžāĻĻā§āĻ° āĻ¸āĻāĻ˛ā§āĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ patch
āĻ
āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĒāĻ¨ā§āĻĨāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ (āĻ¨ā§āĻā§ āĻāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ)āĨ¤ āĻā§āĻļāĻ˛āĻāĻ¤-āĻāĻāĻ¤ā§āĻ°ā§āĻāĻ°āĻŖ āĻĒā§āĻ¯āĻžāĻāĻŋāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻ°āĻŦāĻ°āĻžāĻšāĻā§āĻ¤ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨āĻā§ āĻŽāĻžāĻ°ā§āĻ āĻāĻ°ā§ "āĻāĻāĻŋ āĻ¸āĻ āĻŋāĻāĻāĻžāĻŦā§ āĻĒā§āĻ¤ā§" āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĨ¤ āĻāĻ°āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻāĻāĻžāĻŦā§, āĻāĻāĻŋ āĻŦāĻ¸ā§āĻ¤ā§ āĻāĻŦāĻ āĻ
ā§āĻ¯āĻžāĻ°ā§ āĻāĻāĻ¯āĻŧāĻā§ āĻāĻāĻ¤ā§āĻ°āĻŋāĻ¤ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§, āĻ¯āĻžāĻ° āĻ
āĻ°ā§āĻĨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻāĻ¯ā§āĻāĻ¨ āĻšāĻ¤ā§ āĻĨāĻžāĻā§āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻāĻžāĻ˛āĻžāĻ¨ā§ patch
āĻĒāĻĄ āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ° āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻāĻ¨āĻāĻžāĻ¯āĻŧāĻ°āĻ¨āĻŽā§āĻ¨ā§āĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§, āĻ¸ā§āĻ āĻāĻ¨āĻāĻžāĻ¯āĻŧāĻ°āĻ¨āĻŽā§āĻ¨ā§āĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻāĻŋāĻā§ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻāĻ¨āĻāĻžāĻ¯āĻŧāĻ°āĻ¨āĻŽā§āĻ¨ā§āĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻžāĻ°āĻ°āĻžāĻāĻ āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ
āĻĒāĻ¸āĻžāĻ°āĻŖ āĻāĻ°āĻ¤ā§, āĻāĻĒāĻ¨āĻžāĻā§ āĻ
āĻŦāĻļā§āĻ¯āĻ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ā§ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ āĻŽāĻžāĻ¨āĻāĻŋāĻā§ āĻļā§āĻ¨ā§āĻ¯ āĻāĻ°āĻ¤ā§ āĻŦāĻžāĻ§ā§āĻ¯ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻā§āĻ¨ āĻĻāĻ˛āĻā§āĻ˛ā§ kubectl
āĻāĻāĻŋ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻžāĻ˛?
āĻāĻĒāĻ¨āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŽā§āĻĒāĻĻ āĻ¤ā§āĻ°āĻŋ āĻāĻŦāĻ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻ˛ā§ kubectl apply
, āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻāĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻžāĻ˛ kubectl apply
āĻ¯āĻžāĻ¤ā§ kubectl
āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŦāĻ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻĨā§āĻā§ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§ āĻ
āĻ¨ā§āĻ°ā§āĻ§ āĻāĻ°āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻ āĻŋāĻāĻāĻžāĻŦā§ āĻā§āĻ°ā§āĻ¯āĻžāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ apply
āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻŦā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻā§āĻ¤ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻā§āĻ°ā§āĻ¯āĻžāĻ āĻ°āĻžāĻā§, āĻ¯āĻāĻ¨ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻāĻŦāĻ āĻ
ā§āĻ¯āĻžāĻ°ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻ¸āĻ°āĻžāĻ¨ā§ āĻšāĻ¯āĻŧ āĻ¤āĻž āĻāĻžāĻ¨āĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧ apply
āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻāĻŦāĻ āĻ
ā§āĻ¯āĻžāĻ°ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻžāĻ¤ā§, āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻā§āĻļāĻ˛āĻāĻ¤ āĻāĻāĻ¤ā§āĻ°ā§āĻāĻ°āĻŖ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻ¨āĻžāĨ¤ āĻĻāĻ˛ edit
и patch
āĻ¨ā§āĻ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻž āĻ¯ā§ kubectl apply
āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋ āĻā§āĻ°ā§āĻ¯āĻžāĻ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§, āĻ¤āĻžāĻ āĻ¯ā§ āĻā§āĻ¨āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¯āĻž āĻā§āĻ°ā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ Kubernetes API āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧ edit
и patch
, āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻŽāĻžāĻ¨ā§āĻĄā§ āĻ
āĻĻā§āĻļā§āĻ¯ apply
, āĻ¯ā§ āĻšāĻ¯āĻŧ apply
āĻ¸ā§āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ¨āĻĒā§āĻ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ā§ āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻ¨āĻž āĻšāĻ˛ā§āĻ āĻ¸ā§āĻā§āĻ˛āĻŋāĻā§ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻ¯āĻŧ āĻ¨āĻžā§ˇ apply
(āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻŦāĻ˛ā§ āĻ¯ā§ edit
и patch
āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻ¨ā§āĻ āĻāĻĒāĻĄā§āĻ āĻāĻ°ā§āĻ¨ apply
, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ
āĻ¨ā§āĻļā§āĻ˛āĻ¨ā§ - āĻ¨āĻž)āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¨āĻž āĻāĻ°ā§āĻ¨ apply
, āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ edit
, āĻāĻŦāĻ patch
, āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻž āĻ¯āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻž āĻšāĻā§āĻā§ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻĒāĻ¯ā§āĻā§āĻ¤āĨ¤ BOM āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻ¯ā§āĻ āĻāĻŦāĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻāĻ¯āĻŧ āĻĒāĻ¨ā§āĻĨāĻž āĻŽā§āĻāĻžāĻŽā§āĻāĻŋ āĻāĻāĻāĨ¤ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻŦāĻž āĻ
ā§āĻ¯āĻžāĻ°ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ edit
āĻāĻāĻāĻžāĻ˛ā§āĻ¨ āĻ˛āĻā§āĻā§āĻ° āĻŽāĻ¤ā§ āĻāĻāĻ°āĻŖ āĻāĻ°ā§ apply
, āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻŋāĻ¤ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻā§ āĻāĻŦāĻ āĻĒāĻ°ā§ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻā§āĻŽāĻ¨ āĻāĻŋāĻ˛ āĻ¤āĻžāĻ° āĻā§āĻ°ā§āĻ¯āĻžāĻ āĻ°āĻžāĻāĻž āĻ¸āĻš, āĻ¯āĻžāĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨ āĻĨā§āĻā§ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻāĻŦāĻ āĻ
ā§āĻ¯āĻžāĻ°ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻļā§āĻ¨ā§āĻ¯ āĻ¸āĻŽā§āĻĒāĻ¤ā§āĻ¤āĻŋ āĻŽāĻžāĻ¨ āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ patch
āĻ¸āĻŽā§āĻĒāĻĻ āĻĨā§āĻā§ āĻāĻāĻŋ āĻ
āĻĒāĻ¸āĻžāĻ°āĻŖ āĻāĻ°āĻ¤ā§. āĻā§āĻļāĻ˛āĻāĻ¤-āĻāĻāĻ¤ā§āĻ°ā§āĻāĻ°āĻŖ āĻĒā§āĻ¯āĻžāĻāĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻ
ā§āĻ¯āĻžāĻ°ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ
āĻĒāĻ¸āĻžāĻ°āĻŖ āĻāĻ°āĻž āĻāĻ°āĻ āĻāĻāĻŋāĻ˛ āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻŽāĻžāĻ°ā§āĻ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨āĨ¤ āĻāĻ°āĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ¨ā§āĻā§āĻ° āĻ
āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻĒāĻā§āĻ°ā§āĻĄ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻā§āĻ˛āĻŋ āĻĻā§āĻā§āĻ¨ā§ˇ
āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ¤ā§ āĻāĻĒāĻĄā§āĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻ¤ā§ āĻ¯āĻž āĻāĻĒāĻ°ā§āĻ° āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻ
āĻ¨ā§āĻ°ā§āĻĒ āĻāĻāĻ°āĻŖ āĻāĻ°ā§ kubectl
, āĻ
āĻ¨ā§āĻ°ā§āĻ§ āĻ¸ā§āĻ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ content-type
в application/strategic-merge-patch+json
. āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ā§ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻžāĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻ¤āĻžāĻĻā§āĻ° āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻāĻāĻāĻāĻžāĻŦā§ āĻļā§āĻ¨ā§āĻ¯ āĻāĻ°ā§ āĻĻāĻŋāĻ¤ā§ āĻšāĻŦā§ kubectl patch
. āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ
ā§āĻ¯āĻžāĻ°ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻžāĻ¤ā§ āĻāĻžāĻ¨, āĻāĻĒāĻ¨āĻžāĻ° āĻāĻĒāĻĄā§āĻ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ā§ āĻŽāĻžāĻ°ā§āĻ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§ āĻ
āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻŦāĻž āĻāĻĒāĻĄā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻāĻŋāĻ¨ā§āĻ¨ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤āĨ¤
āĻāĻĒāĻĄā§āĻā§āĻ° āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĒāĻ¨ā§āĻĨāĻž
Kubernetes āĻĻā§āĻāĻŋ āĻ
āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻĒāĻĄā§āĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§: kubectl patch --type=merge
. Kubernetes API āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻĒāĻ¨āĻžāĻ° āĻ
āĻ¨ā§āĻ°ā§āĻ§ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ PATCH
āĻāĻŦāĻ āĻāĻ¨āĻ¸ā§āĻāĻ˛ā§āĻļāĻ¨ content-type
в application/merge-patch+json
.
JSON āĻĒā§āĻ¯āĻžāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ, āĻāĻāĻāĻŋ āĻ¸āĻŽā§āĻĒāĻĻā§āĻ° āĻāĻāĻļāĻŋāĻ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§, āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻ
ā§āĻ¯āĻžāĻ°ā§ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¸āĻŽā§āĻĒāĻĻā§ āĻ¯ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻ
ā§āĻ¯āĻžāĻ°ā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¸āĻŽā§āĻĒāĻĻā§ āĻāĻ°āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻŦāĻŋāĻŦāĻ°āĻŖ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ āĻāĻ°āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻĒā§āĻ°āĻāĻžāĻļ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻāĻ°āĻ āĻ¨āĻŽāĻ¨ā§āĻ¯āĻŧ āĻāĻŦāĻ āĻļāĻā§āĻ¤āĻŋāĻļāĻžāĻ˛ā§ āĻāĻĒāĻžāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻāĻāĻāĻŋ āĻāĻāĻļāĻŋāĻ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻĒāĻžāĻ āĻžāĻ¨ā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ, āĻ¨āĻ¨-āĻā§āĻŦāĻžāĻ°āĻ¨ā§āĻ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§ āĻāĻ°āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻā§āĻā§āĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ°āĻā§āĨ¤ āĻāĻŋāĻ¤āĻ°ā§ kubectl
āĻāĻĒāĻ¨āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ JSON āĻĒā§āĻ¯āĻžāĻ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ kubectl patch --type=json
. Kubernetes API āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ
āĻ¨ā§āĻ°ā§āĻ§ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻžāĻ āĻāĻ°ā§ PATCH
āĻāĻŦāĻ āĻāĻ¨āĻ¸ā§āĻāĻ˛ā§āĻļāĻ¨ content-type
в application/json-patch+json
.
āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ¤ā§āĻŽāĻŦāĻŋāĻļā§āĻŦāĻžāĻ¸ āĻĻāĻ°āĻāĻžāĻ° - āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻāĻŋāĻā§ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻāĻĒāĻ¨āĻžāĻā§ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻšāĻ¤ā§ āĻšāĻŦā§ āĻ¯ā§ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸āĻāĻŋ āĻĒāĻĄāĻŧāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻĒāĻĄā§āĻ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻā§āĻ¨ā§ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸ā§ āĻā§āĻ¨ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋāĨ¤ āĻ
āĻ¨ā§āĻ¯ āĻāĻĨāĻžāĻ¯āĻŧ, āĻāĻĒāĻ¨āĻŋ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¯ā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻŦā§ āĻĒāĻžāĻ°āĻŽāĻžāĻŖāĻŦāĻŋāĻ. āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻ¸āĻŽā§āĻĒāĻĻ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻ¤ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ replace
. āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻā§ āĻāĻāĻāĻŋ āĻāĻžāĻāĻ¨ā§āĻāĻžāĻ° āĻ¸āĻš āĻāĻāĻāĻŋ āĻāĻ¨āĻĢāĻŋāĻāĻŽā§āĻ¯āĻžāĻĒ āĻĨāĻžāĻā§ āĻ¯āĻž āĻāĻāĻžāĻ§āĻŋāĻ āĻāĻ¤ā§āĻ¸ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤ āĻ¯ā§ āĻĻā§āĻāĻŋ āĻāĻ¤ā§āĻ¸ āĻāĻāĻ āĻ¸āĻŽāĻ¯āĻŧā§ āĻāĻžāĻāĻ¨ā§āĻāĻžāĻ°āĻāĻŋ āĻāĻĒāĻĄā§āĻ āĻāĻ°ā§ āĻ¨āĻž, āĻ¯āĻžāĻ° āĻĢāĻ˛ā§ āĻāĻĒāĻĄā§āĻāĻāĻŋ āĻšāĻžāĻ°āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻāĻ¨āĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻā§āĻ°āĻŽ āĻāĻ˛ā§āĻĒāĻ¨āĻž āĻāĻ°ā§āĻ¨ patch
:
- A āĻāĻŦāĻ B API āĻĨā§āĻā§ āĻ¸āĻŽā§āĻĒāĻĻā§āĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻž āĻĒāĻžāĻ¯āĻŧ
- āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§āĻā§ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧāĻāĻžāĻŦā§ āĻāĻžāĻāĻ¨ā§āĻāĻžāĻ°āĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻāĻ°ā§ āĻŦā§āĻĻā§āĻ§āĻŋ āĻāĻ°ā§ āĻāĻŦāĻ "āĻāĻĒāĻĄā§āĻ-āĻŦāĻžāĻ" āĻ¨ā§āĻā§ āĻ¯āĻĨāĻžāĻā§āĻ°āĻŽā§ "A" āĻŦāĻž "B" āĻ¯ā§āĻ āĻāĻ°ā§ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻāĻĒāĻĄā§āĻ āĻāĻ°ā§āĨ¤
- āĻāĻŦāĻ āĻāĻāĻŋ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸āĻāĻŋāĻā§ āĻāĻāĻā§ āĻĻā§āĻ°ā§āĻ¤ āĻāĻĒāĻĄā§āĻ āĻāĻ°ā§
- B āĻ¸āĻŽā§āĻĒāĻĻ āĻāĻĒāĻĄā§āĻ āĻāĻ°ā§
āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻĒāĻĄā§āĻ A āĻšāĻžāĻ°āĻŋāĻ¯āĻŧā§ āĻā§āĻā§āĨ¤ āĻļā§āĻˇ āĻ
āĻĒāĻžāĻ°ā§āĻļāĻ¨ patch
āĻāĻŋāĻ¤āĻ˛ā§, āĻāĻžāĻāĻ¨ā§āĻāĻžāĻ°āĻāĻŋ āĻĻā§āĻāĻŋāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻĻā§āĻ§āĻŋ āĻĒāĻžāĻ¯āĻŧ āĻāĻŦāĻ "āĻāĻĒāĻĄā§āĻ-āĻŦāĻžāĻ" āĻ¨ā§āĻā§āĻ° āĻŽāĻžāĻ¨ "B" āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻˇ āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻāĻ¤ā§ "A" āĻĨāĻžāĻā§ āĻ¨āĻžāĨ¤ āĻĒāĻ¨ā§āĻĨāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻĒāĻĄā§āĻāĻā§āĻ˛āĻŋ āĻāĻ°āĻž āĻšāĻ˛ā§ āĻā§ āĻāĻā§ āĻ¤āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻāĻĒāĻ°ā§āĻ°āĻāĻŋāĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻ¯āĻžāĻ replace
:
- A āĻāĻŦāĻ B API āĻĨā§āĻā§ āĻ¸āĻŽā§āĻĒāĻĻā§āĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻž āĻĒāĻžāĻ¯āĻŧ
- āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§āĻā§ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧāĻāĻžāĻŦā§ āĻāĻžāĻāĻ¨ā§āĻāĻžāĻ°āĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻāĻ°ā§ āĻŦā§āĻĻā§āĻ§āĻŋ āĻāĻ°ā§ āĻāĻŦāĻ "āĻāĻĒāĻĄā§āĻ-āĻŦāĻžāĻ" āĻ¨ā§āĻā§ āĻ¯āĻĨāĻžāĻā§āĻ°āĻŽā§ "A" āĻŦāĻž "B" āĻ¯ā§āĻ āĻāĻ°ā§ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻāĻĒāĻĄā§āĻ āĻāĻ°ā§āĨ¤
- āĻāĻŦāĻ āĻāĻāĻŋ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸āĻāĻŋāĻā§ āĻāĻāĻā§ āĻĻā§āĻ°ā§āĻ¤ āĻāĻĒāĻĄā§āĻ āĻāĻ°ā§
- B āĻ¸āĻŽā§āĻĒāĻĻ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻĄā§āĻāĻāĻŋ API āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻā§āĻ¯āĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻžāĻ°āĻŖ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻāĻŋ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ā§ āĻ°āĻ¯āĻŧā§āĻā§
replace
Kubernetes-āĻ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸ā§āĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻ˛ā§ āĻ¨āĻž āĻāĻžāĻ°āĻŖ A-āĻāĻ° āĻ°āĻŋāĻĒā§āĻ˛ā§āĻ¸ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸ā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻŦā§āĻĻā§āĻ§āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻāĻĒāĻ°ā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, B-āĻā§ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸āĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ¨āĻ¤ā§ āĻšāĻŦā§, āĻ¨āĻ¤ā§āĻ¨ āĻ
āĻŦāĻ¸ā§āĻĨāĻžāĻ¯āĻŧ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻāĻŦāĻ āĻāĻŦāĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ replace
. āĻāĻ° āĻĢāĻ˛ā§ āĻāĻžāĻāĻ¨ā§āĻāĻžāĻ°āĻāĻŋāĻā§ āĻĻā§āĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻĻā§āĻ§āĻŋ āĻāĻ°āĻž āĻšāĻŦā§ āĻāĻŦāĻ "āĻāĻĒāĻĄā§āĻ-āĻŦāĻžāĻ" āĻ¨ā§āĻā§āĻ° āĻļā§āĻˇā§ "AB" āĻ
āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤
āĻāĻĒāĻ°ā§āĻā§āĻ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻāĻŋ āĻŦā§āĻāĻžāĻ¯āĻŧ āĻ¯ā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ replace
āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¸āĻŽā§āĻĒāĻĻ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻšāĻ¯āĻŧ. āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ replace
, āĻāĻāĻļāĻŋāĻ āĻšāĻ¤ā§ āĻšāĻŦā§ āĻ¨āĻž, āĻŦāĻž āĻ
āĻāĻļā§ āĻ¯ā§āĻŽāĻ¨ āĻāĻā§ apply
, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ, āĻ¯ā§āĻ āĻ¸āĻš resourceVersion
āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻŽā§āĻāĻžāĻĄā§āĻāĻž āĻŽāĻ§ā§āĻ¯ā§. āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻ¨āĻž āĻāĻ°ā§ āĻĨāĻžāĻā§āĻ¨ resourceVersion
āĻ
āĻĨāĻŦāĻž āĻāĻĒāĻ¨āĻžāĻ° āĻĻā§āĻāĻ¯āĻŧāĻž āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻāĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¨āĻ¯āĻŧ, āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻā§āĻ¯āĻžāĻ¨ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ āĻ¤āĻžāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻ°ā§āĻŦā§āĻ¤ā§āĻ¤āĻŽ āĻĒāĻ¨ā§āĻĨāĻž replace
- āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨ āĻĒāĻĄāĻŧā§āĻ¨, āĻāĻāĻŋ āĻāĻĒāĻĄā§āĻ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻ
āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻāĻāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĻ¨āĨ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° kubectl
, āĻāĻāĻŋ āĻāĻ āĻŽāĻ¤ āĻĻā§āĻāĻ¤ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§:
$ kubectl get deployment my-deployment -o json
| jq '.spec.template.spec.containers[0].env[1].value = "new value"'
| kubectl replace -f -
āĻāĻāĻŋ āĻ˛āĻā§āĻˇāĻŖā§āĻ¯āĻŧ āĻ¯ā§ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻĻā§āĻāĻŋ āĻāĻŽāĻžāĻ¨ā§āĻĄ, āĻā§āĻ°āĻŽāĻŋāĻāĻāĻžāĻŦā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¸āĻĢāĻ˛āĻāĻžāĻŦā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻŦā§, āĻ¯ā§āĻšā§āĻ¤ā§ deployment.yaml
āĻ¸āĻŽā§āĻĒāĻ¤ā§āĻ¤āĻŋ āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§ āĻ¨āĻž .metadata.resourceVersion
$ kubectl create -f deployment.yaml
$ kubectl replace -f deployment.yaml
āĻāĻāĻŋ āĻāĻĒāĻ°ā§ āĻ¯āĻž āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻ¤āĻžāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻšāĻŦā§, āĻ¯ā§āĻŽāĻ¨ "āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻā§āĻā§ resourceVersion
āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻŽā§āĻāĻžāĻĄā§āĻāĻžāĻ¤ā§āĨ¤" āĻāĻāĻž āĻŦāĻ˛āĻž āĻāĻŋ āĻā§āĻ˛? āĻ¨āĻž, āĻāĻāĻž āĻ¨āĻ¯āĻŧ, āĻāĻžāĻ°āĻŖ āĻ¯āĻĻāĻŋ kubectl
āĻ˛āĻā§āĻˇā§āĻ¯ āĻāĻ°ā§ āĻ¯ā§ āĻāĻĒāĻ¨āĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§āĻ¨āĻ¨āĻŋ resourceVersion
, āĻāĻāĻŋ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸ āĻĨā§āĻā§ āĻāĻāĻŋ āĻĒāĻĄāĻŧāĻŦā§ āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ā§ āĻ¯ā§āĻ āĻāĻ°āĻŦā§ āĻāĻŦāĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻāĻŋ āĻāĻžāĻ˛āĻžāĻŦā§ replace
. āĻāĻžāĻ°āĻŖ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻĒāĻžāĻ°āĻŽāĻžāĻŖāĻŦāĻŋāĻāĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§āĻ¨ āĻ¤āĻŦā§ āĻāĻāĻŋ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻŦāĻŋāĻĒāĻā§āĻāĻ¨āĻ, āĻ¯āĻžāĻĻā§āĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻāĻžāĻŦā§ āĻĒāĻžāĻļā§ āĻāĻžāĻ āĻāĻ°ā§ kubectl
, API āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°ā§ āĻāĻŽāĻ¨ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻāĻŋāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻĒāĻĄāĻŧāĻ¤ā§ āĻšāĻŦā§, āĻāĻāĻŋ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ PUT
āĻ
āĻ¨ā§āĻ°ā§āĻ§
āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¨āĻž - āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻŋ
āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻŋāĻā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¯āĻž API āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻāĻĒāĻ¨āĻŋ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸āĻāĻŋ āĻŽā§āĻā§ āĻāĻŦāĻ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻ¤ā§ āĻŦāĻžāĻ§ā§āĻ¯ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧ kubectl replace --force
. āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ āĻāĻžāĻ˛āĻžāĻ¨ā§ āĻ
āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻ¸āĻ°āĻŦāĻ°āĻžāĻšāĻā§āĻ¤ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻĨā§āĻā§ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĨ¤ API āĻ¤ā§ āĻā§āĻ¨ "āĻĢā§āĻ°ā§āĻ¸ āĻ°āĻŋāĻĒā§āĻ˛ā§āĻ¸" āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ° āĻ¨ā§āĻ, āĻāĻŦāĻ API āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻāĻŋ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻžāĻā§ āĻĻā§āĻāĻŋ āĻ
āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻĒā§āĻ°āĻĨāĻŽā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻ āĻāĻ°ā§ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨āĻāĻŋ āĻŽā§āĻāĻ¤ā§ āĻšāĻŦā§ gracePeriodSeconds
āĻĨā§āĻā§ āĻļā§āĻ¨ā§āĻ¯ (0) āĻāĻŦāĻ propagationPolicy
"āĻŦā§āĻ¯āĻžāĻāĻā§āĻ°āĻžāĻāĻ¨ā§āĻĄ"-āĻ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻĒāĻāĻ¨ā§āĻĻāĻ¸āĻ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻ¸āĻš āĻāĻ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨āĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨āĨ¤
āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž: āĻāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻŦāĻŋāĻĒāĻā§āĻāĻ¨āĻ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ° āĻĻāĻŋāĻā§ āĻ¨āĻŋāĻ¯āĻŧā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻ¸āĻžāĻāĻĄā§ āĻāĻŦā§āĻĻāĻ¨ āĻāĻ°ā§āĻ¨
āĻāĻĒāĻ°ā§ āĻāĻ˛ā§āĻ˛āĻŋāĻāĻŋāĻ¤ āĻšāĻŋāĻ¸āĻžāĻŦā§, Kubernetes āĻŦāĻŋāĻāĻžāĻļāĻāĻžāĻ°ā§āĻ°āĻž āĻ¯ā§āĻā§āĻ¤āĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§ āĻāĻžāĻ āĻāĻ°āĻā§ apply
āĻĨā§āĻā§ kubectl
Kubernetes API-āĻāĨ¤ āĻ¯ā§āĻā§āĻ¤āĻŋāĻŦāĻŋāĻĻā§āĻ¯āĻž apply
Kubernetes 1.18 āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻĒāĻ˛āĻŦā§āĻ§ kubectl apply --server-side
āĻ
āĻĨāĻŦāĻž āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ API āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ PATCH
Ņ content-type
application/apply-patch+YAML
.
āĻĻā§āĻ°āĻˇā§āĻāĻŦā§āĻ¯: JSON āĻŦā§āĻ§ YAML, āĻ¤āĻžāĻ āĻāĻĒāĻ¨āĻŋ JSON āĻšāĻŋāĻ¸āĻžāĻŦā§āĻ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻĒāĻžāĻ āĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
content-type
āĻšāĻ¤ā§ āĻšāĻŦā§application/apply-patch+yaml
.
āĻ¯ā§ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻāĻžāĻĄāĻŧāĻžāĻ kubectl
API āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¸āĻāĻ˛ā§āĻ° āĻāĻžāĻā§ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻšāĻ¯āĻŧ, apply
āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻĻāĻŋāĻā§, āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻā§ āĻĻāĻžāĻ¯āĻŧā§ āĻ¤āĻž āĻā§āĻ°ā§āĻ¯āĻžāĻ āĻ°āĻžāĻā§, āĻāĻāĻāĻžāĻŦā§ āĻāĻ° āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦ-āĻŽā§āĻā§āĻ¤ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻāĻāĻžāĻ§āĻŋāĻ āĻ
ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ā§āĻ° āĻ
āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧāĨ¤ āĻ
āĻ¨ā§āĻ¯ āĻāĻĨāĻžāĻ¯āĻŧ, āĻ¯āĻĻāĻŋ apply
āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻĻāĻŋāĻā§ āĻāĻ°āĻ āĻŦā§āĻ¯āĻžāĻĒāĻ āĻšāĻ¯āĻŧā§ āĻāĻ āĻŦā§, āĻāĻāĻāĻŋ āĻ¸āĻžāĻ°ā§āĻŦāĻāĻ¨ā§āĻ¨ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻ¸āĻŽā§āĻĒāĻĻ āĻŦā§āĻ¯āĻŦāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻŦā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, kubectl, Pulumi āĻŦāĻž Terraform, GitOps, āĻ¸ā§āĻāĻ¸āĻžāĻĨā§ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¸ā§āĻŦ-āĻ˛āĻŋāĻāĻŋāĻ¤ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻāĨ¤
āĻĢāĻ˛āĻžāĻĢāĻ˛
āĻāĻŽāĻŋ āĻāĻļāĻž āĻāĻ°āĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻžāĻ° āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻāĻĒāĻžāĻ¯āĻŧā§āĻ° āĻāĻ āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤ āĻāĻāĻžāĻ°āĻāĻŋāĻ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ āĻāĻŋāĻ˛āĨ¤ āĻāĻāĻŋ āĻā§āĻ¨ā§ āĻ°āĻžāĻāĻž āĻāĻžāĻ˛ā§ āĻ¯ā§ āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻŦāĻ¨āĻžāĻŽ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ¨āĻ¯āĻŧ; āĻĒā§āĻ°āĻ¯āĻŧā§āĻ, āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž, āĻĒā§āĻ¯āĻžāĻ āĻŦāĻž āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻž āĻ¸āĻŽā§āĻāĻŦāĨ¤ āĻ¸āĻ°ā§āĻŦā§āĻĒāĻ°āĻŋ, āĻ¨ā§āĻ¤āĻŋāĻāĻ¤āĻāĻžāĻŦā§, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻā§āĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻĒāĻžāĻ°āĻŽāĻžāĻŖāĻŦāĻŋāĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻĒāĻāĻ¨ā§āĻĻāĻ¨ā§āĻ¯āĻŧ; āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ, āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻā§āĻļāĻ˛āĻāĻ¤-āĻŽāĻžāĻ°ā§āĻ āĻĒā§āĻ¯āĻžāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤āĨ¤ āĻ āĻ¨ā§āĻ¤āĻ¤āĻĒāĻā§āĻˇā§, āĻāĻŽāĻŋ āĻāĻļāĻž āĻāĻ°āĻŋ āĻāĻĒāĻ¨āĻŋ āĻŦā§āĻāĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¯ā§ "kubernetes apply vs replace" āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻĒāĻ¨āĻŋ Google āĻŦāĻž StackOerflow āĻā§ āĻŦāĻŋāĻļā§āĻŦāĻžāĻ¸ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¨āĻžāĨ¤ āĻ āĻ¨ā§āĻ¤āĻ¤ āĻ¯āĻ¤āĻā§āĻˇāĻŖ āĻ¨āĻž āĻāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻāĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻāĻ¤ā§āĻ¤āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĨ¤
āĻāĻ¤ā§āĻ¸: www.habr.com