āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸ āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ°āĻ—ā§āĻ˛āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻ°ā§āĻŦā§‹āĻ¤ā§āĻ¤āĻŽ āĻ…āĻ¨ā§āĻļā§€āĻ˛āĻ¨: āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸ āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ°āĻ—ā§āĻ˛āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻ°ā§āĻŦā§‹āĻ¤ā§āĻ¤āĻŽ āĻ…āĻ¨ā§āĻļā§€āĻ˛āĻ¨: āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž

TL; āĻĄāĻŋāĻ†āĻ°

  • āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ° āĻāĻŦāĻ‚ āĻŽāĻžāĻ‡āĻ•ā§āĻ°ā§‹āĻ¸āĻžāĻ°ā§āĻ­āĻŋāĻ¸ā§‡āĻ° āĻ‰āĻšā§āĻš āĻĒāĻ°ā§āĻ¯āĻŦā§‡āĻ•ā§āĻˇāĻŖāĻ¯ā§‹āĻ—ā§āĻ¯āĻ¤āĻž āĻ…āĻ°ā§āĻœāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯, āĻ˛āĻ— āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ• āĻŽā§‡āĻŸā§āĻ°āĻŋāĻ•ā§āĻ¸ āĻ¯āĻĨā§‡āĻˇā§āĻŸ āĻ¨āĻ¯āĻŧāĨ¤
  • āĻĻā§āĻ°ā§āĻ¤ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻāĻŦāĻ‚ āĻŦāĻ°ā§āĻ§āĻŋāĻ¤ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ•āĻ¤āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻ‰āĻšā§āĻš āĻĒāĻ°ā§āĻ¯āĻŦā§‡āĻ•ā§āĻˇāĻŖā§‡āĻ° āĻ¨ā§€āĻ¤āĻŋ (HOP) āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻ— āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤āĨ¤
  • āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻ¸ā§āĻ¤āĻ°ā§‡, NOP-āĻāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨: āĻ¸āĻ āĻŋāĻ• āĻ˛āĻ—āĻŋāĻ‚, āĻ¨āĻŋāĻŦāĻŋāĻĄāĻŧ āĻĒāĻ°ā§āĻ¯āĻŦā§‡āĻ•ā§āĻˇāĻŖ, āĻ¸ā§āĻ¯āĻžāĻ¨āĻŋāĻŸā§€ āĻšā§‡āĻ• āĻāĻŦāĻ‚ āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻž/āĻŸā§āĻ°āĻžāĻ¨āĻœāĻŋāĻļāĻ¨ āĻŸā§āĻ°ā§‡āĻ¸āĻŋāĻ‚āĨ¤
  • NOR āĻāĻ° āĻāĻ•āĻŸāĻŋ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻšā§‡āĻ• āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§āĻ¨ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĻŋāĻĒā§āĻ°āĻŦāĻŖ и āĻ˛āĻžāĻ‡āĻ­āĻ¨ā§‡āĻ¸ āĻĒā§āĻ°ā§‹āĻŦ āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸āĨ¤

āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻŸā§‡āĻŽāĻĒā§āĻ˛ā§‡āĻŸ āĻ•āĻŋ?

