시나리오
주문 서비스(orders)를 legacy 네임스페이스에서 shop 네임스페이스로 옮겼습니다. 옮기는 동안 호출하는 쪽을 고치지 않으려고 CoreDNS에 규칙을 하나 넣었고, 이전이 끝난 뒤 legacy의 옛 서비스를 지웠습니다. 그때부터 orders.shop 이름만 풀리지 않습니다. 다른 서비스 이름은 잘 풀립니다.
주문 서비스(orders)를 legacy 네임스페이스에서 shop 네임스페이스로 옮겼습니다.
주문 서비스(orders)를 legacy 네임스페이스에서 shop 네임스페이스로 옮겼습니다. 옮기는 동안 호출하는 쪽을 고치지 않으려고 CoreDNS에 규칙을 하나 넣었고, 이전이 끝난 뒤 legacy의 옛 서비스를 지웠습니다. 그때부터 orders.shop 이름만 풀리지 않습니다. 다른 서비스 이름은 잘 풀립니다.
$ kubectl -n kube-system get pods -l k8s-app=kube-dns
coredns-5d78c9869d-4xq2k 1/1 Running 0 12d
coredns-5d78c9869d-9hfzt 1/1 Running 0 12d
$ kubectl -n shop get svc orders
NAME TYPE CLUSTER-IP PORT(S)
orders ClusterIP 10.96.41.207 8080/TCP
$ kubectl exec -it debug -- nslookup orders.shop.svc.cluster.local
** server can't find orders.shop.svc.cluster.local: NXDOMAIN
# kubectl -n kube-system get cm coredns (Corefile 일부)
.:53 {
rewrite name orders.shop.svc.cluster.local orders.legacy.svc.cluster.local
kubernetes cluster.local in-addr.arpa ip6.arpa
forward . /etc/resolv.conf
}이 문제의 전체 시나리오와 점검 체크리스트, 복구 순서, 모범 풀이는 Pro 구독에서 열립니다.