19.5. Azure에서 DNS 레코드 생성


외부 DNS Operator를 사용하여 Azure에 DNS 레코드를 생성할 수 있습니다.

중요

{entra-first}-enabled cluster 또는 Microsoft Azure Government (MAG) 리전에서 실행되는 클러스터에서 외부 DNS Operator를 사용하는 것은 지원되지 않습니다.

19.5.1. Azure 퍼블릭 DNS 영역에 DNS 레코드 생성

외부 DNS Operator를 사용하여 Azure의 퍼블릭 DNS 영역에 DNS 레코드를 생성할 수 있습니다.

사전 요구 사항

  • 클러스터 관리자 권한이 있어야합니다.
  • admin 사용자는 kube-system 네임스페이스에 액세스할 수 있어야 합니다.

절차

  1. 다음 명령을 실행하여 클라우드 공급자 클라이언트를 사용하도록 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)
  2. 다음 명령을 실행하여 Azure에 로그인합니다.

    $ az login --service-principal -u "${CLIENT_ID}" -p "${CLIENT_SECRET}" --tenant "${TENANT_ID}"
  3. 다음 명령을 실행하여 경로 목록을 가져옵니다.

    $ 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          None

  4. 다음 명령을 실행하여 DNS 영역 목록을 가져옵니다.

    $ az network dns zone list --resource-group "${RESOURCE_GROUP}"
  5. ExternalDNS 오브젝트를 정의하는 YAML 파일(예: external-dns-sample-azure.yaml )을 생성합니다.

    external-dns-sample-azure.yaml 파일의 예

    apiVersion: externaldns.olm.openshift.io/v1beta1
    kind: ExternalDNS
    metadata:
      name: sample-azure 1
    spec:
      zones:
      - "/subscriptions/1234567890/resourceGroups/test-azure-xxxxx-rg/providers/Microsoft.Network/dnszones/test.azure.example.com" 2
      provider:
        type: Azure 3
      source:
        openshiftRouteOptions: 4
          routerName: default 5
        type: OpenShiftRoute 6

    1
    외부 DNS 이름을 지정합니다.
    2
    영역 ID를 정의합니다.
    3
    공급자 유형을 정의합니다.
    4
    DNS 레코드 소스에 대한 옵션을 정의할 수 있습니다.
    5
    소스 유형이 OpenShiftRoute 인 경우 OpenShift Ingress 컨트롤러 이름을 전달할 수 있습니다. 외부 DNS는 CNAME 레코드를 생성하는 동안 해당 라우터의 정식 호스트 이름을 대상으로 선택합니다.
    6
    경로 리소스를 Azure DNS 레코드의 소스로 정의합니다.
  6. 다음 명령을 실행하여 OpenShift Container Platform 경로에 대해 생성된 DNS 레코드를 확인합니다.

    $ az network dns record-set list -g "${RESOURCE_GROUP}"  -z test.azure.example.com | grep console
    참고

    프라이빗 Azure DNS의 프라이빗 호스팅 영역에 레코드를 만들려면 ExternalDNS 컨테이너 인수에서 공급자 유형을 azure-private-dns 로 채우는 zones 필드 아래에 프라이빗 영역을 지정해야 합니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.