ื‘ืขื™ื•ืช ืขื DNS ื‘- Kubernetes. ื ืชื™ื—ื” ืคื•ืžื‘ื™ืช ืฉืœืื—ืจ ื”ืžื•ื•ืช

ื”ืขืจื” ืชึดืจื’ื•ึผื: ื–ื”ื• ืชืจื’ื•ื ืฉืœ ื ืชื™ื—ื” ืคื•ืžื‘ื™ืช ืœืื—ืจ ื”ืžื•ื•ืช ืžืชื•ืš ื‘ืœื•ื’ ื”ื”ื ื“ืกื” ืฉืœ ื”ื—ื‘ืจื” ืžืžืฉ. ื”ื•ื ืžืชืืจ ื‘ืขื™ื” ื‘ื—ื™ื‘ื•ืจ ื‘ืืฉื›ื•ืœ Kubernetes, ืฉื”ื•ื‘ื™ืœื” ืœื”ืฉื‘ืชื” ื—ืœืงื™ืช ืฉืœ ื—ืœืง ืžืฉื™ืจื•ืชื™ ื”ื™ื™ืฆื•ืจ.

ืžืืžืจ ื–ื” ืขืฉื•ื™ ืœื”ื™ื•ืช ืฉื™ืžื•ืฉื™ ืขื‘ื•ืจ ืืœื” ืฉืจื•ืฆื™ื ืœืœืžื•ื“ ืงืฆืช ื™ื•ืชืจ ืขืœ ื ืชื™ื—ื” ืฉืœืื—ืจ ื”ืžื•ื•ืช ืื• ืœืžื ื•ืข ื‘ืขื™ื•ืช DNS ืคื•ื˜ื ืฆื™ืืœื™ื•ืช ื‘ืขืชื™ื“.

ื‘ืขื™ื•ืช ืขื DNS ื‘- Kubernetes. ื ืชื™ื—ื” ืคื•ืžื‘ื™ืช ืฉืœืื—ืจ ื”ืžื•ื•ืช
ื–ื” ืœื DNS
ื–ื” ืœื ื™ื›ื•ืœ ืœื”ื™ื•ืช DNS
ื–ื” ื”ื™ื” DNS

ืงืฆืช ืขืœ ื ื™ืชื•ื—ื™ื ื•ืชื”ืœื™ื›ื™ื ืฉืœืื—ืจ ื”ืžื•ื•ืช ื‘-Preply

ื ืชื™ื—ื” ืฉืœืื—ืจ ื”ืžื•ื•ืช ืžืชืืจืช โ€‹โ€‹ืชืงืœื” ืื• ืื™ืจื•ืข ื›ืœืฉื”ื• ื‘ื”ืคืงื”. ื”ื ืชื™ื—ื” ืฉืœืื—ืจ ื”ืžื•ื•ืช ื›ื•ืœืœืช ืฆื™ืจ ื–ืžืŸ ืฉืœ ืื™ืจื•ืขื™ื, ืชื™ืื•ืจ ืฉืœ ื”ืฉืคืขืช ื”ืžืฉืชืžืฉ, ืกื™ื‘ืช ื”ืฉื•ืจืฉ, ืคืขื•ืœื•ืช ืฉื ื ืงื˜ื• ื•ื”ืคืงืช ืœืงื—ื™ื.

ืžื—ืคืฉ SRE

ื‘ืคื’ื™ืฉื•ืช ืฉื‘ื•ืขื™ื•ืช ืขื ืคื™ืฆื”, ื‘ื™ืŸ ื”ืฆื•ื•ืช ื”ื˜ื›ื ื™, ืื ื• ื—ื•ืœืงื™ื ืžื™ื“ืข ืžื’ื•ื•ืŸ. ืื—ื“ ื”ื—ืœืงื™ื ื”ื—ืฉื•ื‘ื™ื ื‘ื™ื•ืชืจ ื‘ืžืคื’ืฉื™ื ืžืกื•ื’ ื–ื” ื”ื•ื ื ืชื™ื—ื” ืฉืœืื—ืจ ื”ืžื•ื•ืช, ืฉืœืจื•ื‘ ืžืœื•ื•ืช ื‘ืžืฆื’ืช ืขื ืฉืงืคื™ื ื•ื ื™ืชื•ื— ืžืขืžื™ืง ื™ื•ืชืจ ืฉืœ ื”ืื™ืจื•ืข. ืœืžืจื•ืช ืฉืื ื—ื ื• ืœื ืžื•ื—ืื™ื ื›ืคื™ื™ื ืื—ืจื™ ื”ื ืชื™ื—ื” ืฉืœืื—ืจ ื”ืžื•ื•ืช, ืื ื—ื ื• ืžื ืกื™ื ืœืคืชื— ืชืจื‘ื•ืช ืฉืœ "ืœืœื ืืฉืžื”" (ืชืจื‘ื•ืช ื—ืกืจืช ืืฉืžื”). ืื ื• ืžืืžื™ื ื™ื ืฉื›ืชื™ื‘ืช ื•ื”ืฆื’ืช ื ืชื—ื™ื ืฉืœืื—ืจ ื”ืžื•ื•ืช ื™ื›ื•ืœื™ื ืœืขื–ื•ืจ ืœื ื• (ื•ืœืื—ืจื™ื) ืœืžื ื•ืข ืžืงืจื™ื ื“ื•ืžื™ื ื‘ืขืชื™ื“, ื•ื–ื• ื”ืกื™ื‘ื” ืฉืื ื• ืžืฉืชืคื™ื ืื•ืชื.

