Amazon EKS 클러스터에서 CoreDNS를 사용하여 조건부 전달자를 구성하려면 어떻게 해야 합니까?

2분 분량
0

Amazon Elastic Kubernetes Service(Amazon EKS) 클러스터에서 CoreDNS를 사용하여 조건부 전달자를 구성하려고 합니다.

간략한 설명

CoreDNS를 사용하여 사용자 지정 DNS 서버에서 확인한 도메인으로 전송한 DNS 쿼리에 대한 조건부 전달을 구성할 수 있습니다. 자세한 내용은 Kubernetes 웹 사이트에서 Customizing DNS Service를 참조하세요.

중요: 다음 해결 방법으로 수정한 내용을 자체 관리형 CoreDNS 에만 적용합니다. CoreDNS Amazon EKS 추가 기능의 구성을 변경하려면 Amazon EKS 추가 기능 구성을 확인하여 Amazon EKS에서 관리하는 설정을 결정합니다. Amazon EKS에서 관리하는 필드를 수정하면 Amazon EKS가 추가 기능을 관리할 수 없으므로 변경하기 전에 추가 기능 구성을 확인합니다. 이로 인해 추가 기능이 업데이트될 때 변경 사항을 덮어쓸 수 있습니다.

해결 방법

1.    CoreDNS ConfigMap을 수정하고 조건부 전달자 구성을 추가합니다.

$ kubectl -n kube-system edit configmap coredns

출력:

apiVersion: v1
kind: ConfigMap
metadata:
  annotations:
  labels:
    eks.amazonaws.com/component: coredns
    k8s-app: kube-dns
  name: coredns
  namespace: kube-system
data:
  Corefile: |
    .:53 {
        errors
        health
        kubernetes cluster.local in-addr.arpa ip6.arpa {
          pods insecure
          fallthrough in-addr.arpa ip6.arpa
        }
        prometheus :9153
        forward . /etc/resolv.conf
        cache 30
        loop
        reload
        loadbalance
    }
    domain-name:53 {
        errors
        cache 30
        forward . custom-dns-server
        reload
    }

참고: domain-name을 도메인 이름으로 바꿉니다. custom-dns-server를 사용자 지정 DNS 서버 IP 주소로 바꿉니다.

2.    도메인 이름 확인이 작동하는지 확인합니다.

$ kubectl run busybox --restart=Never --image=busybox:1.28 -- sleep 3600
$ kubectl exec busybox -- nslookup domain-name

참고: domain-name을 도메인 이름으로 바꿉니다.


AWS 공식
AWS 공식업데이트됨 3년 전
댓글 없음