āĻāĻ•āĻŸāĻŋ āĻŽāĻŋāĻļāĻ¨-āĻ¸āĻŽāĻžāĻ˛ā§‹āĻšāĻ¨āĻžāĻŽā§‚āĻ˛āĻ• āĻāĻŦāĻ‚ āĻ…āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻ‰āĻĒāĻ˛āĻŦā§āĻ§ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻĄāĻŋāĻœāĻžāĻ‡āĻ¨ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¸āĻšāĻ¨āĻļā§€āĻ˛āĻ¤āĻžāĻ° āĻŽāĻ¤ā§‹ āĻāĻ•āĻŸāĻŋ āĻĻāĻŋāĻ• āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻšāĻŋāĻ¨ā§āĻ¤āĻž āĻ•āĻ°āĻž āĻ–ā§āĻŦāĻ‡ āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖāĨ¤ āĻāĻ•āĻŸāĻŋ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¸āĻšāĻ¨āĻļā§€āĻ˛ āĻŦāĻ˛ā§‡ āĻŽāĻ¨ā§‡ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯āĻĻāĻŋ āĻāĻŸāĻŋ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž āĻĨā§‡āĻ•ā§‡ āĻĻā§āĻ°ā§āĻ¤ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻ•āĻ°ā§‡āĨ¤ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ•ā§āĻ˛āĻžāĻ‰āĻĄ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻāĻ•āĻŸāĻŋ āĻŽāĻžāĻ‡āĻ•ā§āĻ°ā§‹āĻ¸āĻžāĻ°ā§āĻ­āĻŋāĻ¸ā§‡āĻ¸ āĻ†āĻ°ā§āĻ•āĻŋāĻŸā§‡āĻ•āĻšāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ - āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ āĻāĻ•āĻŸāĻŋ āĻĒā§ƒāĻĨāĻ• āĻĒāĻžāĻ¤ā§āĻ°ā§‡ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻŦāĻ‚ āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻ–āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ° āĻĄāĻŋāĻœāĻžāĻ‡āĻ¨ āĻ•āĻ°ā§‡āĻ¨ āĻ¤āĻ–āĻ¨ k8s-āĻ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻŸāĻŋ āĻ…āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻ‰āĻĒāĻ˛āĻ­ā§āĻ¯ āĻšāĻ¯āĻŧ āĻ¤āĻž āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ¨āĻŋāĻĻāĻ°ā§āĻļāĻ¨ āĻ…āĻ¨ā§āĻ¸āĻ°āĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻ¤āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻŸā§‡āĻŽāĻĒā§āĻ˛ā§‡āĻŸāĨ¤ āĻāĻŸāĻŋ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°ā§‡ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻŸāĻŋ k8s-āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¯ā§‹āĻ—āĻžāĻ¯ā§‹āĻ— āĻ•āĻ°ā§‡ āĻ¯ā§‡ āĻāĻŸāĻŋ āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯āĻ•āĻ°āĨ¤ āĻāĻŸāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒāĻĄ āĻšāĻ˛āĻ›ā§‡ āĻ•āĻŋāĻ¨āĻž āĻ¤āĻž āĻ¨āĻ¯āĻŧ, āĻāĻŸāĻŋ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§āĻ—ā§āĻ˛āĻŋ āĻ—ā§āĻ°āĻšāĻŖ āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻ¤āĻŋāĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻœāĻžāĻ¨āĻžāĻ¯āĻŧ āĻ¸ā§‡ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡āĻ“āĨ¤ āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ āĻĒāĻĄā§‡āĻ° āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ¯āĻ¤ āĻŦā§‡āĻļāĻŋ āĻœāĻžāĻ¨ā§‡āĻ¨, āĻŸā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻ• āĻ°āĻžāĻ‰āĻŸāĻŋāĻ‚ āĻāĻŦāĻ‚ āĻ˛ā§‹āĻĄ āĻŦā§āĻ¯āĻžāĻ˛ā§‡āĻ¨ā§āĻ¸āĻŋāĻ‚ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻāĻŸāĻŋ āĻ¤āĻ¤ āĻŦā§‡āĻļāĻŋ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻŸ āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨ā§‡āĻ¯āĻŧāĨ¤ āĻāĻ‡āĻ­āĻžāĻŦā§‡, āĻ‰āĻšā§āĻš āĻĒāĻ°ā§āĻ¯āĻŦā§‡āĻ•ā§āĻˇāĻŖā§‡āĻ° āĻ¨ā§€āĻ¤āĻŋ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻŸāĻŋāĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽāĻ¯āĻŧāĻŽāĻ¤ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ā§‡āĻ° āĻ‰āĻ¤ā§āĻ¤āĻ° āĻĻā§‡āĻ“āĻ¯āĻŧāĻžāĻ° āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§‡āĻ¯āĻŧāĨ¤

āĻ‰āĻšā§āĻš āĻĒāĻ°ā§āĻ¯āĻŦā§‡āĻ•ā§āĻˇāĻŖā§‡āĻ° āĻ¨ā§€āĻ¤āĻŋ (HOP)

āĻ‰āĻšā§āĻš āĻĒāĻ°ā§āĻ¯āĻŦā§‡āĻ•ā§āĻˇāĻŖā§‡āĻ° āĻ¨ā§€āĻ¤āĻŋ āĻšāĻ˛ āĻāĻ•āĻŸāĻŋ āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ°āĻžāĻ‡āĻœāĻĄ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻĄāĻŋāĻœāĻžāĻ‡āĻ¨ āĻ•āĻ°āĻžāĻ° āĻ¨ā§€āĻ¤āĻŋ. āĻāĻ•āĻŸāĻŋ āĻŽāĻžāĻ‡āĻ•ā§āĻ°ā§‹āĻ¸āĻžāĻ°ā§āĻ­āĻŋāĻ¸ā§‡āĻ¸ āĻ†āĻ°ā§āĻ•āĻŋāĻŸā§‡āĻ•āĻšāĻžāĻ°ā§‡, āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻžāĻ—ā§āĻ˛āĻŋ āĻ¤āĻžāĻĻā§‡āĻ° āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¤āĻž āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°ā§‡ āĻ¨āĻž (āĻāĻŦāĻ‚ āĻ¸āĻ āĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻ¤āĻžāĻ‡), āĻ¤āĻŦā§‡ āĻ•ā§€ āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻ¤āĻž āĻšāĻ˛ āĻ¤āĻžāĻ°āĻž āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻžāĻ—ā§āĻ˛āĻŋ āĻĨā§‡āĻ•ā§‡ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻĒāĻžāĻ¯āĻŧā§ˇ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻāĻ•āĻœāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ•ā§‡ āĻĒā§āĻ°āĻŽāĻžāĻŖā§€āĻ•āĻ°āĻŖ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻāĻ•āĻŸāĻŋ āĻ§āĻžāĻ°āĻ• āĻ…āĻ¨ā§āĻ¯āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ HTTP āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻĒāĻžāĻ āĻžāĻ¯āĻŧ, āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§‡ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ†āĻļāĻž āĻ•āĻ°ā§‡ - āĻāĻŸāĻžāĻ‡ āĻ¸āĻŦāĨ¤ PythonJS āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻāĻŦāĻ‚ Python Flask āĻ¸āĻžāĻĄāĻŧāĻž āĻĻāĻŋāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ•āĻ¨āĻŸā§‡āĻ‡āĻ¨āĻžāĻ°āĻ—ā§āĻ˛āĻŋ āĻāĻ•ā§‡ āĻ…āĻĒāĻ°ā§‡āĻ° āĻ•āĻžāĻ›ā§‡ āĻ˛ā§āĻ•āĻžāĻ¨ā§‹ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻ¸āĻš āĻ•āĻžāĻ˛ā§‹ āĻŦāĻžāĻ•ā§āĻ¸ā§‡āĻ° āĻŽāĻ¤ā§‹āĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, NOP āĻ¨ā§€āĻ¤āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻžāĻ•ā§‡ āĻāĻ•āĻžāĻ§āĻŋāĻ• API āĻāĻ¨ā§āĻĄāĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĒā§āĻ°āĻ•āĻžāĻļ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡ āĻ¯āĻž āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļ āĻ•āĻ°ā§‡ āĻ¯ā§‡ āĻāĻŸāĻŋ āĻ•āĻ¤āĻŸāĻž āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯āĻ•āĻ°, āĻ¸ā§‡āĻ‡āĻ¸āĻžāĻĨā§‡ āĻāĻ° āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŦāĻ‚ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¸āĻšāĻ¨āĻļā§€āĻ˛āĻ¤āĻžāĻ° āĻ…āĻŦāĻ¸ā§āĻĨāĻžāĨ¤ āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸāĻ¸ āĻ°āĻžāĻ‰āĻŸāĻŋāĻ‚ āĻāĻŦāĻ‚ āĻ˛ā§‹āĻĄ āĻŦā§āĻ¯āĻžāĻ˛ā§‡āĻ¨ā§āĻ¸āĻŋāĻ‚āĻ¯āĻŧā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻ§āĻžāĻĒāĻ—ā§āĻ˛āĻŋ āĻšāĻŋāĻ¨ā§āĻ¤āĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ‡ āĻ¸ā§‚āĻšāĻ•āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ•āĻ°ā§‡āĨ¤