ืื ืฉื™ื ื”ืžืขื•ืจื‘ื™ื ื‘ืื™ืจื•ืข ืฆืจื™ื›ื™ื ืœื”ืจื’ื™ืฉ ืฉื”ื ื™ื›ื•ืœื™ื ืœื“ื‘ืจ ื‘ืคื™ืจื•ื˜ ืœืœื ื—ืฉืฉ ืžืขื•ื ืฉ ืื• ืชื’ืžื•ืœ. ืื™ืŸ ืืฉืžื”! ื›ืชื™ื‘ืช ื ืชื™ื—ื” ืฉืœืื—ืจ ื”ืžื•ื•ืช ื”ื™ื ืœื ืขื•ื ืฉ, ืืœื ื”ื–ื“ืžื ื•ืช ืœืžื™ื“ื” ืœื›ืœ ื”ื—ื‘ืจื”.

Keep CALMS & DevOps: S ืžื™ื•ืขื“ ืœืฉื™ืชื•ืฃ

ื‘ืขื™ื•ืช ืขื DNS ื‘- Kubernetes. ื ืชื™ื—ื” ืฉืœืื—ืจ ื”ืžื•ื•ืช

ะ”ะฐั‚ะฐ: 28.02.2020

ืžื—ื‘ืจื™ื: Amet U., Andrey S., Igor K., Alexey P.

ืกื˜ึธื˜ื•ึผืก: ื’ึธืžื•ึผืจ

ื‘ืงืฆืจื”: ื—ื•ืกืจ ื–ืžื™ื ื•ืช ื—ืœืงื™ืช ืฉืœ DNS (26 ื“ืงื•ืช) ืขื‘ื•ืจ ืฉื™ืจื•ืชื™ื ืžืกื•ื™ืžื™ื ื‘ืืฉื›ื•ืœ Kubernetes

ืœึฐื”ึทืฉืึฐืคึผึดื™ืขึท: 15000 ืื™ืจื•ืขื™ื ืื‘ื“ื• ืขื‘ื•ืจ ืฉื™ืจื•ืชื™ื ื', ื‘' ื•-ื’'

ืกื™ื‘ืช ืฉื•ืจืฉ: Kube-proxy ืœื ื”ืฆืœื™ื— ืœื”ืกื™ืจ ื›ื”ืœื›ื” ืขืจืš ื™ืฉืŸ ืžื˜ื‘ืœืช ื”-conntrack, ื›ืš ืฉื—ืœืง ืžื”ืฉื™ืจื•ืชื™ื ืขื“ื™ื™ืŸ ื ื™ืกื• ืœื”ืชื—ื‘ืจ ืœ-pods ืœื ืงื™ื™ืžื™ื

E0228 20:13:53.795782       1 proxier.go:610] Failed to delete kube-system/kube-dns:dns endpoint connections, error: error deleting conntrack entries for UDP peer {100.64.0.10, 100.110.33.231}, error: conntrack command returned: ...

ื”ื“ืง: ื‘ืฉืœ ื”ืขื•ืžืก ื”ื ืžื•ืš ื‘ืชื•ืš ืืฉื›ื•ืœ Kubernetes, CoreDNS-autoscaler ื”ืคื—ื™ืช ืืช ืžืกืคืจ ื”ืคื•ื“ื™ื ื‘ืคืจื™ืกื” ืžืฉืœื•ืฉื” ืœืฉื ื™ื™ื

