WEBBOOK CHAPTER

Kubernetes, 배포보다 운영이 어렵다: 29장. DNS 장애 Runbook

29장. DNS 장애 Runbook

외부 DNS, load balancer name, cluster CoreDNS, service discovery를 분리한다. 먼저 한 pod와 다른 namespace에서 동일 이름을 조회하고 /etc/resolv.conf, search domain, timeout, response code를 기록한다. CoreDNS pod·log·resource·upstream, NetworkPolicy, node resolver를 확인한다.


kubectl -n fieldpass exec deploy/fieldpass-api -- getent hosts fieldpass-db.data.svc.cluster.local
kubectl -n kube-system get deploy,pod -l k8s-app=kube-dns
kubectl -n kube-system logs deploy/coredns --since=10m

DNS cache·TTL 때문에 이미 열린 connection과 새 요청 결과가 다를 수 있다. CoreDNS replica만 늘리기 전에 query 폭주와 잘못된 search를 찾는다. 복구 뒤 예약 여정, DNS error rate, p95, provider resolution을 확인한다.