āĻāĻĒāύāĻŋ āϝ⧠āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āĻāĻžāϰā§āϏāύā§āϰ āĻāύā§āϝ āĻĄāĻā§āĻŽā§āύā§āĻā§āĻļāύ āĻĻā§āĻāĻā§āύ : v1.30
Kubernetes v1.30 āĻĄāĻā§āĻŽā§āύā§āĻā§āĻļāύ āĻāϰ āϏāĻā§āϰāĻŋāϝāĻŧāĻāĻžāĻŦā§ āϰāĻā§āώāĻŖāĻžāĻŦā§āĻā§āώāĻŖ āĻāϰāĻž āĻšāϝāĻŧ āύāĻžāĨ¤ āĻāĻĒāύāĻŋ āĻŦāϰā§āϤāĻŽāĻžāύ⧠āϝ⧠āĻāĻžāϰā§āϏāύāĻāĻŋ āĻĻā§āĻāĻā§āύ āϏā§āĻāĻŋ āĻāĻāĻāĻŋ āϏā§āĻā§āϝāĻžāĻāĻŋāĻ āϏā§āύā§āϝāĻžāĻĒāĻļāĻāĨ¤ āĻāĻĒ-āĻā§-āĻĄā§āĻ āĻĄāĻā§āĻŽā§āύā§āĻā§āĻļāύā§āϰ āĻāύā§āϝ, āĻĻā§āĻā§āύ āϏāϰā§āĻŦāĻļā§āώ āĻāĻžāϰā§āϏāύ
āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ⧠āĻ āĻŦāĻā§āĻā§āĻ
āĻāĻ āĻĒā§āώā§āĻ āĻžāĻāĻŋ āĻŦā§āϝāĻžāĻā§āϝāĻž āĻāϰ⧠āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ API-āϤ⧠āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āĻ
āĻŦāĻā§āĻā§āĻāĻā§āϞāĻŋ āĻā§āĻāĻžāĻŦā§ āĻĒā§āϰāϤāĻŋāύāĻŋāϧāĻŋāϤā§āĻŦ āĻāϰāĻž āĻšāϝāĻŧ āĻāĻŦāĻ
āĻāĻĒāύāĻŋ āĻāĻŋāĻāĻžāĻŦā§ āϤāĻž .yaml
āĻĢāϰāĻŽā§āϝāĻžāĻā§ āĻĒā§āϰāĻāĻžāĻļ āĻāϰāϤ⧠āĻĒāĻžāϰā§āύāĨ¤
āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āĻ āĻŦāĻā§āĻā§āĻ āĻŦā§āĻāĻž
āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āĻ āĻŦāĻā§āĻā§āĻ āĻšāϞ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āϏāĻŋāϏā§āĻā§āĻŽā§āϰ āϏāϤā§āϤāĻž āϏāĻāϰāĻā§āώāĻŋāϤ āĻāύā§āĻāĻŋāĻāĻŋāĻā§āϞāĻŋāĨ¤ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āĻāĻ āĻāύā§āĻāĻŋāĻāĻŋāĻā§āϞāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻāĻĒāύāĻžāϰ āĻā§āϞāĻžāϏā§āĻāĻžāϰā§āϰ āĻ āĻŦāϏā§āĻĨāĻž āĻĒā§āϰāĻāĻžāĻļ āĻāϰāϤā§āĨ¤ āĻŦāĻŋāĻļā§āώāĻāĻžāĻŦā§, āϤāĻžāϰāĻž āĻŦāϰā§āĻŖāύāĻž āĻāϰāϤ⧠āĻĒāĻžāϰā§:
- āĻā§āύ āĻāύā§āĻā§āύāĻžāϰ āĻ ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύ āĻāĻŋ āϰāĻžāύ āĻāϰāĻā§ (āĻāĻŦāĻ āĻā§āύ āύā§āĻĄāĻā§āϞāĻŋāϤā§)
- āĻ āĻ ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύāĻā§āϞāĻŋāϰ āĻāύā§āϝ āϰāĻŋāϏā§āϰā§āϏ
- āĻ āĻ ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύāĻā§āϞāĻŋāϰ āĻāĻŋāĻāĻžāĻŦā§ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāϤ⧠āĻšāĻŦā§, āĻāĻĻāĻžāĻšāϰāĻŖāϏā§āĻŦāϰā§āĻĒ āϰāĻŋāϏā§āĻāĻžāϰā§āĻ āύā§āϤāĻŋ, āĻāĻĒāĻā§āϰā§āĻĄ, āĻāĻŦāĻ āĻĢāϞā§āĻ-āĻāϞāĻžāϰā§āύā§āϏ
āĻāĻāĻāĻŋ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āĻ āĻŦāĻā§āĻā§āĻ āĻšāϞ āĻāĻāĻāĻŋ "āĻāĻĻā§āĻĻā§āĻļā§āϝā§āϰ āϰā§āĻāϰā§āĻĄ" - āĻāĻāĻŦāĻžāϰ āĻāĻĒāύāĻŋ āĻ āĻŦāĻā§āĻā§āĻ āϤā§āϰāĻŋ āĻāϰ⧠āĻĻāĻŋāϞā§, āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āϏāĻŋāϏā§āĻā§āĻŽ āϏāϰāĻžāϏāϰāĻŋ āĻāĻ āĻ āĻŦāĻā§āĻā§āĻāĻāĻŋ āĻĨāĻžāĻāĻžāϰ āύāĻŋāĻļā§āĻāϝāĻŧāϤāĻžāϰ āĻāύā§āϝ āĻāĻžāĻ āĻāϰāĻŦā§āĨ¤ āĻ āĻŦāĻā§āĻā§āĻ āϤā§āϰāĻŋ āĻāϰ⧠āĻāĻĒāύāĻŋ āϏāĻžāϧāĻžāϰāĻŖāϤ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āϏāĻŋāϏā§āĻā§āĻŽāĻā§ āĻŦāϞ⧠āĻĻāĻŋāĻā§āĻā§āύ āϝ⧠āĻāĻĒāύāĻžāϰ āĻā§āϞāĻžāϏā§āĻāĻžāϰā§āϰ āĻāϝāĻŧāĻžāϰā§āĻāϞā§āĻĄ āĻāĻŋ āĻšāĻŦā§; āĻāĻāĻž āĻšāϞ āĻāĻĒāύāĻžāϰ āĻā§āϞāĻžāϏā§āĻāĻžāϰā§āϰ āĻāĻžāĻā§āĻā§āώāĻŋāϤ āĻ āĻŦāϏā§āĻĨāĻžāĨ¤
āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āĻ
āĻŦāĻā§āĻā§āĻāĻā§āϞāĻŋāϰ āϏāĻžāĻĨā§ āĻāĻžāĻ āĻāϰāϤ⧠- āϤāĻž āϤā§āϰāĻŋ, āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻāϰāϤ⧠āĻŦāĻž āĻŽā§āĻāϤ⧠- āĻāĻĒāύāĻžāϰ
āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ API āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāϤ⧠āĻšāĻŦā§āĨ¤ āĻāĻĻāĻžāĻšāϰāĻŖāϏā§āĻŦāϰā§āĻĒ,
āϝāĻāύ āĻāĻĒāύāĻŋ kubectl
āĻāĻŽāĻžāύā§āĻĄ-āϞāĻžāĻāύ āĻāύā§āĻāĻžāϰāĻĢā§āϏ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§āύ, āϤāĻāύ CLI āĻāĻĒāύāĻžāϰ āĻāύā§āϝ āĻĒā§āϰāϝāĻŧā§āĻāύā§āϝāĻŧ
āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ API āĻāϞ āĻāϰā§āĨ¤ āĻāĻĒāύāĻŋ āĻāĻāĻāĻŋ
Client Libraries āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āύāĻŋāĻā§āϰ āĻĒā§āϰā§āĻā§āϰāĻžāĻŽā§ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ API āϏāϰāĻžāϏāϰāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāϤ⧠āĻĒāĻžāϰā§āύāĨ¤
āĻ āĻŦāĻā§āĻā§āĻ āϏā§āĻĒā§āĻ āĻāĻŦāĻ āϏā§āĻā§āϝāĻžāĻāĻžāϏ
āĻĒā§āϰāĻžāϝāĻŧ āϏāĻŦ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āĻ
āĻŦāĻā§āĻā§āĻā§āϰ āĻāĻāĻāĻŋ spec
āĻāĻŦāĻ āĻāĻāĻāĻŋ status
āύā§āϏā§āĻā§āĻĄ āĻ
āĻŦāĻā§āĻā§āĻ āĻĢāĻŋāϞā§āĻĄ āϰāϝāĻŧā§āĻā§
āϝāĻž āĻ
āĻŦāĻā§āĻā§āĻā§āϰ āĻāύāĻĢāĻŋāĻāĻžāϰā§āĻļāύ āύāĻŋāϝāĻŧāύā§āϤā§āϰāĻŖ āĻāϰā§: āĻ
āĻŦāĻā§āĻā§āĻā§āϰ spec
āĻāĻŦāĻ status
āĨ¤
āϝ⧠āĻ
āĻŦāĻā§āĻā§āĻāĻā§āϞāĻŋāϰ spec
āĻĨāĻžāĻā§, āĻāĻĒāύāĻžāϰ āĻ
āĻŦāĻā§āĻā§āĻ āϤā§āϰāĻŋ āĻāϰāϤ⧠āĻāĻāĻž āύāĻŋāϰā§āϧāĻžāϰāĻŖ āĻāϰāϤ⧠āĻšāĻŦā§
āϝāĻāύ āĻ
āĻŦāĻā§āĻā§āĻ āϤā§āϰāĻŋ āĻāϰāĻŦā§āύ,
āϝ⧠āϰāĻŋāϏā§āϰā§āϏā§āϰ āĻŦā§āĻļāĻŋāώā§āĻā§āϝ āĻŦāϰā§āĻŖāύāĻž āĻĒā§āϰāĻĻāĻžāύ āĻāϰāĻŦā§āύ: āĻāϰ āĻāĻžāĻā§āĻā§āώāĻŋāϤ āĻ
āĻŦāϏā§āĻĨāĻžāĨ¤
status
āĻ
āĻŦāĻā§āĻā§āĻā§āϰ āĻŦāϰā§āϤāĻŽāĻžāύ āĻ
āĻŦāϏā§āĻĨāĻž āĻŦāϰā§āĻŖāύāĻž āĻāϰā§, āϝāĻž āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āϏāĻŋāϏā§āĻā§āĻŽ āĻāĻŦāĻ āĻāϰ āĻāĻĒāĻžāĻĻāĻžāύāĻā§āϞāĻŋ
āĻĒā§āϰāĻĻāĻžāύ āĻāĻŦāĻ āĻāĻĒāĻĄā§āĻ āĻāϰā§āĨ¤ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ
control plane
āϏāϰāĻžāϏāϰāĻŋ āĻāĻŦāĻ āϏāĻā§āϰāĻŋāϝāĻŧāĻāĻžāĻŦā§ āĻĒā§āϰāϤāĻŋāĻāĻŋ āĻ
āĻŦāĻā§āĻā§āĻā§āϰ
āĻŦāϰā§āϤāĻŽāĻžāύ āĻ
āĻŦāϏā§āĻĨāĻž āĻĒāϰāĻŋāĻāĻžāϞāύāĻž āĻāϰ⧠āϝāĻžāϤ⧠āĻāĻĒāύāĻžāϰ āĻĒā§āϰāĻĻāϤā§āϤ āĻ
āĻŦāϏā§āĻĨāĻž āĻŽāĻŋāϞā§āĨ¤
āĻāĻĻāĻžāĻšāϰāĻŖāϏā§āĻŦāϰā§āĻĒ: āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏā§, āĻāĻāĻāĻŋ āĻĄāĻŋāĻĒā§āϞāϝāĻŧāĻŽā§āύā§āĻ āĻāĻāĻāĻŋ āĻ
āĻŦāĻā§āĻā§āĻ āϝāĻž āĻāĻĒāύāĻžāϰ āĻā§āϞāĻžāϏā§āĻāĻžāϰ⧠āĻāϞāĻŽāĻžāύ āĻāĻāĻāĻŋ
āĻ
ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύ āĻĒā§āϰāϤāĻŋāύāĻŋāϧāĻŋāϤā§āĻŦ āĻāϰāϤ⧠āĻĒāĻžāϰā§āĨ¤ āĻĄāĻŋāĻĒā§āϞāϝāĻŧāĻŽā§āύā§āĻ āϤā§āϰāĻŋ āĻāϰāϤ⧠āϝāĻāύ āĻāĻĒāύāĻŋ
āĻĄāĻŋāĻĒā§āϞāϝāĻŧāĻŽā§āύā§āĻ āϤā§āϰāĻŋ āĻāϰā§āύ, āĻāĻĒāύāĻŋ āĻĄāĻŋāĻĒā§āϞāϝāĻŧāĻŽā§āύā§āĻ spec
āϏā§āĻ āĻāϰāϤ⧠āĻĒāĻžāϰā§āύ āϝā§
āĻāĻĒāύāĻŋ āĻāĻžāĻāĻā§āύ āĻ
ā§āϝāĻžāĻĒā§āϞāĻŋāĻā§āĻļāύā§āϰ āϤāĻŋāύāĻāĻŋ āϰāĻŋāĻĒā§āϞāĻŋāĻāĻž āĻāϞāĻŽāĻžāύ āĻĨāĻžāĻā§āĻāĨ¤
āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āϏāĻŋāϏā§āĻā§āĻŽ āĻĄāĻŋāĻĒā§āϞāϝāĻŧāĻŽā§āύā§āĻ āϏā§āĻĒā§āĻ āĻĒāĻĄāĻŧā§ āĻāĻŦāĻ āĻāĻĒāύāĻžāϰ āĻĒā§āϰāĻĻāϤā§āϤ āĻĄāĻŋāĻĒā§āϞāϝāĻŧāĻŽā§āύā§āĻ
āĻāϰ āϤāĻŋāύāĻāĻŋ āĻāύāϏā§āĻā§āϝāĻžāύā§āϏ āĻāĻžāϞ⧠āĻāϰā§, āĻāĻ āϏā§āĻā§āϝāĻžāĻāĻžāϏ āĻāĻĒāύāĻžāϰ āϏā§āĻĒā§āĻ āĻ
āύā§āϏāĻžāϰ⧠āĻāĻĒāĻĄā§āĻ āĻāϰā§āĨ¤
āϝāĻĻāĻŋ āϏā§āĻ āĻāύāϏā§āĻā§āϝāĻžāύā§āϏāĻā§āϞā§āϰ āĻŽāϧā§āϝ⧠āĻā§āύāĻāĻāĻŋ āĻŦā§āϝāϰā§āĻĨ āĻšāϝāĻŧ (āĻāĻāĻāĻŋ āϏā§āĻā§āϝāĻžāĻāĻžāϏ āĻĒāϰāĻŋāĻŦāϰā§āϤāύ),
āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āϏāĻŋāϏā§āĻā§āĻŽ āϏā§āĻĒā§āĻ āĻāĻŦāĻ āϏā§āĻā§āϝāĻžāĻāĻžāϏ āĻŽāϧā§āϝ⧠āĻĒāĻžāϰā§āĻĨāĻā§āϝā§āϰ āĻĒā§āϰāϤāĻŋāĻā§āϰāĻŋāϝāĻŧāĻž āĻĻāĻŋāϝāĻŧā§ āĻāĻāĻāĻŋ
āϏāĻāĻļā§āϧāύ āĻāϰ⧠āĻāĻ āĻā§āώā§āϤā§āϰā§, āĻāĻāĻāĻŋ āĻĒā§āϰāϤāĻŋāϏā§āĻĨāĻžāĻĒāύ āĻāύāϏā§āĻā§āϝāĻžāύā§āϏ āĻāĻžāϞ⧠āĻāϰā§āĨ¤
āĻŦāĻŋāϏā§āϤāĻžāϰāĻŋāϤ āϤāĻĨā§āϝā§āϰ āĻāύā§āϝ āĻ āĻŦāĻā§āĻā§āĻ āϏā§āĻĒā§āĻ, āϏā§āĻā§āϝāĻžāĻāĻžāϏ āĻāĻŦāĻ āĻŽā§āĻāĻžāĻĄā§āĻāĻž āĻĻā§āĻā§āύ, Kubernetes API Conventions.
āĻāĻāĻāĻŋ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āĻ āĻŦāĻā§āĻā§āĻ āĻŦāϰā§āĻŖāύāĻž
āϝāĻāύ āĻāĻĒāύāĻŋ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ⧠āĻāĻāĻāĻŋ āĻ
āĻŦāĻā§āĻā§āĻ āϤā§āϰāĻŋ āĻāϰāĻŦā§āύ, āĻāĻĒāύāĻžāĻā§ āĻ
āĻŦāĻā§āĻā§āĻ spec āĻĒā§āϰāĻĻāĻžāύ āĻāϰāϤ⧠āĻšāĻŦā§
āϝāĻž āĻĻāϰāĻāĻžāϰ āϤāĻžāϰ āĻāĻžāĻā§āĻā§āώāĻŋāϤ āĻ
āĻŦāϏā§āĻĨāĻž āĻŦāϰā§āĻŖāύāĻž āĻāϰ⧠āĻāĻŦāĻ āĻ
āĻŦāĻā§āĻā§āĻ āϏāĻŽā§āĻĒāϰā§āĻā§
āĻāĻŋāĻā§ āĻŽā§āϞāĻŋāĻ āϤāĻĨā§āϝ (āϝā§āĻŽāύ āύāĻžāĻŽ) āĻĒā§āϰāĻĻāĻžāύ āĻāϰāϤ⧠āĻšāĻŦā§āĨ¤ āϝāĻāύ āĻāĻĒāύāĻŋ āĻ
āĻŦāĻā§āĻā§āĻ āϤā§āϰāĻŋ
āĻāϰāϤ⧠āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ API āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§āύ (āĻāĻāĻž āϏāϰāĻžāϏāϰāĻŋ āĻŦāĻž kubectl
āĻāϰ āĻŽāĻžāϧā§āϝāĻŽā§),
āϤāĻāύ āĻ API āĻ
āύā§āϰā§āϧāĻāĻŋ āĻāĻ āϤāĻĨā§āϝāĻā§ āĻāĻāĻāĻŋ JSON āϰāĻŋāĻā§āϝāĻŧā§āϏā§āĻ āĻŦāĻĄāĻŋ āĻšāĻŋāϏā§āĻŦā§ āĻ
āύā§āϤāϰā§āĻā§āĻā§āϤ āĻāϰāϤ⧠āĻšāĻŦā§āĨ¤
āϏāĻžāϧāĻžāϰāĻŖāϤ, āĻāĻĒāύāĻŋ āĻāĻāĻāĻŋ manifest āύāĻžāĻŽā§ āĻĒāϰāĻŋāĻāĻŋāϤ āĻĢāĻžāĻāϞ⧠kubectl āĻā§ āϤāĻĨā§āϝ āĻĒā§āϰāĻĻāĻžāύ āĻāϰā§āύāĨ¤ āύāĻŋāϝāĻŧāĻŽ āĻ
āύā§āϏāĻžāϰā§, āĻŽā§āϝāĻžāύāĻŋāĻĢā§āϏā§āĻ āĻšāϞ YAML (āĻāĻĒāύāĻŋ JSON
āĻĢāϰāĻŽā§āϝāĻžāĻāĻ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāϤ⧠āĻĒāĻžāϰā§āύ)āĨ¤ HTTP-āĻāϰ āĻŽāĻžāϧā§āϝāĻŽā§ API āĻ
āύā§āϰā§āϧ āĻāϰāĻžāϰ āϏāĻŽāϝāĻŧ āĻā§āϞ āϝā§āĻŽāύ kubectl āĻāĻāĻāĻŋ āĻŽā§āϝāĻžāύāĻŋāĻĢā§āϏā§āĻ āĻĨā§āĻā§ āϤāĻĨā§āϝāĻā§ JSON āĻŦāĻž āĻ
āύā§āϝ
āϏāĻŽāϰā§āĻĨāĻŋāϤ āϏāĻŋāϰāĻŋāϝāĻŧāĻžāϞāĻžāĻāĻā§āĻļāύ āĻĢāϰāĻŽā§āϝāĻžāĻā§ āϰā§āĻĒāĻžāύā§āϤāϰ āĻāϰā§āĨ¤
āĻāĻāĻžāύ⧠āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāϰāĻŖ āĻŽā§āϝāĻžāύāĻŋāĻĢā§āϏā§āĻ āĻĻā§āĻāϝāĻŧāĻž āĻšāϞ āĻāĻāĻāĻŋ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āĻĄāĻŋāĻĒā§āϞāϝāĻŧāĻŽā§āύā§āĻā§āϰ āĻāύā§āϝ āĻĒā§āϰāϝāĻŧā§āĻāύā§āϝāĻŧ āĻā§āώā§āϤā§āϰāĻā§āϞāĻŋ āĻāĻŦāĻ āĻ āĻŦāĻā§āĻā§āĻ āϏā§āĻĒā§āĻā§āϰ āĻāύā§āϝā§āϰ āĻāĻāĻāĻŋ āύāĻŽā§āύāĻž:
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
spec:
selector:
matchLabels:
app: nginx
replicas: 2 # āĻĄāĻŋāĻĒā§āϞā§āĻŽā§āύā§āĻāĻā§ āĻā§āĻŽāĻĒā§āϞā§āĻā§āϰ āϏāĻžāĻĨā§ āĻŽāĻŋāϞ⧠āϝāĻžāĻāϝāĻŧāĻž 2āĻāĻŋ āĻĒāĻĄ āĻāĻžāϞāĻžāϤ⧠āĻŦāϞā§
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80
āĻāĻāĻāĻŋ āĻāĻĒāϰā§āϰ āĻŽāϤ⧠āĻŽā§āϝāĻžāύāĻŋāĻĢā§āϏā§āĻ āĻĢāĻžāĻāϞ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻāĻāĻāĻŋ āĻĄāĻŋāĻĒā§āϞāϝāĻŧāĻŽā§āύā§āĻ āϤā§āϰāĻŋ āĻāϰāĻžāϰ āĻāĻāĻāĻŋ āĻāĻĒāĻžāϝāĻŧ āĻšāϞ
kubectl apply
āĻāĻŽāĻžāύā§āĻĄ āĻŦā§āϝāĻŦāĻšāĻžāϰ
āĻāϰāĻž, kubectl
āĻāϰ āĻāĻŽāĻžāύā§āĻĄ-āϞāĻžāĻāύ āĻāύā§āĻāĻžāϰāĻĢā§āϏ⧠yaml
āĻĢāĻžāĻāϞāĻāĻŋ āĻāϰā§āĻā§āĻŽā§āύā§āĻ āĻšāĻŋāϏā§āĻŦā§ āĻĒāĻžāĻ āĻžāύā§āĨ¤ āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāϰāĻŖ:
kubectl apply -f https://k8s.io/examples/application/deployment.yaml
āĻāĻāĻāĻĒā§āĻ āĻāϰ āĻ āύā§āϰā§āĻĒ:
deployment.apps/nginx-deployment created
āĻĒā§āϰāϝāĻŧā§āĻāύā§āϝāĻŧ āĻā§āώā§āϤā§āϰ
āĻāĻĒāύāĻžāϰ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āĻ āĻŦāĻā§āĻā§āĻ āĻāϰ āĻāύā§āϝ āĻŽā§āϝāĻžāύāĻŋāĻĢā§āϏā§āĻ (YAML āĻŦāĻž JSON āĻĢāĻžāĻāϞ) āĻ āύāĻŋāĻŽā§āύāϞāĻŋāĻāĻŋāϤ āĻā§āώā§āϤā§āϰāĻā§āϞāĻŋāϰ āĻāύā§āϝ āĻŽāĻžāύ āύāĻŋāϰā§āϧāĻžāϰāĻŖ āĻāϰāϤ⧠āĻšāĻŦā§:
apiVersion
- āĻāĻĒāύāĻŋ āĻā§āύ āĻāĻžāϰā§āϏāύā§āϰ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ API āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻā§āύ āϤāĻž āĻāϞā§āϞā§āĻ āĻāϰāϤ⧠āĻšāĻŦā§kind
- āĻāĻĒāύāĻŋ āĻā§āύ āϧāϰāύā§āϰ āĻ āĻŦāĻā§āĻā§āĻ āϤā§āϰāĻŋ āĻāϰāϤ⧠āĻāĻžāύ āϤāĻž āĻāϞā§āϞā§āĻ āĻāϰāϤ⧠āĻšāĻŦā§metadata
- āĻ āĻŦāĻā§āĻā§āĻ āϝ⧠āϏāĻžāĻšāĻžāϝā§āϝ āĻāϰ⧠āĻ āύāύā§āϝāĻāĻžāĻŦā§ āϏāύāĻžāĻā§āϤ āĻāϰāĻž āϝāĻžāϝāĻŧ, āϝā§āĻŽāύname
āϏā§āĻā§āϰāĻŋāĻ,UID
, āĻāĻŦāĻ āĻāĻā§āĻāĻŋāĻnamespace
spec
- āĻ āĻŦāĻā§āĻā§āĻā§āϰ āĻāύā§āϝ āĻāĻĒāύāĻŋ āĻāĻŋ āĻ āĻŦāϏā§āĻĨāĻž āĻāĻžāύ
āĻ āĻŦāĻā§āĻā§āĻ spec āϏā§āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āĻĢāϰāĻŽā§āϝāĻžāĻ āĻĒā§āϰāϤāĻŋāĻāĻŋ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āĻ āĻŦāĻā§āĻā§āĻā§āϰ āĻāύā§āϝ āĻāϞāĻžāĻĻāĻž, āĻāĻŦāĻ āϏā§āĻ āĻŦāϏā§āϤā§āϰ āĻāύā§āϝ āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āύā§āϏā§āĻā§āĻĄ āĻā§āώā§āϤā§āϰ āϰāϝāĻŧā§āĻā§āĨ¤ Kubernetes API āϰā§āĻĢāĻžāϰā§āύā§āϏ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻāĻĒāύāĻŋ āϝ⧠āϏāĻŽāϏā§āϤ āĻ āĻŦāĻā§āĻā§āĻ āϤā§āϰāĻŋ āĻāϰāϤ⧠āĻĒāĻžāϰā§āύ āϤāĻžāϰ āĻāύā§āϝ āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āĻĢāϰāĻŽā§āϝāĻžāĻ āĻā§āĻāĻā§ āĻĒā§āϤ⧠āϏāĻžāĻšāĻžāϝā§āϝ āĻāϰāϤ⧠āĻĒāĻžāϰā§āĨ¤
āĻāĻĻāĻžāĻšāϰāĻŖāϏā§āĻŦāϰā§āĻĒ, āĻĻā§āĻā§āύ spec
āĻĢāĻŋāϞā§āĻĄ
Pod API āϰā§āĻĢāĻžāϰā§āύā§āϏ āĻāϰ āĻāύā§āϝāĨ¤
āĻĒā§āϰāϤāĻŋāĻāĻŋ Pod āĻāϰ āĻāύā§āϝ, .spec
āĻā§āώā§āϤā§āϰāĻāĻŋ āĻĒāĻĄ āĻāĻŦāĻ āϤāĻžāϰ āĻāĻžāĻā§āĻā§āώāĻŋāϤ āĻ
āĻŦāϏā§āĻĨāĻž (āϝā§āĻŽāύ āϏā§āĻ āĻĒāĻĄā§āϰ āĻŽāϧā§āϝ⧠āĻĒā§āϰāϤāĻŋāĻāĻŋ āĻāύā§āĻā§āĻāύāĻžāϰā§āϰ āĻāύā§āϝ āĻāύā§āĻā§āĻāύāĻžāϰ āĻāĻŽā§āĻā§āϰ āύāĻžāĻŽ)
āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āĻāϰā§ā§ˇ
āĻāϰāĻ āĻāĻāĻāĻŋ āĻ
āĻŦāĻā§āĻā§āĻ āϏā§āĻĒā§āϏāĻŋāĻĢāĻŋāĻā§āĻļāύā§āϰ āĻāĻĻāĻžāĻšāϰāĻŖ āĻšāϞ
spec
āĻĢāĻŋāϞā§āĻĄ
StatefulSet API āĻāϰ āĻāύā§āϝāĨ¤ StatefulSet āĻāϰ āĻāύā§āϝ, .spec
āĻĢāĻŋāϞā§āĻĄ āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āĻāϰ⧠āĻāĻŦāĻ āϏā§āĻ āĻāϰā§
āĻāϰ āĻ
āĻŦāϏā§āĻĨāĻžāĨ¤
StatefulSet āĻāϰ .spec
āĻāϰ āĻŽāϧā§āϝ⧠āĻāĻāĻāĻŋ āĻā§āĻŽāĻĒā§āϞā§āĻ
āĻĒāĻĄ āĻ
āĻŦāĻā§āĻā§āĻā§āϰ āĻāύā§āϝ āĨ¤ āϏā§āĻ āĻā§āĻŽāĻĒā§āϞā§āĻāĻāĻŋ Pods āĻŦāϰā§āĻŖāύāĻž āĻāϰ⧠āϝāĻž
StatefulSet āĻāύā§āĻā§āϰā§āϞāĻžāϰ āϏā§āĻā§āĻāĻĢā§āϞāϏā§āĻ āϏā§āĻĒā§āϏāĻŋāĻĢāĻŋāĻā§āĻļāύ āϏāύā§āϤā§āώā§āĻ āĻāϰāĻžāϰ āĻāύā§āϝ āϤā§āϰāĻŋ āĻāϰāĻŦā§āĨ¤
āĻ
āύā§āϝāĻžāύā§āϝ āĻĒā§āϰāĻāĻžāϰā§āϰ āĻ
āĻŦāĻā§āĻā§āĻ āĻā§āϞāĻŋāϰ āĻāύā§āϝ āĻŦāĻŋāĻāĻŋāύā§āύ .status
āĻĨāĻžāĻāϤ⧠āĻĒāĻžāϰā§; āĻāĻŦāĻžāϰ, API āϰā§āĻĢāĻžāϰā§āύā§āϏ āĻĒā§āώā§āĻ āĻžāĻā§āϞāĻŋ
āĻāĻ .status
āĻĢāĻŋāϞā§āĻĄā§āϰ āĻāĻ āύ āĻāĻŦāĻ āĻāϰ āĻĒā§āϰāϤā§āϝā§āĻ āĻŦāĻŋāĻāĻŋāύā§āύ āĻĒā§āϰāĻāĻžāϰā§āϰ āĻ
āĻŦāĻā§āĻā§āĻā§āϰ āĻāύā§āϝ āϤāĻžāϰ āĻŦāĻŋāώāϝāĻŧāĻŦāϏā§āϤ⧠āĻŦāĻŋāĻŦāϰāĻŖ āĻāϰā§āĨ¤
āĻŦāĻŋāĻāĻĻā§āϰāĻ:
YAML āĻāύāĻĢāĻŋāĻāĻžāϰā§āĻļāύ āĻĢāĻžāĻāϞ āϞā§āĻāĻžāϰ āĻ āϤāĻŋāϰāĻŋāĻā§āϤ āϤāĻĨā§āϝā§āϰ āĻāύā§āϝ āĻāύāĻĢāĻŋāĻāĻžāϰā§āĻļāύ āϏā§āϰāĻž āĻ āύā§āĻļā§āϞāύ āĻĻā§āĻā§āύāĨ¤āϏāĻžāϰā§āĻāĻžāϰ āϏāĻžāĻāĻĄ āĻĢāĻŋāϞā§āĻĄ āĻā§āϰāĻŋāĻĢāĻŋāĻā§āĻļāύ
āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ v1.25 āĻĨā§āĻā§ āĻļā§āϰ⧠āĻāϰā§, API āϏāĻžāϰā§āĻāĻžāϰ āϏāĻžāϰā§āĻāĻžāϰ āϏāĻžāĻāĻĄ
field validation
āϝāĻž āĻ
āĻŦā§āϝāĻā§āϤ āĻŦāĻž āĻĒā§āύāϰāĻžāϝāĻŧ āĻĢāĻŋāϞā§āĻĄ āĻ
āύā§āĻŽāĻžāύ āĻāϰ⧠āĻāĻāĻāĻŋ āĻ
āĻŦāĻā§āĻā§āĻā§āĨ¤ āĻāĻāĻŋ āϏāĻŽāϏā§āϤ āĻāĻžāϰā§āϝāĻāĻžāϰāĻŋāϤāĻž āĻĒā§āϰāĻĻāĻžāύ āĻāϰā§
kubectl --validate
āĻāϰ āϏāĻžāϰā§āĻāĻžāϰ āϏāĻžāĻāĻĄ āĻ āĻāϰā§āĻŽāĻā§āώāĻŽāϤāĻžāĨ¤
kubectl
āĻā§āϞāĻāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠--validate
āĻĢā§āϞā§āϝāĻžāĻ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻĢāĻŋāϞā§āĻĄ āĻā§āϰāĻŋāĻĢāĻŋāĻā§āĻļāύā§āϰ āϏā§āϤāϰ āϏā§āĻ āĻāϰā§āĨ¤ āĻāĻāĻŋ āĻā§āϰāĻšāĻŖ āĻāϰā§
āĻŽāĻžāύ ignore
, warn
, āĻāĻŦāĻ strict
āĻāĻŦāĻ āĻāĻāĻŋ true
(strict
āĻāϰ āϏāĻŽāĻžāύ)
āĻāĻŦāĻ false
( ignore
āĻāϰ āϏāĻŽāĻžāύ) āĻŽāĻžāύ āĻā§āϰāĻšāĻŖ āĻāϰā§āĨ¤ kubectl
āĻāϰ āĻĄāĻŋāĻĢāϞā§āĻ āĻā§āϰāĻŋāĻĢāĻŋāĻā§āĻļāύ āϏā§āĻāĻŋāĻ āĻšāϞ --validate=true
āĨ¤
Strict
- Strict āĻĢāĻŋāϞā§āĻĄ āĻā§āϰāĻŋāĻĢāĻŋāĻā§āĻļāύ, āĻā§āϰāĻŋāĻĢāĻŋāĻā§āĻļāύ āĻŦā§āϝāϰā§āĻĨ āĻšāĻāϝāĻŧāĻžāϝāĻŧ errors āĻĻā§āĻāĻžā§
Warn
- āĻĢāĻŋāϞā§āĻĄ āĻā§āϰāĻŋāĻĢāĻŋāĻā§āĻļāύ āĻāϰāĻž āĻšāϝāĻŧ, āĻāĻŋāύā§āϤ⧠errors āĻā§āϞāĻŋ āĻ āύā§āϰā§āϧ āĻŦā§āϝāϰā§āĻĨ āĻšāĻāϝāĻŧāĻžāϰ āĻĒāϰāĻŋāĻŦāϰā§āϤ⧠āϏāϤāϰā§āĻāϤāĻž āĻšāĻŋāϏāĻžāĻŦā§ āĻĒā§āϰāĻāĻžāĻļ āĻāϰāĻž āĻšāϝāĻŧ
Ignore
- āĻā§āύ⧠āϏāĻžāϰā§āĻāĻžāϰ āϏāĻžāĻāĻĄ āĻĢāĻŋāϞā§āĻĄ āĻā§āϰāĻŋāĻĢāĻŋāĻā§āĻļāύ āĻāϰāĻž āĻšāϝāĻŧ āύāĻž
āϝāĻāύ kubectl
āĻāϰ āĻāĻāĻāĻŋ API āϏāĻžāϰā§āĻāĻžāϰ⧠āϏāĻāϝā§āĻ āĻāϰāϤ⧠āĻĒāĻžāϰ⧠āύāĻž āϝ⧠āĻā§āύ āĻĢāĻŋāϞā§āĻĄ āĻā§āϰāĻŋāĻĢāĻŋāĻā§āĻļāύ āϏāĻžāĻĒā§āϰā§āĻ āĻāϰ⧠āϤāĻāύ āĻāĻāĻŋ āĻĢā§āϞ⧠āϝāĻžāϝāĻŧ
āĻā§āϞāĻžāϝāĻŧā§āύā§āĻ-āϏāĻžāĻāĻĄ āĻā§āϰāĻŋāĻĢāĻŋāĻā§āĻļāύ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻž āĻšāϝāĻŧāĨ¤ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ 1.27 āĻāĻŦāĻ āϤāĻžāϰāĻĒāϰā§āϰ āϏāĻāϏā§āĻāϰāĻŖ āϏāĻŦāϏāĻŽāϝāĻŧ āĻĢāĻŋāϞā§āĻĄ āĻā§āϰāĻŋāĻĢāĻŋāĻā§āĻļāύ āĻĒā§āϰāĻĻāĻžāύ āĻāϰā§;
āĻĒā§āϰāĻžāϤāύ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āϰāĻŋāϞāĻŋāϏā§āĻā§āϞāĻŋāϤ⧠āĻāĻāĻŋ āĻšāϤ⧠āĻĒāĻžāϰ⧠āύāĻžāĨ¤ āϝāĻĻāĻŋ āĻāĻĒāύāĻžāϰ āĻā§āϞāĻžāϏā§āĻāĻžāϰ v1.27 āĻāϰ āĻā§āϝāĻŧā§ āĻĒā§āϰāĻžāύ⧠āĻšāϝāĻŧ āϤāĻŦā§ āĻāĻĒāύāĻžāϰ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ
āϏāĻāϏā§āĻāϰāĻŖā§āϰ āĻāύā§āϝ āĻĄāĻā§āĻŽā§āύā§āĻā§āĻļāύ āĻā§āĻ āĻāϰā§āύāĨ¤
āĻāϰ āĻĒāϰā§āϰ āĻāĻŋ
āϝāĻĻāĻŋ āĻāĻĒāύāĻŋ āύāϤā§āύ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ⧠āĻāϏā§āĻā§āύ, āϤāĻžāĻšāϞ⧠āύāĻŋāĻŽā§āύāϞāĻŋāĻāĻŋāϤ āĻŦāĻŋāώāϝāĻŧāĻā§āϞāĻŋ āϏāĻŽā§āĻĒāϰā§āĻā§ āĻāϰ⧠āĻĒāĻĄāĻŧā§āύ:
- Pods āϝāĻž āĻšāϞ⧠āϏāĻŦāĻā§āϝāĻŧā§ āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āĻŖ āĻŽā§āϞāĻŋāĻ āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āĻ āĻŦāĻā§āĻā§āĻāĨ¤
- Deployment āĻ āĻŦāĻā§āĻā§āĻāĻā§āϞāĻŋāĨ¤
- Controllers āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏā§āĨ¤
- kubectl āĻāĻŦāĻ kubectl āĻāĻŽāĻžāύā§āĻĄāĨ¤
āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ āĻ
āĻŦāĻā§āĻā§āĻ āĻŽā§āϝāĻžāύā§āĻāĻŽā§āύā§āĻ
kubectl
āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āĻ
āĻŦāĻā§āĻā§āĻ āĻĒāϰāĻŋāĻāĻžāϞāύāĻž āĻāϰāĻžāϰ āĻāĻĒāĻžāϝāĻŧāĻā§āϞāĻŋ āĻŦāĻŋāϏā§āϤāĻžāϰāĻŋāϤ āĻāĻžāĻŦā§ āĻŦāϰā§āĻŖāύāĻž āĻāϰā§āĨ¤
āĻāĻĒāύāĻžāϰ āĻāĻžāĻā§ āϝāĻĻāĻŋ āĻāĻā§ āĻĨā§āĻā§ āύāĻž āĻĨāĻžāĻā§ āϤāĻžāĻšāϞ⧠kubectl āĻāύāϏā§āĻāϞ āĻāϰā§āύāĨ¤
āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ API āϏāĻžāϧāĻžāϰāĻŖāĻāĻžāĻŦā§ āϏāĻŽā§āĻĒāϰā§āĻā§ āĻāĻžāύāϤā§, āĻĒāĻĄāĻŧā§āύ:
āĻā§āĻŦāĻžāϰāύā§āĻāĻŋāϏ⧠āĻ āĻŦāĻā§āĻā§āĻāĻā§āϞāĻŋāϰ āĻŦāĻŋāϏā§āϤāĻžāϰāĻŋāϤ āĻāĻžāύāϤā§, āĻāĻ āĻŦāĻŋāĻāĻžāĻā§ āĻ āύā§āϝāĻžāύā§āϝ āĻĒā§āώā§āĻ āĻžāĻā§āϞāĻŋ āĻĒāĻĄāĻŧā§āύ: