16.5. Azure에서 DNS 레코드 생성


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

16.5.1. Red Hat External DNS Operator를 사용하여 Azure의 퍼블릭 DNS 영역에 DNS 레코드 생성

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

절차

  1. 사용자를 확인합니다. 사용자는 kube-system 네임스페이스에 액세스할 수 있어야 합니다. 인증 정보가 없는 경우 kube-system 네임스페이스에서 인증 정보를 가져와 클라우드 공급자 클라이언트를 사용할 수 있습니다.

    $ oc whoami

    출력 예

    system:admin

  2. kube-system 네임스페이스에 있는 azure-credentials 시크릿에서 값을 가져옵니다.

    $ 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)
  3. base64 디코딩된 값을 사용하여 Azure에 로그인합니다.

    $ az login --service-principal -u "${CLIENT_ID}" -p "${CLIENT_SECRET}" --tenant "${TENANT_ID}"
  4. 경로를 가져와 도메인을 확인합니다.

    $ 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

  5. dns 영역 목록을 가져와서 이전에 찾은 경로의 도메인에 해당하는 항목을 찾습니다.

    $ az network dns zone list --resource-group "${RESOURCE_GROUP}"
  6. 경로 소스를 위한 ExternalDNS 리소스를 생성합니다.

    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
    EOF
    1
    외부 DNS CR의 이름을 지정합니다.
    2
    영역 ID를 정의합니다.
    3
    Azure DNS 공급자를 정의합니다.
    4
    DNS 레코드 소스에 대한 옵션을 정의할 수 있습니다.
    5
    소스가 OpenShiftRoute 인 경우 OpenShift Ingress 컨트롤러 이름을 전달할 수 있습니다. 외부 DNS는 CNAME 레코드를 생성하는 동안 해당 라우터의 정식 호스트 이름을 대상으로 선택합니다.
    6
    OpenShift 경로 리소스를 이전에 지정한 DNS 공급자에서 생성되는 DNS 레코드의 소스로 정의합니다.
  7. 다음 명령을 사용하여 OCP 경로에 대해 생성된 레코드를 확인합니다.

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

    프라이빗 Azure dns의 프라이빗 호스팅 영역에 레코드를 생성하려면 ExternalDNS 컨테이너 args에서 azure-private-dns 에 공급자 유형을 채우는 프라이빗 영역을 지정해야 합니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.