ืคืชืจื•ืŸ: ื”ืคืจื™ืกื” ื”ื‘ืื” ืฉืœ ื”ืืคืœื™ืงืฆื™ื” ื™ื–ืžื” ืืช ื”ื™ืฆื™ืจื” ืฉืœ ืฆืžืชื™ื ื—ื“ืฉื™ื, CoreDNS-autoscaler ื”ื•ืกื™ืคื” ืชืจืžื™ืœื™ื ื ื•ืกืคื™ื ื›ื“ื™ ืœืฉืจืช ืืช ื”ืืฉื›ื•ืœ, ืžื” ืฉืขื•ืจืจ ืฉื›ืชื•ื‘ ืฉืœ ื˜ื‘ืœืช ื”ื—ื™ื‘ื•ืจื™ื

ืื™ืชื•ืจ: ื ื™ื˜ื•ืจ Prometheus ื–ื™ื”ื” ืžืกืคืจ ืจื‘ ืฉืœ ืฉื’ื™ืื•ืช 5xx ืขื‘ื•ืจ ืฉื™ืจื•ืชื™ื A, B ื•-C ื•ื™ื–ื ืงืจื™ืื” ืœืžื”ื ื“ืกื™ื ื”ืชื•ืจื ื™ื

ื‘ืขื™ื•ืช ืขื DNS ื‘- Kubernetes. ื ืชื™ื—ื” ืคื•ืžื‘ื™ืช ืฉืœืื—ืจ ื”ืžื•ื•ืช
ืฉื’ื™ืื•ืช 5xx ื‘-Kibana

ืคืขื™ืœื•ืช

ืืคืงื˜
ืกื•ื’
ืื—ืจืื™
ืžืฉื™ืžื”

ื”ืฉื‘ืช ืืช Autoscaler ืขื‘ื•ืจ CoreDNS
ื ืžื ืข
ืืžื˜ ื™ื•.
DEVOPS-695

ื”ื’ื“ืจ ืฉืจืช DNS ืœืื—ืกื•ืŸ ื‘ืžื˜ืžื•ืŸ
ืœึฐื”ึทืงึฐื˜ึดื™ืŸ
ืžืงืก V.
DEVOPS-665

ื”ื’ื“ืจ ื ื™ื˜ื•ืจ ื—ื™ื‘ื•ืจื™ื
ื ืžื ืข
ืืžื˜ ื™ื•.
DEVOPS-674

ืœืงื—ื™ื

ืžื” ื”ืœืš ื˜ื•ื‘:

  • ื”ื ื™ื˜ื•ืจ ืขื‘ื“ ื”ื™ื˜ื‘. ื”ืชื’ื•ื‘ื” ื”ื™ื™ืชื” ืžื”ื™ืจื” ื•ืžืื•ืจื’ื ืช
  • ืœื ืคื’ืขื ื• ื‘ืฉื•ื ืžื’ื‘ืœื” ืขืœ ื”ืฆืžืชื™ื

ืžื” ื”ื™ื” ืœื ื‘ืกื“ืจ:

  • ืขื“ื™ื™ืŸ ืœื ื™ื“ื•ืข ืฉื•ืจืฉ ืืžื™ืชื™, ื“ื•ืžื” ืœ ื‘ืื’ ืกืคืฆื™ืคื™ ื‘ืงืฉืจ
  • ื›ืœ ื”ืคืขื•ืœื•ืช ืžืชืงื ื•ืช ืจืง ืืช ื”ื”ืฉืœื›ื•ืช, ืœื ืืช ื”ืกื™ื‘ื” (ื‘ืื’)
  • ื™ื“ืขื ื• ืฉื‘ืžื•ืงื“ื ืื• ื‘ืžืื•ื—ืจ ืขืœื•ืœื•ืช ืœื”ื™ื•ืช ืœื ื• ื‘ืขื™ื•ืช ืขื DNS, ืื‘ืœ ืœื ืชื™ืขื“ื ื• ืืช ื”ืžืฉื™ืžื•ืช

ืื™ืคื” ื”ืชืžื–ืœ ืžื–ืœื ื•:

  • ื”ืคืจื™ืกื” ื”ื‘ืื” ื”ื•ืคืขืœื” ืขืœ ื™ื“ื™ CoreDNS-autoscaler, ืฉื”ื—ืœื™ืคื” ืืช ื˜ื‘ืœืช ื”ื—ื™ื‘ื•ืจื™ื
  • ื‘ืื’ ื–ื” ื”ืฉืคื™ืข ืจืง ืขืœ ืฉื™ืจื•ืชื™ื ืžืกื•ื™ืžื™ื

ืฆื™ืจ ื–ืžืŸ (EET)

ื–ืžืŸ
ืืคืงื˜

22:13
CoreDNS-autoscaler ื”ืคื—ื™ืช ืืช ืžืกืคืจ ื”ืคื•ื“ื™ื ืžืฉืœื•ืฉื” ืœืฉื ื™ื™ื

