Tutorial: Implementación de clústeres de macrodatos de SQL Server en modo de AD en Azure Kubernetes Service (AKS)
En este artículo se explica cómo implementar un clúster de macrodatos de SQL Server en el modo de autenticación de Active Directory con una arquitectura de referencia. La arquitectura de referencia amplía la instancia local de Active Directory Domain Services (AD DS) a Azure. Puede implementarlo desde el Centro de arquitectura de Azure con bloques de creación de Azure.
Importante
El complemento Clústeres de macrodatos de Microsoft SQL Server 2019 se va a retirar. La compatibilidad con Clústeres de macrodatos de SQL Server 2019 finalizará el 28 de febrero de 2025. Todos los usuarios existentes de SQL Server 2019 con Software Assurance serán totalmente compatibles con la plataforma, y el software se seguirá conservando a través de actualizaciones acumulativas de SQL Server hasta ese momento. Para más información, consulte la entrada de blog sobre el anuncio y Opciones de macrodatos en la plataforma Microsoft SQL Server.
Requisitos previos
Antes de implementar un clúster de macrodatos de SQL Server, debe realizar lo siguiente:
- Acceder a una máquina virtual de Azure para la administración. Esta máquina virtual necesita acceso a la red virtual (VNet) de Azure donde se implementará el clúster de macrodatos. Debe residir en la misma red virtual o en una red virtual emparejada.
- Instalar las herramientas de macrodatos en la máquina virtual de administración.
- Prepararse para implementar el clúster en el modo de autenticación de Active Directory en el controlador de AD local.
Creación de una subred de AKS
Establecimiento de variables de entorno
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>
Creación de una subred de AKS
SUBNET_ID=$(az network vnet subnet show \ --resource-group $RESOURCE_GROUP \ --vnet-name $VNet_NAME \ --name $SUBNET_NAME \ --query id -o tsv)
La siguiente captura de pantalla muestra cómo se planean las subredes que se encuentran en la red virtual de la arquitectura.
Creación de un clúster privado de AKS
Puede usar el siguiente comando para implementar un clúster privado de AKS. Si no necesita un clúster privado, quite el parámetro --enable-private-cluster
del comando. Para obtener información sobre otros requisitos, vea Tutorial: Implementación de un clúster de Azure Kubernetes Service (AKS).
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
Después de implementar un clúster de AKS, conéctese al clúster de AKS.
Comprobación de la entrada de DNS inverso para el controlador de dominio
Antes de iniciar la implementación de Clústeres de macrodatos de SQL Server en el modo de AD en el clúster de AKS, compruebe que el propio controlador de dominio tiene un registro A y un registro PTR (entrada de DNS inverso) registrados en el servidor DNS.
Para comprobar esta configuración, ejecute el comando nslookup
o ejecute el script de PowerShell para confirmar si tiene configurada una entrada de DNS inverso (registro PTR).
Creación del perfil de implementación del clúster de macrodatos
El siguiente comando crea un perfil de implementación:
azdata bdc config init --source kubeadm-prod --target bdc-ad-aks
Los siguientes comandos se usan para establecer los parámetros de un perfil de implementación.
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"
Inicio de la implementación
El siguiente comando inicia una implementación de clúster de macrodatos:
azdata bdc create --config-profile bdc-ad-aks --accept-eula yes