Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Important
Die Big Data Cluster von Microsoft SQL Server 2019 werden eingestellt. Der Support für SQL Server 2019 Big Data Cluster endete am 28. Februar 2025. Weitere Informationen finden Sie im Ankündigungsblogbeitrag und den Big Data-Optionen auf der Microsoft SQL Server-Plattform.
In diesem Artikel wird erläutert, wie SQL Server Big Data Cluster auf privaten Azure Kubernetes Service (AKS)-Clustern bereitgestellt werden. Diese Konfiguration unterstützt die eingeschränkte Verwendung öffentlicher IP-Adressen in der Unternehmensnetzwerkumgebung.
Eine private Bereitstellung bietet die folgenden Vorteile:
- Eingeschränkte Verwendung öffentlicher IP-Adressen
- Netzwerkdatenverkehr zwischen Anwendungsservern und Clusterknotenpools bleibt nur im privaten Netzwerk
- Benutzerdefinierte Konfiguration für obligatorischen Ausgangsverkehr, um bestimmte Anforderungen zu erfüllen
In diesem Artikel wird veranschaulicht, wie Sie einen privaten AKS-Cluster verwenden, um die Verwendung der öffentlichen IP-Adresse einzuschränken, während entsprechende Sicherheitszeichenfolgen angewendet wurden.
Bereitstellen eines privaten "Big Data"-Clusters mit privatem AKS-Cluster
Erstellen Sie zunächst einen privaten AKS-Cluster , um sicherzustellen, dass der Netzwerkverkehr zwischen API-Server und Knotenpools nur im privaten Netzwerk verbleibt. Die Steuerebene oder der API-Server verfügt über interne IP-Adressen in einem privaten AKS-Cluster.
In diesem Abschnitt wird gezeigt, wie Sie einen Big Data-Cluster im privaten Azure Kubernetes Service (AKS)-Cluster mit erweiterten Netzwerken (CNI) bereitstellen.
Erstellen eines privaten AKS-Clusters mit erweiterten Netzwerken
export REGION_NAME=<your Azure region >
export RESOURCE_GROUP=< your resource group name >
export SUBNET_NAME=aks-subnet
export VNET_NAME=bdc-vnet
export AKS_NAME=< your aks private cluster name >
az group create -n $RESOURCE_GROUP -l $REGION_NAME
az network vnet create \
--resource-group $RESOURCE_GROUP \
--location $REGION_NAME \
--name $VNET_NAME \
--address-prefixes 10.0.0.0/8 \
--subnet-name $SUBNET_NAME \
--subnet-prefix 10.1.0.0/16
SUBNET_ID=$(az network vnet subnet show \
--resource-group $RESOURCE_GROUP \
--vnet-name $VNET_NAME \
--name $SUBNET_NAME \
--query id -o tsv)
echo $SUBNET_ID
## will be displayed something similar as the following:
/subscriptions/xxxx-xxxx-xxx-xxxx-xxxxxxxx/resourceGroups/your-bdc-rg/providers/Microsoft.Network/virtualNetworks/your-aks-vnet/subnets/your-aks-subnet
Erstellen eines privaten AKS-Clusters mit erweiterten Netzwerken (CNI)
Um zum nächsten Schritt zu gelangen, müssen Sie einen AKS-Cluster mit Standard-Load-Balancer und aktivierter privater Clusterfunktion bereitstellen. Ihr Befehl sieht wie folgt aus:
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.2.0.10 \
--service-cidr 10.2.0.0/24 \
--node-vm-size Standard_D13_v2 \
--node-count 2 \
--generate-ssh-keys
Nach einer erfolgreichen Bereitstellung können Sie zur <MC_yourakscluster> Ressourcengruppe wechseln und feststellen, dass es kube-apiserver sich um einen privaten Endpunkt handelt. Weitere Informationen finden Sie beispielsweise im folgenden Abschnitt.
Herstellen einer Verbindung mit einem AKS-Cluster
az aks get-credentials -n $AKS_NAME -g $RESOURCE_GROUP
Erstellen eines Big Data Cluster-Bereitstellungsprofils
Nachdem Sie eine Verbindung mit einem AKS-Cluster hergestellt haben, können Sie mit der Bereitstellung von BDC beginnen und die Umgebungsvariable vorbereiten und eine Bereitstellung initiieren:
azdata bdc config init --source aks-dev-test --target private-bdc-aks --force
Benutzerdefiniertes BDC-Bereitstellungsprofil generieren und konfigurieren:
azdata bdc config replace -c private-bdc-aks/control.json -j "$.spec.docker.imageTag=2019-CU6-ubuntu-16.04"
azdata bdc config replace -c private-bdc-aks/control.json -j "$.spec.storage.data.className=default"
azdata bdc config replace -c private-bdc-aks/control.json -j "$.spec.storage.logs.className=default"
azdata bdc config replace -c private-bdc-aks/control.json -j "$.spec.endpoints[0].serviceType=NodePort"
azdata bdc config replace -c private-bdc-aks/control.json -j "$.spec.endpoints[1].serviceType=NodePort"
azdata bdc config replace -c private-bdc-aks/bdc.json -j "$.spec.resources.master.spec.endpoints[0].serviceType=NodePort"
azdata bdc config replace -c private-bdc-aks/bdc.json -j "$.spec.resources.gateway.spec.endpoints[0].serviceType=NodePort"
azdata bdc config replace -c private-bdc-aks/bdc.json -j "$.spec.resources.appproxy.spec.endpoints[0].serviceType=NodePort"
Bereitstellen eines privaten SQL Server Big Data-Clusters mit HA
Wenn Sie einen SQL Server Big Data Cluster (SQL-BDC) mit hoher Verfügbarkeit (HA) bereitstellen, verwenden Sie bereitstellungsprofil aks-dev-test-ha . Nach einer erfolgreichen Bereitstellung können Sie denselben kubectl get svc Befehl verwenden und sehen, dass ein zusätzlicher master-secondary-svc Dienst erstellt wird. Müssen Sie ServiceType als NodePort konfigurieren. Andere Schritte ähneln den im vorherigen Abschnitt erwähnten Schritten.
Im folgenden Beispiel wird ServiceType als NodePort festgelegt.
azdata bdc config replace -c private-bdc-aks /bdc.json -j "$.spec.resources.master.spec.endpoints[1].serviceType=NodePort"
Bereitstellen von BDC im privaten AKS-Cluster
export AZDATA_USERNAME=<your bdcadmin username>
export AZDATA_PASSWORD=< your bdcadmin password>
azdata bdc create --config-profile private-bdc-aks --accept-eula yes
Überprüfen des Bereitstellungsstatus
Die Bereitstellung dauert einige Minuten, und Sie können den folgenden Befehl verwenden, um den Bereitstellungsstatus zu überprüfen:
kubectl get pods -n mssql-cluster -w
Überprüfen des Dienststatus
Verwenden Sie den folgenden Befehl, um die Dienste zu überprüfen. Überprüfen Sie, ob sie alle fehlerfrei sind, ohne externe IPs:
kubectl get services -n mssql-cluster
Erfahren Sie, wie Sie einen Big Data-Cluster innerhalb eines AKS privaten Clusters verwalten, und der nächste Schritt besteht darin, sich mit einem SQL Server-Big Data-Cluster zu verbinden.
Siehe Automatisierungsskripts für dieses Szenario im SQL Server Samples-Repository auf GitHub.