22:18
ืžื”ื ื“ืกื™ื ื‘ืžืฉืžืจืช ื”ื—ืœื• ืœืงื‘ืœ ืฉื™ื—ื•ืช ืžืžืขืจื›ืช ื”ื ื™ื˜ื•ืจ

22:21
ื”ืžื”ื ื“ืกื™ื ื”ืชื•ืจื ื™ื ื”ื—ืœื• ืœื‘ืจืจ ืืช ืกื™ื‘ืช ื”ื˜ืขื•ื™ื•ืช.

22:39
ืžื”ื ื“ืกื™ื ื‘ืชืคืงื™ื“ ื”ื—ืœื• ืœื”ื—ื–ื™ืจ ืืช ืื—ื“ ื”ืฉื™ืจื•ืชื™ื ื”ืื—ืจื•ื ื™ื ืœื’ืจืกื” ื”ืงื•ื“ืžืช

22:40
ืฉื’ื™ืื•ืช 5xx ื”ืคืกื™ืงื• ืœื”ื•ืคื™ืข, ื”ืžืฆื‘ ื”ืชื™ื™ืฆื‘

  • ื–ืžืŸ ืœื’ื™ืœื•ื™: 4 ื“ืงื•ืช
  • ื–ืžืŸ ืœืคื ื™ ืคืขื•ืœื”: 21 ื“ืงื•ืช
  • ื–ืžืŸ ืœืชืงืŸ: 1 ื“ืงื•ืช

ืžื™ื“ืข ื ื•ืกืฃ

ื›ื“ื™ ืœืžื–ืขืจ ืืช ื”ืฉื™ืžื•ืฉ ื‘ืžืขื‘ื“, ืœื™ื‘ืช ืœื™ื ื•ืงืก ืžืฉืชืžืฉืช ื‘ืžืฉื”ื• ืฉื ืงืจื conntrack. ื‘ืงื™ืฆื•ืจ, ื–ื”ื• ื›ืœื™ ืขื–ืจ ืฉืžื›ื™ืœ ืจืฉื™ืžื” ืฉืœ ืจืฉื•ืžื•ืช NAT ืฉืžืื•ื—ืกื ื•ืช ื‘ื˜ื‘ืœื” ืžื™ื•ื—ื“ืช. ื›ืืฉืจ ื”ื—ื‘ื™ืœื” ื”ื‘ืื” ืชื’ื™ืข ืžืื•ืชื• ืคื•ื“ ืœืื•ืชื• ืคื•ื“ ื›ืžื• ืงื•ื“ื, ื›ืชื•ื‘ืช ื”-IP ื”ืกื•ืคื™ืช ืœื ืชื—ื•ืฉื‘ ืžื—ื“ืฉ, ืืœื ืชื™ืœืงื— ืžื˜ื‘ืœืช ื”-conntrack.
ื‘ืขื™ื•ืช ืขื DNS ื‘- Kubernetes. ื ืชื™ื—ื” ืคื•ืžื‘ื™ืช ืฉืœืื—ืจ ื”ืžื•ื•ืช
ืื™ืš ืขื•ื‘ื“ ื”ืงืฉืจ

ืชื•ืฆืื•ืช ืฉืœ

ื–ื• ื”ื™ื™ืชื” ื“ื•ื’ืžื” ืœืื—ื“ ืžื”ื ื™ืชื•ื—ื™ื ืฉืœืื—ืจ ื”ืžื•ื•ืช ืฉืœื ื• ืขื ื›ืžื” ืงื™ืฉื•ืจื™ื ืฉื™ืžื•ืฉื™ื™ื. ืกืคืฆื™ืคื™ืช ื‘ืžืืžืจ ื–ื”, ืื ื• ื—ื•ืœืงื™ื ืžื™ื“ืข ืฉืขืฉื•ื™ ืœื”ื™ื•ืช ืฉื™ืžื•ืฉื™ ืœื—ื‘ืจื•ืช ืื—ืจื•ืช. ืœื›ืŸ ืื ื—ื ื• ืœื ืžืคื—ื“ื™ื ืœืขืฉื•ืช ื˜ืขื•ื™ื•ืช ื•ื‘ื’ืœืœ ื–ื” ืื ื—ื ื• ืžืคืจืกืžื™ื ืืช ืื—ืช ื”ื ืชื™ื—ื” ืฉืœืื—ืจ ื”ืžื•ื•ืช ืฉืœื ื•. ื”ื ื” ื›ืžื” ื ืชื—ื™ื ืคื•ืžื‘ื™ื™ื ืžืขื ื™ื™ื ื™ื ื ื•ืกืคื™ื ืฉืœืื—ืจ ื”ืžื•ื•ืช:

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”