āĻāĻ•āĻŸāĻŋ āĻ­āĻžāĻ˛ āĻĄāĻŋāĻœāĻžāĻ‡āĻ¨ āĻ•āĻ°āĻž āĻ•ā§āĻ˛āĻžāĻ‰āĻĄ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ I/O āĻ¸ā§āĻŸā§āĻ°ā§€āĻŽ STDERR āĻāĻŦāĻ‚ STDOUT āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¤āĻžāĻ° āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻ‡āĻ­ā§‡āĻ¨ā§āĻŸāĻ—ā§āĻ˛āĻŋ āĻ˛āĻ— āĻ•āĻ°ā§‡āĨ¤ āĻāĻ°āĻĒāĻ°ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ• āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻž āĻ†āĻ¸ā§‡, āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ āĻĢāĻžāĻ‡āĻ˛āĻŦāĻŋāĻŸ, āĻ˛āĻ—āĻ¸ā§āĻŸā§āĻ¯āĻžāĻļ āĻŦāĻž āĻ¸āĻžāĻŦāĻ˛ā§€āĻ˛, āĻāĻ•āĻŸāĻŋ āĻ•ā§‡āĻ¨ā§āĻĻā§āĻ°ā§€āĻ­ā§‚āĻ¤ āĻŽāĻ¨āĻŋāĻŸāĻ°āĻŋāĻ‚ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ (āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ āĻĒā§āĻ°āĻŽāĻŋāĻĨāĻŋāĻ‰āĻ¸) āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻ˛āĻ— āĻ¸āĻ‚āĻ—ā§āĻ°āĻšā§‡āĻ° āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ (ELK āĻ¸āĻĢā§āĻŸāĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻ¸ā§āĻ¯ā§āĻŸ) āĻ˛āĻ— āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻ•āĻ°ā§‡āĨ¤ āĻ¨ā§€āĻšā§‡āĻ° āĻšāĻŋāĻ¤ā§āĻ°āĻŸāĻŋ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ āĻ¯ā§‡ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻāĻ•āĻŸāĻŋ āĻ•ā§āĻ˛āĻžāĻ‰āĻĄ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻĒā§āĻ¯āĻžāĻŸāĻžāĻ°ā§āĻ¨ āĻāĻŦāĻ‚ āĻ‰āĻšā§āĻš āĻĒāĻ°ā§āĻ¯āĻŦā§‡āĻ•ā§āĻˇāĻŖā§‡āĻ° āĻ¨ā§€āĻ¤āĻŋ āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡āĨ¤

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸ āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ°āĻ—ā§āĻ˛āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻ°ā§āĻŦā§‹āĻ¤ā§āĻ¤āĻŽ āĻ…āĻ¨ā§āĻļā§€āĻ˛āĻ¨: āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸā§‡ āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻĒā§āĻ¯āĻžāĻŸāĻžāĻ°ā§āĻ¨ āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻ— āĻ•āĻ°āĻŦā§‡āĻ¨?

