Condividi tramite


Esercitazione: Distribuire cluster Big Data di SQL Server in modalità AD nei servizi Azure Kubernetes (AKS)

Questo articolo illustra come distribuire un cluster Big Data di SQL Server nella modalità di autenticazione di Active Directory con un'architettura di riferimento. L'architettura di riferimento estende il servizio di dominio Active Directory locale ad Azure. È possibile distribuirlo dal Centro architetture di Azure con blocchi predefiniti di Azure.

Important

I cluster Big Data di Microsoft SQL Server 2019 sono stati ritirati. Il supporto per i cluster Big Data di SQL Server 2019 è terminato a partire dal 28 febbraio 2025. Per altre informazioni, vedere il post di blog sull'annuncio e le opzioni per Big Data nella piattaforma Microsoft SQL Server.

Prerequisites

Prima di distribuire un cluster Big Data di SQL Server, è necessario:

Creare una subnet dell'AKS

  1. Impostare le variabili di ambiente

    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>
    
  2. Creare la subnet AKS

    SUBNET_ID=$(az network vnet subnet show \
     --resource-group $RESOURCE_GROUP \
     --vnet-name $VNet_NAME \
     --name $SUBNET_NAME \
     --query id -o tsv)
    

Lo screenshot seguente mostra come pianifichiamo le subnet all'interno del VNet nell'architettura.

Diagramma del cluster AKS con AD e SQL Server Big Data Cluster.

Creare un cluster privato di AKS

È possibile utilizzare il comando seguente per distribuire un cluster privato di AKS. Se non è necessario un cluster privato, rimuovere --enable-private-cluster il parametro nel comando . Per informazioni su qualsiasi altro requisito, vedere come distribuire un cluster Azure Kubernetes.

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

Dopo aver distribuito un cluster del servizio Azure Kubernetes, connettersi al cluster del servizio Azure Kubernetes.

Verificare la voce DNS inversa per il controller di dominio

Prima di avviare la distribuzione dei cluster Big Data di SQL Server in modalità ACTIVE Directory nel cluster servizio Azure Kubernetes, verificare che il controller di dominio disponga sia del record A che del record PTR (voce DNS inversa), registrato nel server DNS.

Per verificare questa impostazione, eseguire nslookup il comando o eseguire lo script di PowerShell per verificare se è stata configurata la voce DNS inversa (record PTR).

Creare un profilo di distribuzione del cluster Big Data

Il comando seguente crea un profilo di distribuzione:

azdata bdc config init --source kubeadm-prod  --target bdc-ad-aks

I comandi seguenti vengono utilizzati per impostare i parametri per un profilo di distribuzione.

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

Il comando seguente avvia una distribuzione di cluster Big Data:

azdata bdc create --config-profile bdc-ad-aks --accept-eula yes