4.6. Azure에서 DNS 레코드 만들기
외부 DNS 운영자를 사용하여 Azure에서 DNS 레코드를 만들 수 있습니다.
Microsoft Entra Workload ID가 활성화된 클러스터나 Microsoft Azure Government(MAG) 지역에서 실행되는 클러스터에서는 외부 DNS 운영자를 사용할 수 없습니다.
4.6.1. Azure DNS 영역에서 DNS 레코드 만들기 링크 복사링크가 클립보드에 복사되었습니다!
외부 DNS 운영자를 사용하여 Azure의 공용 또는 개인 DNS 영역에 DNS(도메인 이름 서버) 레코드를 만들 수 있습니다.
사전 요구 사항
- 클러스터 관리자 권한이 있어야합니다.
-
관리자는kube-system네임스페이스에 액세스할 수 있어야 합니다.
프로세스
다음 명령을 실행하여 클라우드 공급자 클라이언트를 사용하기 위해
kube-system네임스페이스에서 자격 증명을 가져옵니다.$ CLIENT_ID=$(oc get secrets azure-credentials -n kube-system --template={{.data.azure_client_id}} | base64 -d)$ CLIENT_SECRET=$(oc get secrets azure-credentials -n kube-system --template={{.data.azure_client_secret}} | base64 -d)$ RESOURCE_GROUP=$(oc get secrets azure-credentials -n kube-system --template={{.data.azure_resourcegroup}} | base64 -d)$ SUBSCRIPTION_ID=$(oc get secrets azure-credentials -n kube-system --template={{.data.azure_subscription_id}} | base64 -d)$ TENANT_ID=$(oc get secrets azure-credentials -n kube-system --template={{.data.azure_tenant_id}} | base64 -d)다음 명령을 실행하여 Azure에 로그인합니다.
$ az login --service-principal -u "${CLIENT_ID}" -p "${CLIENT_SECRET}" --tenant "${TENANT_ID}"다음 명령을 실행하여 경로 목록을 가져옵니다.
$ oc get routes --all-namespaces | grep console출력 예
openshift-console console console-openshift-console.apps.test.azure.example.com console https reencrypt/Redirect None openshift-console downloads downloads-openshift-console.apps.test.azure.example.com downloads http edge/Redirect NoneDNS 영역 목록을 가져옵니다.
공용 DNS 영역의 경우 다음 명령을 실행합니다.
$ az network dns zone list --resource-group "${RESOURCE_GROUP}"개인 DNS 영역의 경우 다음 명령을 실행합니다.
$ az network private-dns zone list -g "${RESOURCE_GROUP}"
예를 들어,
ExternalDNS객체를 정의하는external-dns-sample-azure.yaml 과 같은YAML 파일을 만듭니다.external-dns-sample-azure.yaml파일 예시apiVersion: externaldns.olm.openshift.io/v1beta1 kind: ExternalDNS metadata: name: sample-azure1 spec: zones: - "/subscriptions/1234567890/resourceGroups/test-azure-xxxxx-rg/providers/Microsoft.Network/dnszones/test.azure.example.com"2 provider: type: Azure3 source: openshiftRouteOptions:4 routerName: default5 type: OpenShiftRoute6
문제 해결
경로에 대해 생성된 기록을 확인하세요.
공용 DNS 영역의 경우 다음 명령을 실행합니다.
$ az network dns record-set list -g "${RESOURCE_GROUP}" -z "${ZONE_NAME}" | grep console개인 DNS 영역의 경우 다음 명령을 실행합니다.
$ az network private-dns record-set list -g "${RESOURCE_GROUP}" -z "${ZONE_NAME}" | grep console