이 문서에서는 참조 아키텍처를 사용하여 Active Directory 인증 모드에서 SQL Server 빅 데이터 클러스터를 배포하는 방법을 설명합니다. 참조 아키텍처는 온-프레미스 AD DS(Active Directory 도메인 서비스)를 Azure로 확장합니다. Azure 아키텍처 센터에서 Azure 구성 요소를 사용하여 배포할 수 있습니다.
Important
Microsoft SQL Server 2019 빅 데이터 클러스터는 사용 중지되었습니다. SQL Server 2019 빅 데이터 클러스터에 대한 지원은 2025년 2월 28일부터 종료되었습니다. 자세한 내용은 Microsoft SQL Server 플랫폼의 공지 블로그 게시물 및 빅 데이터 옵션을 참조하세요.
Prerequisites
SQL Server 빅 데이터 클러스터를 배포하기 전에 다음을 수행해야 합니다.
- 관리를 위해 Azure VM에 액세스합니다. 이 VM을 사용하려면 빅 데이터 클러스터를 배포할 Azure VNet(Virtual Network)에 액세스해야 합니다. 동일한 VNet 또는 피어된 VNet에 있어야 합니다.
- 관리 VM에 빅 데이터 도구를 설치합니다.
- 온-프레미스 AD 컨트롤러의 Active Directory 인증 모드 에서 클러스터 배포를 준비합니다.
AKS 서브넷 만들기
환경 변수 설정
export REGION_NAME=< your Azure Region > export RESOURCE_GROUP=<your resource group > export SUBNET_NAME=aks-subnet export VNet_NAME= adds-vnet export AKS_NAME= <your aks cluster name>AKS 서브넷 만들기
SUBNET_ID=$(az network vnet subnet show \ --resource-group $RESOURCE_GROUP \ --vnet-name $VNet_NAME \ --name $SUBNET_NAME \ --query id -o tsv)
다음 스크린샷은 아키텍처의 VNet에 있는 서브넷을 계획하는 방법을 보여 줍니다.
AKS 프라이빗 클러스터 만들기
다음 명령을 사용하여 AKS 프라이빗 클러스터를 배포할 수 있습니다. 프라이빗 클러스터가 필요하지 않은 경우 명령에서 매개 변수를 제거 --enable-private-cluster 합니다. 다른 요구 사항에 대한 자세한 내용은 AKS(Azure Kubernetes Cluster)를 배포하는 방법을 참조하세요.
az aks create \
--resource-group $RESOURCE_GROUP \
--name $AKS_NAME \
--load-balancer-sku standard \
--enable-private-cluster \
--network-plugin azure \
--vnet-subnet-id $SUBNET_ID \
--docker-bridge-address 172.17.0.1/16 \
--dns-service-ip 10.3.0.10 \
--service-cidr 10.3.0.0/24 \
--node-vm-size Standard_D13_v2 \
--node-count 2 \
--generate-ssh-keys
AKS 클러스터를 배포한 후 AKS 클러스터에 연결합니다.
도메인 컨트롤러에 대한 역방향 DNS 항목 확인
AKS 클러스터에서 AD 모드로 SQL Server 빅 데이터 클러스터 배포를 시작하기 전에 도메인 컨트롤러 자체에 DNS 서버에 등록된 A 레코드 와 PTR 레코드 (역방향 DNS 항목)가 모두 있는지 확인합니다.
이 설정을 확인하려면 명령을 실행 nslookup 하거나 PowerShell 스크립트 를 실행하여 역방향 DNS 항목(PTR 레코드)이 구성되어 있는지 확인합니다.
빅 데이터 클러스터 배포 프로필 만들기
다음 명령은 배포 프로필을 만듭니다.
azdata bdc config init --source kubeadm-prod --target bdc-ad-aks
다음 명령을 사용하여 배포 프로필에 대한 매개 변수를 설정합니다.
control.json
azdata bdc config replace -p bdc-ad-aks/control.json -j "$.spec.storage.data.className=default"
azdata bdc config replace -p bdc-ad-aks/control.json -j "$.spec.storage.logs.className=default"
azdata bdc config replace -p bdc-ad-aks/control.json -j "$.spec.endpoints[0].serviceType=NodePort"
azdata bdc config replace -p bdc-ad-aks/control.json -j "$.spec.endpoints[1].serviceType=NodePort"
azdata bdc config replace -p bdc-ad-aks/control.json -j "$.spec.endpoints[0].dnsName=controller.contoso.com"
azdata bdc config replace -p bdc-ad-aks/control.json -j "$.spec.endpoints[1].dnsName=proxys.contoso.com"
# security settings
azdata bdc config replace -p bdc-ad-aks/control.json -j "$.security.activeDirectory.ouDistinguishedName=OU\=bdc\,DC\=contoso\,DC\=com"
azdata bdc config replace -p bdc-ad-aks/control.json -j "$.security.activeDirectory.dnsIpAddresses=[\"192.168.0.4\"]"
azdata bdc config replace -p bdc-ad-aks/control.json -j "$.security.activeDirectory.domainControllerFullyQualifiedDns=[\"ad1.contoso.com\"]"
azdata bdc config replace -p bdc-ad-aks/control.json -j "$.security.activeDirectory.domainDnsName=contoso.com"
azdata bdc config replace -p bdc-ad-aks/control.json -j "$.security.activeDirectory.clusterAdmins=[\"bdcadminsgroup\"]"
azdata bdc config replace -p bdc-ad-aks/control.json -j "$.security.activeDirectory.clusterUsers=[\"bdcusersgroup\"]"
bdc.json
azdata bdc config replace -p bdc-ad-aks/bdc.json -j "$.spec.resources.master.spec.endpoints[0].dnsName=master.contoso.com"
azdata bdc config replace -p bdc-ad-aks/bdc.json -j "$.spec.resources.master.spec.endpoints[0].serviceType=NodePort"
azdata bdc config replace -p bdc-ad-aks/bdc.json -j "$.spec.resources.master.spec.endpoints[1].dnsName=mastersec.contoso.com"
azdata bdc config replace -p bdc-ad-aks/bdc.json -j "$.spec.resources.master.spec.endpoints[1].serviceType=NodePort"
azdata bdc config replace -p bdc-ad-aks/bdc.json -j "$.spec.resources.gateway.spec.endpoints[0].dnsName=gateway.contoso.com"
azdata bdc config replace -p bdc-ad-aks/bdc.json -j "$.spec.resources.gateway.spec.endpoints[0].serviceType=NodePort"
azdata bdc config replace -p bdc-ad-aks/bdc.json -j "$.spec.resources.appproxy.spec.endpoints[0].dnsName=approxy.contoso.com"
azdata bdc config replace -p bdc-ad-aks/bdc.json -j "$.spec.resources.appproxy.spec.endpoints[0].serviceType=NodePort"
Initiate deployment
다음 명령은 빅 데이터 클러스터 배포를 시작합니다.
azdata bdc create --config-profile bdc-ad-aks --accept-eula yes