āĻŦāĻžāĻ•ā§āĻ¸ā§‡āĻ° āĻŦāĻžāĻ‡āĻ°ā§‡, k8s āĻāĻ•āĻŸāĻŋ āĻ•āĻ¨ā§āĻŸā§āĻ°ā§‹āĻ˛āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻĒāĻĄā§‡āĻ° āĻ…āĻŦāĻ¸ā§āĻĨāĻž āĻĒāĻ°ā§āĻ¯āĻŦā§‡āĻ•ā§āĻˇāĻŖ āĻ•āĻ°ā§‡ (āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ°, āĻ°ā§‡āĻĒā§āĻ˛āĻŋāĻ•āĻžāĻ¸ā§‡āĻŸ, āĻĄā§‡āĻŽāĻ¨āĻ¸ā§‡āĻŸ, āĻ¸ā§āĻŸā§‡āĻŸāĻĢā§āĻ˛ āĻ¸ā§‡āĻŸ āĻ‡āĻ¤ā§āĻ¯āĻžāĻĻāĻŋ, āĻ‡āĻ¤ā§āĻ¯āĻžāĻĻāĻŋ)āĨ¤ āĻ•ā§‹āĻ¨ā§‹ āĻ•āĻžāĻ°āĻŖā§‡ āĻĒāĻĄāĻŸāĻŋ āĻĒāĻĄāĻŧā§‡ āĻ—ā§‡āĻ›ā§‡ āĻ¤āĻž āĻ†āĻŦāĻŋāĻˇā§āĻ•āĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡, āĻ¨āĻŋāĻ¯āĻŧāĻžāĻŽāĻ• āĻāĻŸāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻšāĻžāĻ˛ā§ āĻ•āĻ°āĻžāĻ° āĻŦāĻž āĻ…āĻ¨ā§āĻ¯ āĻ¨ā§‹āĻĄā§‡ āĻ¸āĻ°āĻžāĻ¨ā§‹āĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡āĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻāĻ•āĻŸāĻŋ āĻĒāĻĄ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¯ā§‡ āĻāĻŸāĻŋ āĻšāĻžāĻ˛ā§ āĻāĻŦāĻ‚ āĻšāĻ˛āĻ›ā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŸāĻŋ āĻ¨āĻŋāĻœā§‡āĻ‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻ›ā§‡ āĻ¨āĻžāĨ¤ āĻāĻ•āĻŸāĻŋ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ•: āĻ†āĻĒāĻ¨āĻžāĻ° āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ Apache āĻāĻ•āĻŸāĻŋ āĻ“āĻ¯āĻŧā§‡āĻŦ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡, āĻ†āĻĒāĻ¨āĻŋ āĻŦā§‡āĻļ āĻ•āĻ¯āĻŧā§‡āĻ•āĻŸāĻŋ āĻ•ā§āĻ˛āĻžāĻ¸ā§āĻŸāĻžāĻ° āĻĒāĻĄā§‡ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°ā§‡āĻ›ā§‡āĻ¨āĨ¤ āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻŸāĻŋ āĻ­ā§āĻ˛āĻ­āĻžāĻŦā§‡ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻŸāĻŋāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ•ā§‹āĻĄ 500 (āĻ…āĻ­ā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§€āĻŖ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻ¤ā§āĻ°ā§āĻŸāĻŋ) āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ¸āĻžāĻĄāĻŧāĻž āĻĻā§‡āĻ¯āĻŧāĨ¤ āĻĄā§‡āĻ˛āĻŋāĻ­āĻžāĻ°āĻŋ āĻšā§‡āĻ• āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻĒāĻĄā§‡āĻ° āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ¸āĻĢāĻ˛ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĻā§‡āĻ¯āĻŧ, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ—ā§āĻ°āĻžāĻšāĻ•āĻ°āĻž āĻ­āĻŋāĻ¨ā§āĻ¨āĻ­āĻžāĻŦā§‡ āĻšāĻŋāĻ¨ā§āĻ¤āĻž āĻ•āĻ°ā§‡āĻ¨āĨ¤ āĻ†āĻŽāĻ°āĻž āĻāĻ‡ āĻ…āĻ¨āĻžāĻ•āĻžāĻ™ā§āĻ•ā§āĻˇāĻŋāĻ¤ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ•ā§‡ āĻ¨āĻŋāĻŽā§āĻ¨āĻ°ā§‚āĻĒ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻ•āĻ°āĻŦ:

āĻ•ā§āĻŦāĻžāĻ°āĻ¨ā§‡āĻŸ āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ°āĻ—ā§āĻ˛āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻ°ā§āĻŦā§‹āĻ¤ā§āĻ¤āĻŽ āĻ…āĻ¨ā§āĻļā§€āĻ˛āĻ¨: āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡, 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

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