자습서 – 고객 관리형 keytab 모드에서 AD(Active Directory) 커넥터 배포

이 문서에서는 고객 관리형 keytab 모드에서 AD(Active Directory) 커넥터를 배포하는 방법을 설명합니다. 커넥터는 Azure Arc 지원 SQL Managed Instance에서 Active Directory 인증을 사용하도록 설정하는 핵심 구성 요소입니다.

고객 관리 keytab 모드의 Active Directory 커넥터

고객 관리형 keytab 모드에서 Active Directory 커넥터는 관리되는 인스턴스에서 들어오는 DNS 요청을 두 개의 업스트림 DNS 서비스 중 하나로 프록시하는 DNS 프록시 서비스를 배포합니다.

  • Active Directory DNS 서버
  • Kubernetes DNS 서버

AD 커넥터는 SQL에서 AD 로그인을 인증하는 데 필요한 환경을 지원합니다.

다음 다이어그램은 고객 관리형 keytab 모드의 AD 커넥터 및 DNS 프록시 서비스 기능을 보여 줍니다.

Active Directory connector

필수 조건

계속 진행하려면 다음 항목이 있어야 합니다.

  • 지원되는 Kubernetes 버전에 배포된 데이터 컨트롤러의 인스턴스
  • AD(Active Directory) 도메인

AD(Active Directory) 커넥터 배포를 위한 입력

Active Directory 커넥터의 인스턴스를 배포하려면 Active Directory 도메인 환경의 입력 여러 개가 필요합니다.

이러한 입력은 AD 커넥터 인스턴스의 YAML 사양에서 제공됩니다.

AD 커넥터의 인스턴스를 배포하기 전에 AD 도메인에 대한 다음 메타데이터를 사용할 수 있어야 합니다.

  • Active Directory 도메인의 이름
  • 도메인 컨트롤러 목록(정규화된 도메인 이름)
  • DNS 서버 IP 주소 목록

Active Directory 커넥터 사양의 사용자에게 다음 입력 필드가 노출됩니다.

  • Required

    • spec.activeDirectory.realm 대문자로 된 Active Directory 도메인의 이름입니다. 이것은 이 AD 커넥터 인스턴스가 연결될 AD 도메인입니다.

    • spec.activeDirectory.dns.nameserverIpAddresses Active Directory DNS 서버 IP 주소의 목록입니다. DNS 프록시 서비스는 제공된 도메인 이름의 DNS 쿼리를 이러한 서버에 전달합니다.

  • 선택 사항

    • spec.activeDirectory.netbiosDomainName Active Directory 도메인의 NetBIOS 이름입니다. Active Directory 도메인의 짧은 도메인 이름(Windows 2000 이전 이름)입니다. AD 도메인의 계정을 한정하는 데 사용되는 경우가 많습니다. 예를 들어 도메인의 계정을 CONTOSO\admin이라고 하는 경우 CONTOSO가 NETBIOS 도메인 이름입니다.

      이 필드는 선택적입니다. 이 값을 제공하지 않은 경우 기본적으로 spec.activeDirectory.realm 필드의 첫 번째 레이블로 설정됩니다.

      대부분의 도메인 환경에서는 이 값이 기본값으로 설정되지만 일부 도메인 환경에는 기본값이 아닌 값이 있을 수 있습니다. 도메인의 NetBIOS 이름이 정규화된 이름의 첫 번째 레이블과 일치하지 않는 경우에만 이 필드를 사용해야 합니다.

    • spec.activeDirectory.dns.domainName Active Directory DNS 서버로 DNS 조회를 전달해야 하는 DNS 도메인 이름입니다.

      이 도메인 또는 해당 하위 도메인에 속하는 이름에 대한 DNS 조회는 Active Directory로 전달됩니다.

      이 필드는 선택적입니다. 제공하지 않으면 기본적으로 소문자로 변환된 spec.activeDirectory.realm에 제공된 값으로 설정됩니다.

    • spec.activeDirectory.dns.replicas DNS 프록시 서비스의 복제본 수입니다. 이 필드는 선택 사항이며 제공하지 않으면 기본적으로 1로 설정됩니다.

    • spec.activeDirectory.dns.preferK8sDnsForPtrLookups IP 주소 조회에 대한 AD DNS 서버 응답보다 Kubernetes DNS 서버 응답을 선호할지 여부를 나타내는 플래그입니다.

      DNS 프록시 서비스는 이 필드를 사용하여 IP 주소 조회에 기본 설정할 DNS 서버의 업스트림 그룹을 결정합니다.

      이 필드는 선택적입니다. 제공하지 않으면 기본적으로 true로 설정됩니다. 즉, IP 주소의 DNS 조회가 Kubernetes DNS 서버로 먼저 전달됩니다. Kubernetes DNS 서버가 조회에 응답하지 않으면 쿼리가 AD DNS 서버로 전달됩니다. false로 설정하면 이러한 DNS 조회가 먼저 AD DNS 서버로 전달되고 실패하면 Kubernetes로 대체됩니다.

고객 관리형 keytab AD(Active Directory) 커넥터 배포

AD 커넥터를 배포하려면 active-directory-connector.yaml(이)라는 .yaml 사양 파일을 만듭니다.

다음 예제는 고객 관리형 keytab AD 커넥터가 이름의 CONTOSO.LOCALAD 도메인을 사용하는 예제입니다. 값을 AD 도메인의 값으로 바꿔야 합니다.

apiVersion: arcdata.microsoft.com/v1beta1
kind: ActiveDirectoryConnector
metadata:
  name: adarc
  namespace: <namespace>
spec:
  activeDirectory:
    realm: CONTOSO.LOCAL
  dns:
    preferK8sDnsForPtrLookups: false
    nameserverIPAddresses:
      - <DNS Server 1 IP address>
      - <DNS Server 2 IP address>

다음 명령은 AD 커넥터 인스턴스를 배포합니다. 현재 kube 네이티브 접근 방식의 배포만 지원됩니다.

kubectl apply –f active-directory-connector.yaml

AD 커넥터 인스턴스의 배포를 제출한 후 다음 명령을 사용하여 배포 상태를 확인할 수 있습니다.

kubectl get adc -n <namespace>