āĻāĻŋ
āĻāĻĒāĻ¨āĻŋ āĻāĻžāĻā§āĻ° āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻĒāĻĄāĻŧāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻŋāĻāĻžāĻŦā§ āĻāĻāĻŋ āĻāĻžāĻ āĻāĻ°ā§
Istio āĻĻā§āĻāĻŋ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻ āĻā§āĻāĻ˛ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ āĻŋāĻ¤ - āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻ¸āĻŽāĻ¤āĻ˛ āĻāĻŦāĻ āĻĄā§āĻāĻž āĻ¸āĻŽāĻ¤āĻ˛āĨ¤ āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛ āĻĒā§āĻ˛ā§āĻ¨ā§ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻŦāĻžāĻāĻŋāĻā§āĻ˛āĻŋāĻ° āĻ¸āĻ āĻŋāĻ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°ā§āĨ¤ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§ (1.0), āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛ āĻĒā§āĻ˛ā§āĻ¨ā§ āĻ¤āĻŋāĻ¨āĻāĻŋ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ°āĻ¯āĻŧā§āĻā§: āĻĒāĻžāĻāĻ˛āĻ, āĻŽāĻŋāĻā§āĻ¸āĻžāĻ°, āĻ¸āĻŋāĻāĻžāĻĄā§āĻ˛āĨ¤ āĻāĻŽāĻ°āĻž āĻ¸āĻŋāĻāĻžāĻĄā§āĻ˛ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻŦ āĻ¨āĻž; āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻžāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĒāĻžāĻ°āĻ¸ā§āĻĒāĻ°āĻŋāĻ TLS āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻ¸āĻžāĻ°ā§āĻāĻŋāĻĢāĻŋāĻā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨āĨ¤ āĻāĻ¸ā§āĻ¨ āĻĒāĻžāĻāĻ˛āĻ āĻāĻŦāĻ āĻŽāĻŋāĻā§āĻ¸āĻžāĻ°ā§āĻ° āĻ¨āĻāĻļāĻž āĻāĻŦāĻ āĻāĻĻā§āĻĻā§āĻļā§āĻ¯āĻāĻŋ āĻāĻ¨āĻŋāĻˇā§āĻ āĻāĻžāĻŦā§ āĻĻā§āĻāĻŋāĨ¤
āĻĒāĻžāĻāĻ˛āĻ āĻšāĻ˛ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¯āĻž āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻā§ āĻāĻā§ āĻ¸ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¤āĻĨā§āĻ¯ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻāĻ°ā§ - āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž, āĻ¤āĻžāĻĻā§āĻ° āĻļā§āĻˇ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻāĻŦāĻ āĻ°āĻžāĻāĻāĻŋāĻ āĻ¨āĻŋāĻ¯āĻŧāĻŽ (āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻā§āĻ¯āĻžāĻ¨āĻžāĻ°āĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻŦāĻž āĻ¸āĻžāĻ°ā§āĻāĻŋāĻ āĻŦā§āĻ°ā§āĻāĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧāĻŽ)āĨ¤
āĻŽāĻŋāĻā§āĻ¸āĻžāĻ° āĻšāĻ˛ āĻāĻāĻāĻŋ āĻāĻā§āĻāĻŋāĻ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻ¸āĻŽāĻ¤āĻ˛ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¯āĻž āĻŽā§āĻā§āĻ°āĻŋāĻā§āĻ¸, āĻ˛āĻ āĻāĻŦāĻ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻŽāĻŋāĻĨāĻ¸ā§āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¯ā§āĻā§āĻ¨ā§ āĻ¤āĻĨā§āĻ¯ āĻ¸āĻāĻā§āĻ°āĻš āĻāĻ°āĻžāĻ° āĻā§āĻˇāĻŽāĻ¤āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¤āĻŋāĻ¨āĻŋ āĻ¨ā§āĻ¤āĻŋāĻ° āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻžāĻŦāĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻŽāĻ¤āĻŋ āĻāĻŦāĻ āĻšāĻžāĻ°ā§āĻ° āĻ¸ā§āĻŽāĻžāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻŽāĻ¤āĻŋāĻ āĻĒāĻ°ā§āĻ¯āĻŦā§āĻā§āĻˇāĻŖ āĻāĻ°ā§āĻ¨āĨ¤
āĻ¸āĻžāĻāĻĄāĻāĻžāĻ° āĻĒā§āĻ°āĻā§āĻ¸āĻŋ āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĄā§āĻāĻž āĻĒā§āĻ˛ā§āĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻļāĻā§āĻ¤āĻŋāĻļāĻžāĻ˛ā§
Istio āĻ¯āĻžāĻ¤ā§ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¸ā§āĻŦāĻā§āĻāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§, āĻ¸ā§āĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ¨āĻā§āĻāĻļāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻ¸āĻ°ā§āĻŦāĻļā§āĻˇ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ Kubernetes āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ 1.9+ (āĻŽāĻŋāĻāĻā§āĻļāĻ¨āĻžāĻ˛ āĻ ā§āĻ¯āĻžāĻĄāĻŽāĻŋāĻļāĻ¨ āĻāĻ¯āĻŧā§āĻŦāĻšā§āĻ) āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¯ā§āĻā§āĻ¤āĨ¤ Kubernetes āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ 1.7, 1.8 āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ¨āĻŋāĻļāĻŋāĻ¯āĻŧāĻžāĻ˛āĻžāĻāĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¸āĻŽā§āĻāĻŦāĨ¤
āĻ¸āĻžāĻāĻĄāĻāĻžāĻ° āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°āĻā§āĻ˛āĻŋ GRPC āĻĒā§āĻ°ā§āĻā§āĻāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒāĻžāĻāĻ˛āĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°ā§, āĻ¯āĻž āĻāĻĒāĻ¨āĻžāĻā§ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§ āĻāĻāĻ¤ā§ āĻĨāĻžāĻāĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋ āĻĒā§āĻļ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŽāĻĄā§āĻ˛āĻāĻŋāĻā§ āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧā§ˇ GRPC 1.6 āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻĨā§āĻā§ āĻāĻ¨āĻāĻ¯āĻŧ-āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧā§āĻā§, āĻāĻ¸ā§āĻāĻŋāĻāĻ¤ā§ āĻāĻāĻŋ 0.8 āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻĨā§āĻā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻĒāĻžāĻāĻ˛āĻ-āĻāĻā§āĻ¨ā§āĻ - āĻĻā§āĻ¤ā§āĻ° āĻāĻĒāĻ°ā§ āĻāĻāĻāĻŋ āĻā§āĻ˛āĻ āĻ°âā§āĻ¯āĻžāĻĒāĻžāĻ° āĻ¯āĻž āĻ˛āĻā§āĻ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ°āĻā§āĻ˛āĻŋ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻĒāĻžāĻāĻ˛āĻ āĻāĻŦāĻ āĻŽāĻŋāĻā§āĻ¸āĻžāĻ° āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻ°āĻžāĻˇā§āĻā§āĻ°āĻšā§āĻ¨ āĻāĻĒāĻžāĻĻāĻžāĻ¨, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ°āĻžāĻˇā§āĻā§āĻ° āĻŽā§āĻŽāĻ°āĻŋ āĻ°āĻžāĻāĻž āĻšāĻ¯āĻŧ. āĻ¤āĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ Kubernetes āĻāĻžāĻ¸ā§āĻāĻŽ āĻ°āĻŋāĻ¸ā§āĻ°ā§āĻ¸ā§āĻ¸ āĻāĻāĻžāĻ°ā§ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¯āĻž etcd āĻ āĻ¸āĻāĻ°āĻā§āĻˇāĻŋāĻ¤ āĻāĻā§āĨ¤
Istio-āĻāĻā§āĻ¨ā§āĻ āĻĒāĻžāĻāĻ˛āĻ āĻ āĻŋāĻāĻžāĻ¨āĻž āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§ āĻāĻŦāĻ āĻāĻāĻŋāĻ¤ā§ āĻāĻāĻāĻŋ GRPC āĻ¸ā§āĻā§āĻ°ā§āĻŽ āĻā§āĻ˛ā§āĨ¤
āĻ¯ā§āĻŽāĻ¨āĻāĻŋ āĻāĻŽāĻŋ āĻŦāĻ˛ā§āĻāĻŋ, Istio āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¸ā§āĻŦāĻā§āĻāĨ¤ āĻāĻ˛ā§āĻ¨ āĻāĻŋāĻ¨ā§āĻ¤āĻž āĻāĻ°āĻž āĻ¯āĻžāĻ āĻāĻŋāĻāĻžāĻŦā§. āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ āĻāĻ āĻŽāĻ¤:
- āĻāĻŽāĻ°āĻž āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻžāĻāĻŋāĻ° āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻŦā§ˇ
- āĻāĻ¨āĻā§āĻāĻ¨āĻžāĻ°ā§āĻ° āĻ¸āĻžāĻāĻĄāĻāĻžāĻ°ā§ āĻāĻ¨āĻā§āĻāĻļāĻ¨ āĻĻā§āĻāĻ¯āĻŧāĻžāĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§, āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§āĻā§āĻ° āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§ istio-init āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ° āĻāĻŦāĻ istio-āĻāĻā§āĻ¨ā§āĻ āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ° (āĻĻā§āĻ¤) āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ āĻĨāĻŦāĻž āĻ¸ā§āĻā§āĻ˛āĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ Kubernetes āĻ¸āĻ¤ā§āĻ¤āĻžāĻ° Pod āĻŦāĻŋāĻŦāĻ°āĻŖā§ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛āĻŋ āĻĸā§āĻāĻžāĻ¨ā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ .
- istio-init āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ° āĻšāĻ˛ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻ¯āĻž āĻĒāĻĄā§ iptables āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§āĨ¤ āĻāĻ¸ā§āĻāĻŋāĻ-āĻāĻā§āĻ¨ā§āĻ āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°ā§ āĻā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻ āĻŽā§āĻĄāĻŧāĻ āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĻā§āĻāĻŋ āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻ°āĻ¯āĻŧā§āĻā§: iptables āĻĒā§āĻ¨āĻāĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨, āĻ
āĻĨāĻŦāĻž
TPROXY . āĻ˛ā§āĻāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ āĻĒā§āĻ¨āĻāĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§āĨ¤ Istio-init āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧ āĻ¯ā§ āĻā§āĻ¨ āĻ§āĻ°āĻŖā§āĻ° āĻā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻ āĻāĻāĻāĻžāĻ¨ā§ āĻāĻāĻŋāĻ¤ āĻāĻŦāĻ istio-āĻāĻā§āĻ¨ā§āĻāĻā§ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻāĻāĻŋāĻ¤āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻāĻ¤ āĻāĻŦāĻ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦāĻšāĻŋāĻ°ā§āĻāĻžāĻŽā§ āĻā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻāĻā§ āĻŦāĻžāĻ§āĻž āĻĻā§āĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻžāĻā§ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋāĻā§āĻ˛āĻŋ āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§-i
и-b
āĻ āĻ°ā§āĻĨā§*
. āĻāĻĒāĻ¨āĻŋ āĻŦāĻžāĻ§āĻž āĻĻāĻŋāĻ¤ā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĒā§āĻ°ā§āĻ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻžāĻŦāĻ¨ā§āĻāĻā§ āĻŦāĻžāĻ§āĻž āĻ¨āĻž āĻĻā§āĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻŋ āĻĒāĻ¤āĻžāĻāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨-x
. - init āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°āĻā§āĻ˛āĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻžāĻ° āĻĒāĻ°ā§, āĻĒāĻžāĻāĻ˛āĻ-āĻāĻā§āĻ¨ā§āĻ (āĻĻā§āĻ¤) āĻ¸āĻš āĻĒā§āĻ°āĻ§āĻžāĻ¨āĻā§āĻ˛āĻŋ āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻāĻŋ GRPC āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋāĻ¤ āĻĒāĻžāĻāĻ˛āĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°ā§ āĻāĻŦāĻ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻāĻŦāĻ āĻ°āĻžāĻāĻāĻŋāĻ āĻ¨ā§āĻ¤āĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¤āĻĨā§āĻ¯ āĻĒāĻžāĻ¯āĻŧāĨ¤ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻ¤āĻĨā§āĻ¯ āĻ āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§, āĻ¤āĻŋāĻ¨āĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°āĻā§āĻ˛āĻŋ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻā§āĻŦāĻžāĻ°āĻ¨ā§āĻāĻ¸ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻļā§āĻˇ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻā§āĻ˛āĻŋāĻ¤ā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻŦāĻŋāĻˇāĻ¯āĻŧ āĻ¨ā§āĻ āĻāĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨: āĻĻā§āĻ¤ āĻāĻ¤āĻŋāĻļā§āĻ˛āĻāĻžāĻŦā§ āĻļā§āĻ°ā§āĻ¤āĻžāĻĻā§āĻ° (āĻāĻāĻĒāĻŋ, āĻĒā§āĻ°ā§āĻ āĻā§āĻĄāĻŧāĻž) āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°ā§ āĻ¯āĻž āĻāĻāĻŋ āĻļā§āĻ¨āĻ¤ā§ āĻļā§āĻ°ā§ āĻāĻ°ā§āĨ¤ āĻ āĻ¤āĻāĻŦ, āĻ¯āĻāĻ¨ āĻ āĻ¨ā§āĻ°ā§āĻ§āĻā§āĻ˛āĻŋ āĻĒāĻĄā§ āĻĒā§āĻ°āĻŦā§āĻļ āĻāĻ°ā§ āĻāĻŦāĻ āĻ¸āĻžāĻāĻĄāĻāĻžāĻ°ā§ āĻĒā§āĻ¨āĻāĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ iptables āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒā§āĻ¨āĻāĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻ¤āĻāĻ¨ āĻĻā§āĻ¤ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻ¸āĻĢāĻ˛āĻāĻžāĻŦā§ āĻāĻ āĻ¸āĻāĻ¯ā§āĻāĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŦāĻ āĻŦā§āĻāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯ā§ āĻā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻā§āĻ° āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻā§āĻĨāĻžāĻ¯āĻŧ āĻĒā§āĻ°āĻā§āĻ¸āĻŋ āĻāĻ°āĻž āĻĻāĻ°āĻāĻžāĻ°ā§ˇ āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§, āĻ¤āĻĨā§āĻ¯ āĻŽāĻŋāĻā§āĻ¸āĻžāĻ°ā§ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧ, āĻ¯āĻž āĻāĻŽāĻ°āĻž āĻĒāĻ°ā§ āĻĻā§āĻāĻŦ āĻāĻŦāĻ āĻā§āĻ°ā§āĻ¸āĻŋāĻ āĻ¸ā§āĻĒā§āĻ¯āĻžāĻ¨āĻā§āĻ˛āĻŋ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧāĨ¤
āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻŽāĻ°āĻž āĻāĻ¨āĻāĻ¯āĻŧ āĻĒā§āĻ°āĻā§āĻ¸āĻŋ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻĒāĻžāĻ, āĻ¯āĻž āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ (āĻĒāĻžāĻāĻ˛āĻ) āĻĨā§āĻā§ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĨ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻŽā§āĻā§ āĻāĻŦāĻ āĻŦāĻšāĻŋāĻ°ā§āĻŽā§āĻā§ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻĻā§āĻ¤ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻ āĻ§āĻŋāĻāĻ¨ā§āĻ¤ā§, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° TCP āĻā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻ āĻŦāĻžāĻ§āĻžāĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛ āĻ¯ā§ Kubernetes āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž IP āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¨āĻž āĻāĻ°ā§āĻ UDP-āĻāĻ° āĻāĻĒāĻ° kube-dns āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¤āĻžāĻ°āĻĒāĻ°ā§, āĻ°ā§āĻā§āĻ˛āĻŋāĻāĻļāĻ¨ā§āĻ° āĻĒāĻ°ā§, āĻŦāĻšāĻŋāĻ°ā§āĻāĻžāĻŽā§ āĻ āĻ¨ā§āĻ°ā§āĻ§āĻāĻŋ āĻĻā§āĻ¤ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻāĻāĻžāĻ¨ā§ āĻāĻŦāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻž āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨ā§āĻ¯āĻŧ āĻā§āĻ¨ āĻļā§āĻˇ āĻŦāĻŋāĻ¨ā§āĻĻā§āĻ¤ā§ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻŦā§ (āĻŦāĻž āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻŦā§ āĻ¨āĻž, āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻ¨ā§āĻ¤āĻŋāĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻŦāĻž āĻ¸āĻžāĻ°ā§āĻāĻŋāĻ āĻŦā§āĻ°ā§āĻāĻžāĻ° āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ āĻā§āĻ°āĻŋāĻāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§)āĨ¤
āĻāĻŽāĻ°āĻž āĻĒāĻžāĻāĻ˛āĻ āĻŦāĻžāĻāĻžāĻ āĻāĻ°ā§āĻāĻŋ, āĻāĻāĻ¨ āĻāĻŽāĻžāĻĻā§āĻ° āĻŦā§āĻāĻ¤ā§ āĻšāĻŦā§ āĻāĻŋāĻāĻžāĻŦā§ āĻŽāĻŋāĻā§āĻ¸āĻžāĻ° āĻāĻžāĻ āĻāĻ°ā§ āĻāĻŦāĻ āĻā§āĻ¨ āĻāĻāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋāĻ¤ā§ āĻ
āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻĒāĻĄāĻŧāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻŽāĻŋāĻā§āĻ¸āĻžāĻ° āĻ¤āĻžāĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻāĻāĻžāĻ°ā§ āĻĻā§āĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ āĻŋāĻ¤: āĻāĻ¸ā§āĻāĻŋāĻ-āĻā§āĻ˛āĻŋāĻŽā§āĻā§āĻ°āĻŋ, āĻāĻ¸ā§āĻāĻŋāĻ-āĻĒāĻ˛āĻŋāĻ¸āĻŋ (āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ 0.8 āĻāĻ° āĻāĻā§ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻ¸ā§āĻāĻŋāĻ-āĻŽāĻŋāĻā§āĻ¸āĻžāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻāĻŋāĻ˛)āĨ¤ āĻ¤āĻžāĻĻā§āĻ° āĻāĻāĻ¯āĻŧāĻ āĻŽāĻŋāĻļā§āĻ, āĻ¯āĻžāĻ° āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§āĻāĻāĻŋ āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻāĻžāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĻāĻžāĻ¯āĻŧā§āĨ¤ Istio āĻā§āĻ˛āĻŋāĻŽā§āĻā§āĻ°āĻŋ āĻ¸āĻžāĻāĻĄāĻāĻžāĻ° āĻ°āĻŋāĻĒā§āĻ°ā§āĻ āĻāĻ¨ā§āĻā§āĻ¨āĻžāĻ° āĻĨā§āĻā§ GRPC-āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¤āĻĨā§āĻ¯ āĻĒāĻžāĻ¯āĻŧ āĻā§ āĻā§āĻĨāĻžāĻ¯āĻŧ āĻ¯āĻžāĻā§āĻā§ āĻāĻŦāĻ āĻā§ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻā§āĻā§āĨ¤ Istio-āĻ¨ā§āĻ¤āĻŋ āĻ¨ā§āĻ¤āĻŋāĻ° āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻŖ āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§āĨ¤ āĻĒāĻ˛āĻŋāĻ¸āĻŋ āĻā§āĻ, āĻ āĻŦāĻļā§āĻ¯āĻ, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ āĻ¨ā§āĻ°ā§āĻ§ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž, āĻ¤āĻŦā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻā§ (āĻ¸āĻžāĻāĻĄāĻāĻžāĻ°ā§) āĻā§āĻ¯āĻžāĻļā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ°āĻŋāĻĒā§āĻ°ā§āĻ āĻā§āĻ āĻŦā§āĻ¯āĻžāĻ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧ. āĻāĻŽāĻ°āĻž āĻāĻāĻŋāĻā§ āĻā§āĻāĻžāĻŦā§ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻ āĻŋāĻ āĻā§ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋāĻā§āĻ˛āĻŋ āĻāĻāĻā§ āĻĒāĻ°ā§ āĻĒāĻžāĻ āĻžāĻ¤ā§ āĻšāĻŦā§ āĻ¤āĻž āĻĻā§āĻāĻŦāĨ¤
āĻŽāĻŋāĻā§āĻ¸āĻžāĻ° āĻāĻāĻāĻŋ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¯āĻž āĻā§āĻ˛āĻŋāĻŽā§āĻā§āĻ°āĻŋ āĻĄā§āĻāĻž āĻ¸āĻāĻā§āĻ°āĻš āĻāĻŦāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ°āĻŖā§āĻ° āĻŽāĻ¸ā§āĻŖ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°ā§āĨ¤ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻāĻŋ āĻāĻāĻāĻŋ āĻŦāĻšā§-āĻ¸ā§āĻ¤āĻ°ā§āĻ° āĻŦāĻžāĻĢāĻžāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻļā§āĻˇ āĻšāĻ¯āĻŧāĨ¤ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻāĻāĻžāĻŦā§, āĻĄā§āĻāĻž āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻāĻĄāĻāĻžāĻ°ā§āĻ° āĻĻāĻŋāĻā§ āĻŦāĻžāĻĢāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻŽāĻŋāĻā§āĻ¸āĻžāĻ°ā§āĻ° āĻĒāĻžāĻļā§ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻ¤āĻĨāĻžāĻāĻĨāĻŋāĻ¤ āĻŽāĻŋāĻā§āĻ¸āĻžāĻ° āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄā§ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧāĨ¤ āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻā§āĻ¨ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ˛ā§, āĻŦāĻžāĻĢāĻžāĻ° āĻŦā§āĻĻā§āĻ§āĻŋ āĻĒāĻžāĻ¯āĻŧ āĻāĻŦāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻāĻ°āĻžāĻ° āĻĒāĻ°ā§ āĻĢā§āĻ˛āĻžāĻļ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻŽāĻŋāĻā§āĻ¸āĻžāĻ° āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄ āĻšāĻ˛ āĻā§āĻ˛āĻŋāĻŽā§āĻā§āĻ°āĻŋ āĻĄā§āĻāĻž āĻĒāĻžāĻ āĻžāĻ¨ā§āĻ° āĻļā§āĻˇ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ: statsd, newrelic, āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻā§āĻ° āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄ āĻ˛āĻŋāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻāĻāĻŋ āĻŦā§āĻļ āĻ¸āĻšāĻ, āĻāĻŦāĻ āĻāĻŽāĻ°āĻž āĻāĻāĻŋ āĻāĻŋāĻāĻžāĻŦā§ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¤āĻž āĻĻā§āĻāĻŦāĨ¤
āĻ¸āĻāĻā§āĻˇā§āĻĒā§, istio-āĻā§āĻ˛āĻŋāĻŽā§āĻā§āĻ°āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻ¸ā§āĻāĻŋāĻŽāĻāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ°ā§āĻĒāĨ¤
- āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž 1 āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž 2-āĻā§ āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻĒāĻžāĻ āĻžāĻ¯āĻŧā§ˇ
- āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž 1 āĻā§āĻĄāĻŧā§ āĻ¯āĻžāĻāĻ¯āĻŧāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ āĻ¨ā§āĻ°ā§āĻ§āĻāĻŋ āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻ¸āĻžāĻāĻĄāĻāĻžāĻ°ā§ āĻŽā§āĻĄāĻŧāĻžāĻ¨ā§ āĻšāĻ¯āĻŧāĨ¤
- āĻ¸āĻžāĻāĻĄāĻāĻžāĻ° āĻĻā§āĻ¤ āĻā§āĻāĻžāĻŦā§ āĻ āĻ¨ā§āĻ°ā§āĻ§āĻāĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž 2-āĻ āĻ¯āĻžāĻ¯āĻŧ āĻ¤āĻž āĻĒāĻ°ā§āĻ¯āĻŦā§āĻā§āĻˇāĻŖ āĻāĻ°ā§ āĻāĻŦāĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ¤āĻĨā§āĻ¯ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻāĻ°ā§āĨ¤
- āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻāĻŋ āĻ°āĻŋāĻĒā§āĻ°ā§āĻ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ istio-āĻā§āĻ˛āĻŋāĻŽā§āĻā§āĻ°āĻŋāĻ¤ā§ āĻĒāĻžāĻ āĻžāĻ¯āĻŧāĨ¤
- āĻāĻ¸ā§āĻāĻŋāĻ-āĻā§āĻ˛āĻŋāĻŽā§āĻā§āĻ°āĻŋ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§ āĻ¯ā§ āĻāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻŦā§āĻĻāĻ¨āĻāĻŋ āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄā§ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻĻāĻ°āĻāĻžāĻ°, āĻā§āĻ¨āĻāĻŋ āĻāĻŦāĻ āĻā§āĻ¨ āĻĄā§āĻāĻž āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻĻāĻ°āĻāĻžāĻ°āĨ¤
- āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ āĻāĻ¸ā§āĻāĻŋāĻ-āĻā§āĻ˛āĻŋāĻŽā§āĻā§āĻ°āĻŋ āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄā§ āĻ°āĻŋāĻĒā§āĻ°ā§āĻ āĻĄā§āĻāĻž āĻĒāĻžāĻ āĻžāĻ¯āĻŧāĨ¤
āĻāĻāĻ¨ āĻĻā§āĻāĻž āĻ¯āĻžāĻ āĻāĻŋāĻāĻžāĻŦā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ Istio āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻāĻĒāĻžāĻĻāĻžāĻ¨ (āĻĒāĻžāĻāĻ˛āĻ āĻāĻŦāĻ āĻ¸āĻžāĻāĻĄāĻāĻžāĻ° āĻĻā§āĻ¤) āĻ¸āĻŽāĻ¨ā§āĻŦāĻŋāĻ¤āĨ¤
āĻĒā§āĻ°āĻĨāĻŽā§, āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ (āĻāĻžāĻ˛) āĻĻā§āĻāĻŋ āĻ¯āĻž āĻĒāĻžāĻāĻ˛āĻ āĻĒāĻĄāĻŧā§:
apiVersion: v1
kind: ConfigMap
metadata:
name: istio
namespace: istio-system
labels:
app: istio
service: istio
data:
mesh: |-
# ĐŋĐžĐēĐ° ŅŅĐž ĐŊĐĩ вĐēĐģŅŅĐ°ĐĩĐŧ ĐžŅĐŋŅавĐēŅ tracing иĐŊŅĐžŅĐŧĐ°Ņии (pilot ĐŊĐ°ŅŅŅОиŅ envoyâи ŅĐ°ĐēиĐŧ ОйŅаСОĐŧ, ŅŅĐž ĐžŅĐŋŅавĐēĐ° ĐŊĐĩ ĐąŅĐ´ĐĩŅ ĐŋŅОиŅŅ
ОдиŅŅ)
enableTracing: false
# ĐŋĐžĐēĐ° ŅŅĐž ĐŊĐĩ ŅĐēаСŅваĐĩĐŧ mixer endpointâŅ, ŅŅОйŅ sidecar ĐēĐžĐŊŅĐĩĐšĐŊĐĩŅŅ ĐŊĐĩ ĐžŅĐŋŅавĐģŅĐģи иĐŊŅĐžŅĐŧĐ°ŅиŅ ŅŅĐ´Đ°
#mixerCheckServer: istio-policy.istio-system:15004
#mixerReportServer: istio-telemetry.istio-system:15004
# ŅŅавиĐŧ вŅĐĩĐŧĐĩĐŊĐŊОК ĐŋŅĐžĐŧĐĩĐļŅŅĐžĐē, Ņ ĐēĐžŅĐžŅŅĐŧ ĐąŅĐ´ĐĩŅ envoy ĐŋĐĩŅĐĩŅĐŋŅĐ°ŅиваŅŅ Pilot (ŅŅĐž Đ´ĐģŅ ŅŅĐ°ŅОК вĐĩŅŅии envoy proxy)
rdsRefreshDelay: 5s
# default ĐēĐžĐŊŅиĐŗŅŅĐ°ŅиŅ Đ´ĐģŅ envoy sidecar
defaultConfig:
# Đ°ĐŊĐ°ĐģĐžĐŗиŅĐŊĐž ĐēĐ°Đē rdsRefreshDelay
discoveryRefreshDelay: 5s
# ĐžŅŅавĐģŅĐĩĐŧ ĐŋĐž ŅĐŧĐžĐģŅĐ°ĐŊиŅ (ĐŋŅŅŅ Đē ĐēĐžĐŊŅиĐŗŅŅĐ°Ņии и йиĐŊĐ°ŅŅ envoy)
configPath: "/etc/istio/proxy"
binaryPath: "/usr/local/bin/envoy"
# Đ´ĐĩŅĐžĐģŅĐŊĐžĐĩ иĐŧŅ СаĐŋŅŅĐĩĐŊĐŊĐžĐŗĐž sidecar ĐēĐžĐŊŅĐĩĐšĐŊĐĩŅĐ° (иŅĐŋĐžĐģŅСŅĐĩŅŅŅ, ĐŊĐ°ĐŋŅиĐŧĐĩŅ, в иĐŧĐĩĐŊĐ°Ņ
ŅĐĩŅвиŅĐ° ĐŋŅи ĐžŅĐŋŅавĐēĐĩ tracing spanâОв)
serviceCluster: istio-proxy
# вŅĐĩĐŧŅ, ĐēĐžŅĐžŅĐžĐĩ ĐąŅĐ´ĐĩŅ ĐļĐ´Đ°ŅŅ envoy Đ´Đž ŅĐžĐŗĐž, ĐēĐ°Đē ĐžĐŊ ĐŋŅиĐŊŅдиŅĐĩĐģŅĐŊĐž СавĐĩŅŅиŅ вŅĐĩ ŅŅŅĐ°ĐŊОвĐģĐĩĐŊĐŊŅĐĩ ŅĐžĐĩдиĐŊĐĩĐŊиŅ
drainDuration: 45s
parentShutdownDuration: 1m0s
# ĐŋĐž ŅĐŧĐžĐģŅĐ°ĐŊиŅ иŅĐŋĐžĐģŅСŅŅŅŅŅ REDIRECT ĐŋŅавиĐģĐ° iptables. ĐĐžĐļĐŊĐž иСĐŧĐĩĐŊиŅŅ ĐŊĐ° TPROXY.
#interceptionMode: REDIRECT
# ĐĐžŅŅ, ĐŊĐ° ĐēĐžŅĐžŅĐžĐŧ ĐąŅĐ´ĐĩŅ СаĐŋŅŅĐĩĐŊĐ° admin ĐŋĐ°ĐŊĐĩĐģŅ ĐēĐ°ĐļĐ´ĐžĐŗĐž sidecar ĐēĐžĐŊŅĐĩĐšĐŊĐĩŅĐ° (envoy)
proxyAdminPort: 15000
# Đ°Đ´ŅĐĩŅ, ĐŋĐž ĐēĐžŅĐžŅĐžĐŧŅ ĐąŅĐ´ŅŅ ĐžŅĐŋŅавĐģŅŅŅŅŅ traceâŅ ĐŋĐž zipkin ĐŋŅĐžŅĐžĐēĐžĐģŅ (в ĐŊĐ°ŅĐ°ĐģĐĩ ĐŧŅ ĐžŅĐēĐģŅŅиĐģи ŅĐ°ĐŧŅ ĐžŅĐŋŅавĐēŅ, ĐŋĐžŅŅĐžĐŧŅ ŅŅĐž ĐŋĐžĐģĐĩ ŅĐĩĐšŅĐ°Ņ ĐŊĐĩ ĐąŅĐ´ĐĩŅ иŅĐŋĐžĐģŅСОваŅŅŅŅ)
zipkinAddress: tracing-collector.tracing:9411
# statsd Đ°Đ´ŅĐĩŅ Đ´ĐģŅ ĐžŅĐŋŅавĐēи ĐŧĐĩŅŅиĐē envoy ĐēĐžĐŊŅĐĩĐšĐŊĐĩŅОв (ĐžŅĐēĐģŅŅĐ°ĐĩĐŧ)
# statsdUdpAddress: aggregator:8126
# вŅĐēĐģŅŅĐ°ĐĩĐŧ ĐŋОддĐĩŅĐļĐēŅ ĐžĐŋŅии Mutual TLS
controlPlaneAuthPolicy: NONE
# Đ°Đ´ŅĐĩŅ, ĐŊĐ° ĐēĐžŅĐžŅĐžĐŧ ĐąŅĐ´ĐĩŅ ŅĐģŅŅĐ°ŅŅ istio-pilot Đ´ĐģŅ ŅĐžĐŗĐž, ŅŅОйŅ ŅООйŅĐ°ŅŅ иĐŊŅĐžŅĐŧĐ°ŅиŅ Đž service discovery вŅĐĩĐŧ sidecar ĐēĐžĐŊŅĐĩĐšĐŊĐĩŅĐ°Đŧ
discoveryAddress: istio-pilot.istio-system:15007
āĻāĻŽāĻ°āĻž āĻā§āĻŦāĻžāĻ°āĻ¨ā§āĻāĻ¸ā§āĻ° āĻ¨ā§āĻŽāĻ¸ā§āĻĒā§āĻ¸ āĻāĻ¸ā§āĻāĻŋāĻ-āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ°āĻžāĻāĻŦāĨ¤
āĻ¸āĻ°ā§āĻŦāĻ¨āĻŋāĻŽā§āĻ¨, āĻāĻŽāĻžāĻĻā§āĻ° āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒāĻžāĻāĻ˛āĻ āĻŽā§āĻ¤āĻžāĻ¯āĻŧā§āĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦ
āĻāĻŦāĻ āĻāĻŽāĻ°āĻž āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°ā§āĻ° āĻāĻ¨āĻā§āĻāĻļāĻ¨ āĻ¸āĻžāĻāĻĄāĻāĻžāĻ°āĻāĻŋ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛āĻŋ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻŦāĨ¤
Init āĻ§āĻžāĻ°āĻ:
initContainers:
- name: istio-init
args:
- -p
- "15001"
- -u
- "1337"
- -m
- REDIRECT
- -i
- '*'
- -b
- '*'
- -d
- ""
image: istio/proxy_init:1.0.0
imagePullPolicy: IfNotPresent
resources:
limits:
memory: 128Mi
securityContext:
capabilities:
add:
- NET_ADMIN
āĻāĻŦāĻ āĻ¸āĻžāĻāĻĄāĻāĻžāĻ°:
name: istio-proxy
args:
- "bash"
- "-c"
- |
exec /usr/local/bin/pilot-agent proxy sidecar
--configPath
/etc/istio/proxy
--binaryPath
/usr/local/bin/envoy
--serviceCluster
service-name
--drainDuration
45s
--parentShutdownDuration
1m0s
--discoveryAddress
istio-pilot.istio-system:15007
--discoveryRefreshDelay
1s
--connectTimeout
10s
--proxyAdminPort
"15000"
--controlPlaneAuthPolicy
NONE
env:
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
- name: INSTANCE_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
- name: ISTIO_META_POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: ISTIO_META_INTERCEPTION_MODE
value: REDIRECT
image: istio/proxyv2:1.0.0
imagePullPolicy: IfNotPresent
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
memory: 2048Mi
securityContext:
privileged: false
readOnlyRootFilesystem: true
runAsUser: 1337
volumeMounts:
- mountPath: /etc/istio/proxy
name: istio-envoy
āĻ¸āĻŦāĻāĻŋāĻā§ āĻ¸āĻĢāĻ˛āĻāĻžāĻŦā§ āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻžāĻā§ āĻĒāĻžāĻāĻ˛āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ ServiceAccount, ClusterRole, ClusterRoleBinding, CRD āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§, āĻ¯āĻžāĻ° āĻŦāĻŋāĻŦāĻ°āĻŖ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻŦā§
āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¯ā§ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻžāĻāĻŋāĻ¤ā§ āĻāĻŽāĻ°āĻž āĻĻā§āĻ¤ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻ¸āĻžāĻāĻĄāĻāĻžāĻ° āĻāĻ¨āĻā§āĻāĻļāĻ¨ āĻāĻ°āĻŋ āĻ¤āĻž āĻ¸āĻĢāĻ˛āĻāĻžāĻŦā§ āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤, āĻĒāĻžāĻāĻ˛āĻā§āĻ° āĻāĻžāĻ āĻĨā§āĻā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻŦāĻŋāĻˇā§āĻāĻžāĻ° āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻāĻŦāĻ āĻ āĻ¨ā§āĻ°ā§āĻ§āĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻž āĻāĻāĻŋāĻ¤āĨ¤
āĻāĻāĻž āĻŦā§āĻāĻž āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻ¯ā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛ āĻĒā§āĻ˛ā§āĻ¨ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¸ā§āĻā§āĻāĻ˛ā§āĻ¸ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻāĻŦāĻ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻāĻžāĻĄāĻŧāĻžāĻ āĻ āĻ¨ā§āĻā§āĻŽāĻŋāĻāĻāĻžāĻŦā§ āĻŽāĻžāĻĒāĻžāĻ¨ā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ Kubernetes āĻ¸āĻŽā§āĻĒāĻĻā§āĻ° āĻāĻžāĻ¸ā§āĻāĻŽ āĻŦāĻŋāĻŦāĻ°āĻŖā§āĻ° āĻāĻāĻžāĻ°ā§ etcd-āĻ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĄā§āĻāĻž āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
Istio āĻāĻāĻžāĻĄāĻŧāĻžāĻ (āĻāĻāĻ¨āĻ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ) āĻāĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§āĻ° āĻŦāĻžāĻāĻ°ā§ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻā§āĻˇāĻŽāĻ¤āĻž āĻāĻŦāĻ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ Kubernetes āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻāĻŦāĻŋāĻˇā§āĻāĻžāĻ° āĻĻā§āĻāĻžāĻ° āĻāĻŦāĻ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻā§āĻˇāĻŽāĻ¤āĻž āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°ā§ āĻĒāĻĄāĻŧāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻāĻāĻŋ āĻŽāĻžāĻ˛ā§āĻāĻŋ-āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻāĻ¨āĻ¸ā§āĻāĻ˛ā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻžāĻā§āĻ˛āĻŋ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§āĻ¨:
- āĻĒāĻĄ āĻ¸āĻŋāĻāĻāĻĄāĻŋāĻāĻ° āĻāĻŦāĻ āĻ¸āĻžāĻ°ā§āĻāĻŋāĻ¸ āĻ¸āĻŋāĻāĻāĻĄāĻŋāĻāĻ° āĻ āĻŦāĻļā§āĻ¯āĻ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻā§āĻĄāĻŧā§ āĻ āĻ¨āĻ¨ā§āĻ¯ āĻšāĻ¤ā§ āĻšāĻŦā§ āĻāĻŦāĻ āĻāĻāĻžāĻ°āĻ˛ā§āĻ¯āĻžāĻĒ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧāĨ¤
- āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒāĻĄ āĻ¸āĻŋāĻāĻāĻĄāĻŋāĻāĻ° āĻ āĻŦāĻļā§āĻ¯āĻ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°āĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¯ā§ āĻā§āĻ¨āĻ āĻĒāĻĄ āĻ¸āĻŋāĻāĻāĻĄāĻŋāĻāĻ° āĻĨā§āĻā§ āĻĒā§āĻāĻāĻžāĻ¤ā§ āĻšāĻŦā§ā§ˇ
- āĻ¸āĻŽāĻ¸ā§āĻ¤ Kubernetes API āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻā§ āĻ āĻĒāĻ°ā§āĻ° āĻāĻžāĻā§ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸āĻ¯ā§āĻā§āĻ¯ āĻšāĻ¤ā§ āĻšāĻŦā§āĨ¤
Istio āĻāĻ° āĻ¸āĻžāĻĨā§ āĻļā§āĻ°ā§ āĻāĻ°āĻ¤ā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ āĻā§āĻŽāĻŋāĻāĻžāĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻāĻ¨āĻ āĻ
āĻ¨ā§āĻ āĻā§āĻˇāĻ¤āĻŋ āĻāĻā§. āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻŦāĻšāĻŋāĻ°āĻžāĻāĻ¤ āĻā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻ āĻ°āĻžāĻāĻāĻŋāĻ āĻāĻ°āĻžāĻ° āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ (āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§āĻ° āĻŦāĻžāĻāĻ°ā§), āĻ¸āĻžāĻāĻĄāĻāĻžāĻ° āĻĄāĻŋāĻŦāĻžāĻ āĻāĻ°āĻžāĻ° āĻĒāĻ¨ā§āĻĨāĻž, āĻĒā§āĻ°ā§āĻĢāĻžāĻāĻ˛āĻŋāĻ, āĻāĻāĻāĻŋ āĻŽāĻŋāĻā§āĻ¸āĻžāĻ° āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻž āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻāĻžāĻ¸ā§āĻāĻŽ āĻŽāĻŋāĻā§āĻ¸āĻžāĻ° āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄ āĻ˛ā§āĻāĻž, āĻā§āĻ°ā§āĻ¸āĻŋāĻ āĻŽā§āĻāĻžāĻ¨āĻŋāĻāĻŽ āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻž āĻāĻŦāĻ āĻĻā§āĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻ° āĻ
āĻĒāĻžāĻ°ā§āĻļāĻ¨āĨ¤
āĻāĻŽāĻ°āĻž āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻĒā§āĻ°āĻāĻžāĻļāĻ¨āĻžāĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻŦāĨ¤ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻļā§āĻ¨ āĻāĻŋāĻā§āĻāĻžāĻ¸āĻž āĻāĻ°ā§āĻ¨, āĻāĻŽāĻŋ āĻ¤āĻžāĻĻā§āĻ° āĻ¸ā§āĻĒāĻˇā§āĻ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻŦ.
āĻāĻ¤ā§āĻ¸: www.habr.com