TL; āĻĄāĻŋāĻāĻ°
- āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ° āĻāĻŦāĻ āĻŽāĻžāĻāĻā§āĻ°ā§āĻ¸āĻžāĻ°ā§āĻāĻŋāĻ¸ā§āĻ° āĻāĻā§āĻ āĻĒāĻ°ā§āĻ¯āĻŦā§āĻā§āĻˇāĻŖāĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ āĻ°ā§āĻāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻ˛āĻ āĻāĻŦāĻ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ āĻŽā§āĻā§āĻ°āĻŋāĻā§āĻ¸ āĻ¯āĻĨā§āĻˇā§āĻ āĻ¨āĻ¯āĻŧāĨ¤
- āĻĻā§āĻ°ā§āĻ¤ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻāĻŦāĻ āĻŦāĻ°ā§āĻ§āĻŋāĻ¤ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻāĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻāĻā§āĻ āĻĒāĻ°ā§āĻ¯āĻŦā§āĻā§āĻˇāĻŖā§āĻ° āĻ¨ā§āĻ¤āĻŋ (HOP) āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤āĨ¤
- āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¸ā§āĻ¤āĻ°ā§, NOP-āĻāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨: āĻ¸āĻ āĻŋāĻ āĻ˛āĻāĻŋāĻ, āĻ¨āĻŋāĻŦāĻŋāĻĄāĻŧ āĻĒāĻ°ā§āĻ¯āĻŦā§āĻā§āĻˇāĻŖ, āĻ¸ā§āĻ¯āĻžāĻ¨āĻŋāĻā§ āĻā§āĻ āĻāĻŦāĻ āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž/āĻā§āĻ°āĻžāĻ¨āĻāĻŋāĻļāĻ¨ āĻā§āĻ°ā§āĻ¸āĻŋāĻāĨ¤
- NOR āĻāĻ° āĻāĻāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĻŋāĻĒā§āĻ°āĻŦāĻŖ и āĻ˛āĻžāĻāĻāĻ¨ā§āĻ¸ āĻĒā§āĻ°ā§āĻŦ āĻā§āĻŦāĻžāĻ°āĻ¨ā§āĻāĻ¸āĨ¤
āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ āĻāĻŋ?
āĻāĻāĻāĻŋ āĻŽāĻŋāĻļāĻ¨-āĻ¸āĻŽāĻžāĻ˛ā§āĻāĻ¨āĻžāĻŽā§āĻ˛āĻ āĻāĻŦāĻ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¸āĻšāĻ¨āĻļā§āĻ˛āĻ¤āĻžāĻ° āĻŽāĻ¤ā§ āĻāĻāĻāĻŋ āĻĻāĻŋāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻŋāĻ¨ā§āĻ¤āĻž āĻāĻ°āĻž āĻā§āĻŦāĻ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖāĨ¤ āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¸āĻšāĻ¨āĻļā§āĻ˛ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž āĻĨā§āĻā§ āĻĻā§āĻ°ā§āĻ¤ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻāĻ°ā§āĨ¤ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻā§āĻ˛āĻžāĻāĻĄ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻāĻāĻāĻŋ āĻŽāĻžāĻāĻā§āĻ°ā§āĻ¸āĻžāĻ°ā§āĻāĻŋāĻ¸ā§āĻ¸ āĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ - āĻ¯ā§āĻāĻžāĻ¨ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ āĻĒāĻžāĻ¤ā§āĻ°ā§ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻŦāĻ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨ āĻ¤āĻāĻ¨ k8s-āĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻĒāĻ˛āĻā§āĻ¯ āĻšāĻ¯āĻŧ āĻ¤āĻž āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻžāĻā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¨āĻŋāĻĻāĻ°ā§āĻļāĻ¨ āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻ¤āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻā§āĻŽāĻĒā§āĻ˛ā§āĻāĨ¤ āĻāĻāĻŋ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°ā§ āĻāĻŋāĻāĻžāĻŦā§ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋ k8s-āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻāĻžāĻ¯ā§āĻ āĻāĻ°ā§ āĻ¯ā§ āĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯āĻāĻ°āĨ¤ āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒāĻĄ āĻāĻ˛āĻā§ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻ¨āĻ¯āĻŧ, āĻāĻāĻŋ āĻā§āĻāĻžāĻŦā§ āĻ āĻ¨ā§āĻ°ā§āĻ§āĻā§āĻ˛āĻŋ āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§ āĻāĻŦāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻžāĻ¨āĻžāĻ¯āĻŧ āĻ¸ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§āĻāĨ¤ āĻā§āĻŦāĻžāĻ°āĻ¨ā§āĻāĻ¸ āĻĒāĻĄā§āĻ° āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¯āĻ¤ āĻŦā§āĻļāĻŋ āĻāĻžāĻ¨ā§āĻ¨, āĻā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻ āĻ°āĻžāĻāĻāĻŋāĻ āĻāĻŦāĻ āĻ˛ā§āĻĄ āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻŋāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻāĻŋ āĻ¤āĻ¤ āĻŦā§āĻļāĻŋ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨ā§āĻ¯āĻŧāĨ¤ āĻāĻāĻāĻžāĻŦā§, āĻāĻā§āĻ āĻĒāĻ°ā§āĻ¯āĻŦā§āĻā§āĻˇāĻŖā§āĻ° āĻ¨ā§āĻ¤āĻŋ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻ¸āĻŽāĻ¯āĻŧāĻŽāĻ¤ āĻ āĻ¨ā§āĻ°ā§āĻ§ā§āĻ° āĻāĻ¤ā§āĻ¤āĻ° āĻĻā§āĻāĻ¯āĻŧāĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧāĨ¤
āĻāĻā§āĻ āĻĒāĻ°ā§āĻ¯āĻŦā§āĻā§āĻˇāĻŖā§āĻ° āĻ¨ā§āĻ¤āĻŋ (HOP)
āĻāĻā§āĻ āĻĒāĻ°ā§āĻ¯āĻŦā§āĻā§āĻˇāĻŖā§āĻ° āĻ¨ā§āĻ¤āĻŋ āĻšāĻ˛ āĻāĻāĻāĻŋ
āĻāĻāĻāĻŋ āĻāĻžāĻ˛ āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻāĻ°āĻž āĻā§āĻ˛āĻžāĻāĻĄ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ I/O āĻ¸ā§āĻā§āĻ°ā§āĻŽ STDERR āĻāĻŦāĻ STDOUT āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¤āĻžāĻ° āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻāĻā§āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻ˛āĻ āĻāĻ°ā§āĨ¤ āĻāĻ°āĻĒāĻ°ā§ āĻāĻāĻāĻŋ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻāĻ¸ā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ āĻĢāĻžāĻāĻ˛āĻŦāĻŋāĻ, āĻ˛āĻāĻ¸ā§āĻā§āĻ¯āĻžāĻļ āĻŦāĻž āĻ¸āĻžāĻŦāĻ˛ā§āĻ˛, āĻāĻāĻāĻŋ āĻā§āĻ¨ā§āĻĻā§āĻ°ā§āĻā§āĻ¤ āĻŽāĻ¨āĻŋāĻāĻ°āĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ (āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ āĻĒā§āĻ°āĻŽāĻŋāĻĨāĻŋāĻāĻ¸) āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ˛āĻ āĻ¸āĻāĻā§āĻ°āĻšā§āĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ (ELK āĻ¸āĻĢā§āĻāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻ¸ā§āĻ¯ā§āĻ) āĻ˛āĻ āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°ā§āĨ¤ āĻ¨ā§āĻā§āĻ° āĻāĻŋāĻ¤ā§āĻ°āĻāĻŋ āĻĻā§āĻāĻžāĻ¯āĻŧ āĻ¯ā§ āĻā§āĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻā§āĻ˛āĻžāĻāĻĄ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻāĻā§āĻ āĻĒāĻ°ā§āĻ¯āĻŦā§āĻā§āĻˇāĻŖā§āĻ° āĻ¨ā§āĻ¤āĻŋ āĻ āĻ¨ā§āĻ¸āĻžāĻ°ā§ āĻāĻžāĻ āĻāĻ°ā§āĨ¤
āĻā§āĻŦāĻžāĻ°āĻ¨ā§āĻā§ āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻā§āĻāĻžāĻŦā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻŦā§āĻ¨?
āĻŦāĻžāĻā§āĻ¸ā§āĻ° āĻŦāĻžāĻāĻ°ā§, k8s āĻāĻāĻāĻŋ āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒāĻĄā§āĻ° āĻ
āĻŦāĻ¸ā§āĻĨāĻž āĻĒāĻ°ā§āĻ¯āĻŦā§āĻā§āĻˇāĻŖ āĻāĻ°ā§ (
āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖā§, k8s āĻāĻ°ā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž. āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻ¯āĻžāĻāĻžāĻāĻāĻ°āĻŖā§, āĻā§āĻŦā§āĻ˛ā§āĻ āĻā§āĻ°āĻŽāĻžāĻāĻ¤ āĻĒāĻžāĻ¤ā§āĻ°ā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋāĻ° āĻ
āĻŦāĻ¸ā§āĻĨāĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§āĨ¤ āĻāĻāĻŦāĻžāĻ° āĻ¤āĻŋāĻ¨āĻŋ āĻŦā§āĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻ¯ā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋ āĻŦāĻ¨ā§āĻ§ āĻšāĻ¯āĻŧā§ āĻā§āĻā§, āĻ¤āĻŋāĻ¨āĻŋ āĻāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°āĻŦā§āĻ¨āĨ¤ āĻ¯āĻĻāĻŋ āĻā§āĻŦāĻ˛āĻŽāĻžāĻ¤ā§āĻ° āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°āĻžāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¤ā§āĻ°ā§āĻāĻŋāĻāĻŋ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ, āĻāĻŦāĻ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻāĻŋ āĻ¯ā§ āĻā§āĻ¨āĻ āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¤āĻžāĻšāĻ˛ā§ NOP āĻāĻŦāĻ āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻ
āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻāĻŽāĻžāĻ¤ā§āĻ° āĻĻā§āĻāĻā§āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧ āĻšāĻ˛ āĻ¯ā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°āĻžāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, k8s āĻĒāĻĄā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻāĻŋāĻšā§āĻ¨āĻŋāĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ 2āĻāĻŋ āĻāĻā§āĻ° āĻāĻĒāĻžāĻ¯āĻŧ āĻ
āĻĢāĻžāĻ° āĻāĻ°ā§:
āĻ˛āĻžāĻāĻāĻ¨ā§āĻ¸ āĻĒā§āĻ°ā§āĻŦ
āĻ¸āĻŽāĻ¯āĻŧ āĻ˛āĻžāĻāĻāĻ¨ā§āĻ¸ āĻĒā§āĻ°ā§āĻŦ āĻā§āĻŦā§āĻ˛ā§āĻ 3 āĻ§āĻ°āĻ¨ā§āĻ° āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§: āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒāĻĄ āĻāĻ˛āĻā§ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§ āĻ¨āĻž, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻ āĻ¨ā§āĻ°ā§āĻ§āĻā§āĻ˛āĻŋ āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻ¤ā§ āĻāĻŦāĻ āĻĒāĻ°ā§āĻ¯āĻžāĻĒā§āĻ¤āĻāĻžāĻŦā§ āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻžāĻ¨āĻžāĻ¤ā§ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻāĻŋāĻ¨āĻž āĻ¤āĻžāĻ:
- āĻĒāĻĄā§ āĻāĻāĻāĻŋ HTTP āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°ā§āĻ¨āĨ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋāĻ¤ā§ 200 āĻĨā§āĻā§ 399 āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ HTTP āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻā§āĻĄ āĻĨāĻžāĻāĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻāĻāĻžāĻŦā§, 5xx āĻāĻŦāĻ 4xx āĻā§āĻĄāĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻ¯ā§ āĻĒāĻĄā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻšāĻā§āĻā§, āĻāĻŽāĻ¨āĻāĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋ āĻāĻ˛āĻŽāĻžāĻ¨ āĻĨāĻžāĻāĻ˛ā§āĻāĨ¤
- āĻ¨āĻ¨-HTTP āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻžāĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻĒāĻĄ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ (āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻĒā§āĻ¸ā§āĻāĻĢāĻŋāĻā§āĻ¸ āĻŽā§āĻ˛ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°), āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻāĻŋ TCP āĻ¸āĻāĻ¯ā§āĻ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤
- āĻāĻāĻāĻŋ āĻĒāĻĄā§āĻ° (āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖāĻāĻžāĻŦā§) āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻŦāĻŋāĻāĻžāĻ°ā§ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻāĻžāĻ˛āĻžāĻ¨āĨ¤ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻāĻŽāĻĒā§āĻ˛āĻŋāĻļāĻ¨ āĻā§āĻĄ 0 āĻšāĻ˛ā§ āĻā§āĻāĻāĻŋ āĻ¸āĻĢāĻ˛ āĻŦāĻ˛ā§ āĻŦāĻŋāĻŦā§āĻāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤
āĻāĻ āĻāĻžāĻ āĻāĻŋāĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ. āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻĒāĻĄ āĻ¸āĻāĻā§āĻāĻžāĻāĻŋāĻ¤ā§ āĻāĻāĻāĻŋ NodeJS āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž HTTP āĻ āĻ¨ā§āĻ°ā§āĻ§ā§ āĻāĻāĻāĻŋ 500 āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¨āĻŋāĻā§āĻˇā§āĻĒ āĻāĻ°ā§ā§ˇ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĒāĻžāĻāĻ¯āĻŧāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°āĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻšāĻ¯āĻŧā§āĻā§ āĻ¤āĻž āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°āĻ¤ā§, āĻāĻŽāĻ°āĻž livenessProbe āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŋ:
apiVersion: v1
kind: Pod
metadata:
name: node500
spec:
containers:
- image: magalix/node500
name: node500
ports:
- containerPort: 3000
protocol: TCP
livenessProbe:
httpGet:
path: /
port: 3000
initialDelaySeconds: 5
āĻāĻāĻŋ āĻ
āĻ¨ā§āĻ¯ āĻā§āĻ¨ā§ āĻĒāĻĄ āĻ¸āĻāĻā§āĻāĻž āĻĨā§āĻā§ āĻāĻŋāĻ¨ā§āĻ¨ āĻ¨āĻ¯āĻŧ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻŦāĻ¸ā§āĻ¤ā§ āĻ¯ā§āĻ āĻāĻ°āĻŋ .spec.containers.livenessProbe
. āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° httpGet
āĻ¯ā§ āĻĒāĻĨā§ HTTP GET āĻ
āĻ¨ā§āĻ°ā§āĻ§ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§ āĻ¤āĻž āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§ (āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖā§ āĻāĻāĻŋ /
, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¯ā§āĻĻā§āĻ§ā§āĻ° āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§ āĻāĻ°āĻāĻŽ āĻāĻŋāĻā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ /api/v1/status
) āĻāĻ°ā§āĻāĻāĻŋ livenessProbe āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§ initialDelaySeconds
, āĻ¯āĻž āĻ¯āĻžāĻāĻžāĻāĻāĻ°āĻŖ āĻ
āĻĒāĻžāĻ°ā§āĻļāĻ¨āĻā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻāĻā§āĻ¯āĻ āĻ¸ā§āĻā§āĻ¨ā§āĻĄ āĻ
āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻĻā§āĻ¯āĻŧāĨ¤ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻāĻžāĻ°āĻŖ āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°āĻāĻŋ āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ¯āĻŧ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻāĻŦāĻ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻšāĻ˛ā§ āĻāĻāĻŋ āĻāĻŋāĻā§ āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ
āĻ¨ā§āĻĒāĻ˛āĻŦā§āĻ§ āĻšāĻŦā§ā§ˇ
āĻāĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§ āĻāĻ āĻ¸ā§āĻāĻŋāĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻ¤ā§, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨:
kubectl apply -f pod.yaml
āĻāĻ¯āĻŧā§āĻ āĻ¸ā§āĻā§āĻ¨ā§āĻĄ āĻĒāĻ°ā§, āĻāĻĒāĻ¨āĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒāĻĄā§āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
kubectl describe pods node500
āĻāĻāĻāĻĒā§āĻ āĻļā§āĻˇā§, āĻā§āĻāĻā§āĻ¨
āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻā§āĻ¨, livenessProbe āĻāĻāĻāĻŋ HTTP GET āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻļā§āĻ°ā§ āĻāĻ°ā§āĻā§, āĻ§āĻžāĻ°āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ 500 āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻā§ (āĻ¯āĻž āĻāĻāĻŋ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛), āĻāĻŦāĻ āĻā§āĻŦā§āĻ˛ā§āĻ āĻāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°ā§āĻā§āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻžāĻŦāĻā§āĻ¨ āĻ¯ā§ āĻā§āĻāĻžāĻŦā§ NideJS āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛, āĻāĻāĻžāĻ¨ā§ app.js āĻāĻŦāĻ Dockerfile āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛:
app.js
var http = require('http');
var server = http.createServer(function(req, res) {
res.writeHead(500, { "Content-type": "text/plain" });
res.end("We have run into an errorn");
});
server.listen(3000, function() {
console.log('Server is running at 3000')
})
Dockerfile
FROM node
COPY app.js /
EXPOSE 3000
ENTRYPOINT [ "node","/app.js" ]
āĻāĻāĻŋ āĻ˛āĻā§āĻˇā§āĻ¯ āĻāĻ°āĻž āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ: livenessProbe āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ§āĻžāĻ°āĻāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°āĻŦā§ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ āĻĒā§āĻ¨āĻāĻ¸ā§āĻāĻ¨āĻž āĻ¤ā§āĻ°ā§āĻāĻŋāĻāĻŋ āĻ¸āĻāĻļā§āĻ§āĻ¨ āĻ¨āĻž āĻāĻ°ā§ āĻ¯āĻž āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°āĻāĻŋāĻā§ āĻāĻ˛āĻ¤ā§ āĻŦāĻžāĻ§āĻž āĻĻāĻŋāĻā§āĻā§, āĻā§āĻŦā§āĻ˛ā§āĻ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻāĻŋ āĻ¸āĻāĻļā§āĻ§āĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻĻāĻā§āĻˇā§āĻĒ āĻ¨āĻŋāĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻŦā§ āĻ¨āĻžāĨ¤
āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĻŋāĻĒā§āĻ°āĻŦāĻŖ
ReadinessProbe āĻāĻāĻāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§ livenessProbes (GET āĻ āĻ¨ā§āĻ°ā§āĻ§, TCP āĻāĻŽāĻŋāĻāĻ¨āĻŋāĻā§āĻļāĻ¨ āĻāĻŦāĻ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻļāĻ¨), āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§āĻ° āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻžāĻĄāĻŧāĻžāĨ¤ āĻ¯ā§ āĻ§āĻžāĻ°āĻāĻāĻŋāĻ¤ā§ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž āĻ¸āĻ¨āĻžāĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻ¸ā§āĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž, āĻ¤āĻŦā§ āĻāĻāĻ¤ āĻā§āĻ°āĻžāĻĢāĻŋāĻ āĻĨā§āĻā§ āĻŦāĻŋāĻā§āĻāĻŋāĻ¨ā§āĻ¨ āĻšāĻ¯āĻŧāĨ¤ āĻāĻ˛ā§āĻĒāĻ¨āĻž āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°āĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻā§ āĻŦāĻž āĻāĻžāĻ°ā§ āĻŦā§āĻāĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ°āĻ¯āĻŧā§āĻā§, āĻ¯āĻžāĻ° āĻĢāĻ˛ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŦā§āĻĻā§āĻ§āĻŋ āĻĒāĻžāĻā§āĻā§āĨ¤ āĻ˛āĻžāĻāĻāĻ¨ā§āĻ¸āĻĒā§āĻ°ā§āĻŦā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻĒā§āĻ°āĻžāĻĒā§āĻ¯āĻ¤āĻž āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻāĻŋ āĻā§āĻ°āĻŋāĻāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ (āĻāĻžāĻāĻŽāĻāĻāĻ āĻ¸ā§āĻā§āĻ¨ā§āĻĄ āĻā§āĻ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ°ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§), āĻ¯āĻžāĻ° āĻĒāĻ°ā§ āĻā§āĻŦā§āĻ˛ā§āĻ āĻ§āĻžāĻ°āĻāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°ā§āĨ¤ āĻļā§āĻ°ā§ āĻšāĻ˛ā§, āĻ§āĻžāĻ°āĻāĻāĻŋ āĻ¸āĻŽā§āĻĒāĻĻ-āĻ¨āĻŋāĻŦāĻŋāĻĄāĻŧ āĻāĻžāĻāĻā§āĻ˛āĻŋ āĻāĻ°āĻ¤ā§ āĻļā§āĻ°ā§ āĻāĻ°ā§ āĻāĻŦāĻ āĻāĻŦāĻžāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻāĻŋ āĻāĻŽāĻ¨ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯ā§āĻā§āĻ˛āĻŋāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ¤āĻŋāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ˇ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ°āĻžāĻ¸ā§āĻ¤āĻžāĻ¯āĻŧ āĻĨāĻžāĻāĻžāĻāĻžāĻ˛ā§āĻ¨ āĻāĻāĻāĻŋ āĻāĻžāĻĄāĻŧāĻŋ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻĨā§āĻā§ āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻā§, āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ¸āĻ¤ā§ āĻĻā§āĻ°āĻŋ āĻšāĻ¯āĻŧ - āĻāĻŦāĻ āĻāĻžāĻĄāĻŧāĻŋāĻāĻŋ āĻĻā§āĻ°ā§āĻāĻāĻ¨āĻžāĻ¯āĻŧ āĻĒāĻĄāĻŧā§āĨ¤
āĻāĻ¸ā§āĻ¨ āĻāĻāĻāĻŋ āĻ°ā§āĻĄāĻŋāĻ¨ā§āĻ¸āĻĒā§āĻ°ā§āĻŦ āĻ¸āĻāĻā§āĻāĻž āĻ˛āĻŋāĻāĻŋ āĻ¯āĻž GET āĻ āĻ¨ā§āĻ°ā§āĻ§ā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¸āĻŽāĻ¯āĻŧāĻā§ āĻĻā§āĻ āĻ¸ā§āĻā§āĻ¨ā§āĻĄā§āĻ° āĻŦā§āĻļāĻŋ āĻ¸ā§āĻ āĻāĻ°āĻŦā§ āĻ¨āĻž āĻāĻŦāĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋ 5 āĻ¸ā§āĻā§āĻ¨ā§āĻĄ āĻĒāĻ°ā§ GET āĻ āĻ¨ā§āĻ°ā§āĻ§ā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻžāĻ¨āĻžāĻŦā§āĨ¤ pod.yaml āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻāĻāĻ°āĻāĻŽ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤:
apiVersion: v1
kind: Pod
metadata:
name: nodedelayed
spec:
containers:
- image: afakharany/node_delayed
name: nodedelayed
ports:
- containerPort: 3000
protocol: TCP
readinessProbe:
httpGet:
path: /
port: 3000
timeoutSeconds: 2
āĻāĻ¸ā§āĻ¨ kubectl āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻĒāĻĄ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻŋ:
kubectl apply -f pod.yaml
āĻāĻ¸ā§āĻ¨ āĻāĻ¯āĻŧā§āĻ āĻ¸ā§āĻā§āĻ¨ā§āĻĄ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻŋ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻĻā§āĻā§āĻ¨ āĻāĻŋāĻāĻžāĻŦā§ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĻŋāĻĒā§āĻ°āĻŦāĻŖ āĻāĻžāĻ āĻāĻ°ā§āĻā§:
kubectl describe pods nodedelayed
āĻāĻāĻāĻĒā§āĻ āĻļā§āĻˇā§ āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻ¯ā§ āĻāĻŋāĻā§ āĻāĻāĻ¨āĻž āĻāĻāĻ āĻ°āĻāĻŽ
āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻā§āĻ¨, āĻā§āĻā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ 2 āĻ¸ā§āĻā§āĻ¨ā§āĻĄ āĻ āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ°āĻ˛ā§ āĻā§āĻŦā§āĻā§āĻāĻ˛ āĻĒāĻĄāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°ā§āĻ¨āĻŋāĨ¤ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§, āĻ¤āĻŋāĻ¨āĻŋ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻŦāĻžāĻ¤āĻŋāĻ˛ āĻāĻ°ā§āĻā§āĻ¨āĨ¤ āĻāĻ¨āĻāĻžāĻŽāĻŋāĻ āĻāĻŽāĻŋāĻāĻ¨āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋ āĻ āĻ¨ā§āĻ¯, āĻāĻžāĻā§āĻ° āĻĒāĻĄāĻā§āĻ˛āĻŋāĻ¤ā§ āĻĒā§āĻ¨āĻāĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻāĻ¨ āĻĒāĻĄāĻāĻŋ āĻ āĻĢāĻ˛ā§āĻĄ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, kubectl āĻāĻāĻŋāĻ¤ā§ āĻāĻŦāĻžāĻ° āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻāĻ°ā§: GET āĻ āĻ¨ā§āĻ°ā§āĻ§ā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ° āĻŦāĻŋāĻ˛āĻŽā§āĻŦāĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤
āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻ¨ā§āĻā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ app.js āĻĢāĻžāĻāĻ˛ āĻāĻā§:
var http = require('http');
var server = http.createServer(function(req, res) {
const sleep = (milliseconds) => {
return new Promise(resolve => setTimeout(resolve, milliseconds))
}
sleep(5000).then(() => {
res.writeHead(200, { "Content-type": "text/plain" });
res.end("Hellon");
})
});
server.listen(3000, function() {
console.log('Server is running at 3000')
})
TL; āĻĄāĻŋāĻāĻ°
āĻā§āĻ˛āĻžāĻāĻĄ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻāĻŦāĻŋāĻ°ā§āĻāĻžāĻŦā§āĻ° āĻāĻā§, āĻ˛āĻāĻā§āĻ˛āĻŋ āĻāĻŋāĻ˛ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§āĻ¯āĻŦā§āĻā§āĻˇāĻŖ āĻāĻŦāĻ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ āĻŽāĻžāĻ§ā§āĻ¯āĻŽāĨ¤ āĻ¤āĻŦā§ āĻā§āĻ¨ā§ āĻ¸āĻāĻļā§āĻ§āĻ¨āĻŽā§āĻ˛āĻ āĻŦā§āĻ¯āĻŦāĻ¸ā§āĻĨāĻž āĻ¨ā§āĻāĻ¯āĻŧāĻžāĻ° āĻāĻĒāĻžāĻ¯āĻŧ āĻāĻŋāĻ˛ āĻ¨āĻžāĨ¤ āĻ˛āĻāĻā§āĻ˛āĻŋ āĻāĻāĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ°; āĻāĻ°ā§āĻ°ā§ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻŦāĻŋāĻļā§āĻ˛ā§āĻˇāĻŖ āĻāĻŦāĻ āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨ā§āĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻā§āĻ˛āĻŋ āĻ¸āĻāĻā§āĻ°āĻš āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻ˛āĻ āĻ¸āĻāĻā§āĻ°āĻš āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻĒā§āĻ°ā§āĻ°āĻŖ āĻāĻ°āĻž āĻĻāĻ°āĻāĻžāĻ°āĨ¤ [āĻāĻ āĻ¸āĻŦāĻ āĻŽāĻ¨āĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻā§āĻ˛āĻžāĻāĻĄ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻŋāĻ¨ā§āĻ¤ā§ k8s āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻŋ āĻ
āĻ¨ā§āĻ āĻ¸āĻšāĻ āĻšāĻ¯āĻŧā§ āĻā§āĻā§ :) - āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻā§āĻ° āĻ¨ā§āĻāĨ¤ ]
āĻāĻ, āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ°āĻŋāĻ¯āĻŧā§āĻ˛ āĻāĻžāĻāĻŽā§ āĻ¸āĻāĻļā§āĻ§āĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§, āĻ¤āĻžāĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻāĻ° āĻŦā§āĻ˛ā§āĻ¯āĻžāĻ āĻŦāĻā§āĻ¸ āĻšāĻ¤ā§ āĻšāĻŦā§ āĻ¨āĻžāĨ¤ āĻ¨āĻž, āĻ¤āĻžāĻĻā§āĻ° āĻļā§āĻˇ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻĻā§āĻāĻžāĻ¤ā§ āĻšāĻŦā§ āĻ¯āĻž āĻĒāĻ°ā§āĻ¯āĻŦā§āĻā§āĻˇāĻŖ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋāĻā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋāĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻŽā§āĻ˛ā§āĻ¯āĻŦāĻžāĻ¨ āĻĄā§āĻāĻž āĻāĻŋāĻā§āĻāĻžāĻ¸āĻž āĻāĻ°āĻ¤ā§ āĻāĻŦāĻ āĻ¸āĻāĻā§āĻ°āĻš āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ āĻ¯āĻžāĻ¤ā§ āĻ¤āĻžāĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ āĻ¤āĻžāĻ¤ā§āĻā§āĻˇāĻŖāĻŋāĻāĻāĻžāĻŦā§ āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻžāĻ¨āĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻā§ āĻĒāĻžāĻ°āĻĢāĻ°āĻŽā§āĻ¨ā§āĻ¸ āĻā§āĻ¸ā§āĻ āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻž āĻšāĻžāĻ āĻ āĻŦāĻāĻžāĻ°āĻŦā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ¸āĻŋāĻĒāĻ˛ (HOP) āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°ā§āĨ¤
Kubernetes āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§ 2 āĻ§āĻ°āĻ¨ā§āĻ° āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻ āĻĢāĻžāĻ° āĻāĻ°ā§: ReadinessProbe āĻāĻŦāĻ livenessProbeāĨ¤ āĻāĻāĻ¯āĻŧāĻ āĻāĻāĻ āĻ§āĻ°āĻŖā§āĻ° āĻā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ (HTTP GET āĻ āĻ¨ā§āĻ°ā§āĻ§, TCP āĻ¯ā§āĻāĻžāĻ¯ā§āĻ āĻāĻŦāĻ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻļāĻ¨)āĨ¤ āĻĒāĻĄā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻā§āĻ˛āĻŋāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¤āĻžāĻ°āĻž āĻā§ āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨ā§āĻ¯āĻŧ āĻ¤āĻžāĻ¤ā§ āĻ¤āĻžāĻĻā§āĻ° āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ livenessProbe āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°āĻāĻŋāĻā§ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°āĻŽā§āĻ āĻāĻ°ā§ āĻāĻ āĻāĻļāĻžāĻ¯āĻŧ āĻ¯ā§ āĻ¤ā§āĻ°ā§āĻāĻŋāĻāĻŋ āĻāĻ° āĻāĻāĻŦā§ āĻ¨āĻž, āĻāĻŦāĻ readinessProbe āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻāĻŋāĻ° āĻāĻžāĻ°āĻŖ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ¨āĻž āĻšāĻāĻ¯āĻŧāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻ¨āĻāĻžāĻŽāĻŋāĻ āĻā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻ āĻĨā§āĻā§ āĻĒāĻĄāĻāĻŋāĻā§ āĻŦāĻŋāĻā§āĻāĻŋāĻ¨ā§āĻ¨ āĻāĻ°ā§āĨ¤
āĻ¸āĻ āĻŋāĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻĄāĻŋāĻāĻžāĻāĻ¨ā§ āĻāĻāĻ¯āĻŧ āĻ§āĻ°āĻ¨ā§āĻ° āĻā§āĻāĻŋāĻ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻāĻŦāĻ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¯ā§ āĻ¤āĻžāĻ°āĻž āĻĒāĻ°ā§āĻ¯āĻžāĻĒā§āĻ¤ āĻĄā§āĻāĻž āĻ¸āĻāĻā§āĻ°āĻš āĻāĻ°ā§, āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§ āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻ¨āĻŋāĻā§āĻˇā§āĻĒ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ API āĻāĻ¨ā§āĻĄāĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻā§āĻ˛āĻŋāĻ āĻĻā§āĻāĻžāĻ¤ā§ āĻšāĻŦā§ āĻ¯āĻž āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻŽā§āĻā§āĻ°āĻŋāĻā§āĻ¸ āĻ¸āĻš āĻĒāĻ°ā§āĻ¯āĻŦā§āĻā§āĻˇāĻŖ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ (āĻĒā§āĻ°āĻŽāĻŋāĻĨāĻŋāĻāĻ¸) āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
āĻāĻ¤ā§āĻ¸: www.habr.com