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.
In diesem Artikel erfahren Sie, wie Sie eine arcfähige verwaltete SQL-Instanz in einer erweiterten Zone bereitstellen. Weitere Informationen finden Sie unter erweiterte Azure-Zonen | Dienste für derzeit unterstützte PaaS-Workloads.
Voraussetzungen
- Ein Azure-Konto mit einem aktiven Abonnement.
- Zugriff auf eine erweiterte Zone. Weitere Informationen finden Sie unter Anfordern des Zugriffs auf eine erweiterte Azure-Zone.
- Installieren Sie die Azure CLI.
- Zugriff auf eine öffentliche oder private Containerregistrierung, z. B. Azure Container Registry.
- Azure Data Studio
- Azure Arc-Erweiterung für Azure Data Studio
- arcdata-Erweiterung für Azure CLI
- kubectl
- Ein Azure Arc-Datenverantwortlicher zusätzlich zu den erforderlichen Tools.
- Andere Clienttools abhängig von Ihrer Umgebung. Eine umfassendere Liste finden Sie unter Clienttools.
- Ein Azure Arc-aktivierter Kubernetes-Cluster, der in erweiterten Zonen eingerichtet ist.
Hinweis
Verwenden Sie den vorgesehenen erweiterten Speicherort als Standortvariable.
Erste Schritte
Wenn Sie bereits mit dem Thema vertraut sind, können Sie diesen Absatz überspringen. Hier sind wichtige Themen, die Sie lesen möchten, bevor Sie mit der Erstellung fortfahren:
- Anforderungen und Einschränkungen der öffentlichen Vorschau. Besonders wichtig sind die Clusteranforderungen.
- Übersicht über Azure Arc-fähige Datendienste
- Konnektivitätsmodi und -anforderungen
- Speicherkonfigurations- und Kubernetes-Speicherkonzepte
- Kubernetes-Ressourcenmodell
Erstellen einer Azure Arc-fähigen ManagedSQL-Instanz in erweiterten Zonen
Nachdem der Arc-fähige AKS-Cluster erstellt wurde, können wir mit dem folgenden PowerShell-Skript fortfahren, um unsere ManagedSQL-Instanz auf einem AKS-Cluster in einer erweiterten Zone zu erstellen und mit azure Arc-fähigen Kubernetes zu verbinden.
Hinweis
Stellen Sie sicher, dass Sie die Parameter aus den Arc-fähigen AKS-Schritten ordnungsgemäß in das Skript übertragen.
. "./CreateArcEnabledAksOnEZ"
function CreateManagedSqlOnArcEnabledAksEz {
param(
[string] $ManagedInstanceName,
[string] $dbname,
[string] $SubscriptionId,
[string] $AKSClusterResourceGroupName,
[string] $location = "westus",
[string] $AKSName,
[string] $edgeZone,
[int] $nodeCount = 2,
[string] $vmSize = "standard_nv12ads_a10_v5",
[string] $ArcResourceGroupName,
[string] $DataControllerName,
[string] $CustomLocationName,
[string] $Namespace,
[string] $DataControllerConfigProfile,
[string] $KeyVaultName,
[string] $VaultSecretUser,
[string] $VaultSecretPass,
[switch] $Debug
)
try {
# Set the subscription
az account set --subscription $SubscriptionId
# Create the ARC-enabled EZ AKS cluster
createArcEnabledAksOnEz -SubscriptionId $SubscriptionId -AKSClusterResourceGroupName $AKSClusterResourceGroupName -location $location -AKSName $AKSName -edgeZone $edgeZone -nodeCount $nodeCount -vmSize $vmSize -ArcResourceGroupName $ArcResourceGroupName -Debug:$Debug
# Define name of the connected cluster resource
$CLUSTER_NAME = "$ArcResourceGroupName-cluster"
# Create a key vault and store login
$AZDATA_USERNAME = az keyvault secret show --vault-name $KeyVaultName --name $VaultSecretUser --query value -o tsv
$AZDATA_PASSWORD = az keyvault secret show --vault-name $KeyVaultName --name $VaultSecretPass --query value -o tsv
# Define login for data controller and metrics
$ENV:AZDATA_LOGSUI_USERNAME = $AZDATA_USERNAME
$ENV:AZDATA_LOGSUI_PASSWORD = $AZDATA_PASSWORD
$ENV:AZDATA_METRICSUI_USERNAME = $AZDATA_USERNAME
$ENV:AZDATA_METRICSUI_PASSWORD = $AZDATA_PASSWORD
# Define the connected cluster and extension for the custom location
$CONNECTED_CLUSTER_ID=$(az connectedk8s show --resource-group $ArcResourceGroupName --name $CLUSTER_NAME --query id --output tsv)
$EXTENSION_ID=$(az k8s-extension show `
--cluster-type connectedClusters `
--name 'my-data-controller-custom-location-ext' `
--cluster-name $CLUSTER_NAME `
--resource-group $ArcResourceGroupName `
--query id `
--output tsv)
# Create a custom location for the data controller
Write-Output "Creating data controller custom location..."
az customlocation create `
--resource-group $ArcResourceGroupName `
--name $CustomLocationName `
--host-resource-id $CONNECTED_CLUSTER_ID `
--namespace $Namespace `
--cluster-extension-ids $EXTENSION_ID
# Create data controller on Arc-enabled AKS cluster
Write-Output "Creating Arc Data Controller..."
az arcdata dc create --name $DataControllerName --subscription $SubscriptionId --cluster-name $CLUSTER_NAME --resource-group $ArcResourceGroupName --connectivity-mode direct --custom-location $CustomLocationName --profile-name $DataControllerConfigProfile
# Create a managed instance in the custom location
Write-Output "Creating managed instance..."
az sql mi-arc create --name $ManagedInstanceName --resource-group $ArcResourceGroupName --custom-location $CustomLocationName
}
catch {
# Catch any error
Write-Error "An error occurred"
Write-Error $Error[0]
}
}
CreateManagedSqlOnArcEnabledAksEz -ManagedInstanceName "my-managed-instance" `
-dbname "myDB" `
-SubscriptionId "<your subscription>" `
-AKSClusterResourceGroupName "my-aks-cluster-group" `
-location "westus" `
-AKSName "my-aks-cluster" `
-edgeZone "losangeles" `
-nodeCount 2 `
-vmSize "standard_nv12ad-DataControllerConfigProfiles_a10_v5" `
-ArcResourceGroupName "myArcResourceGroup" `
-DataControllerName "myDataController" `
-CustomLocationName "dc-custom-location" `
-Namespace "my-data-controller-custom-location" `
-DataControllerConfigProfile "azure-arc-aks-premium-storage" `
-KeyVaultName "ezDataControllerConfig" `
-VaultSecretUser "AZDATA-USERNAME" `
-VaultSecretPass "AZDATA-PASSWORD"
Anzeigen der Instanz in Azure Arc
Verwenden Sie den folgenden Befehl, um die Instanz anzuzeigen:
az sql mi-arc list --k8s-namespace <namespace> --use-k8s
Sie können die externe IP- und Portnummer von hier kopieren und eine Verbindung mit sql Managed Instance herstellen, die von Azure Arc aktiviert ist. Verwenden Sie derzeit den Insider-Build von Azure Data Studio.
Bereinigen von Ressourcen
Wenn sie nicht mehr benötigt wird, löschen Sie die Ressourcengruppe "my-aks-cluster-group " und alle darin enthaltenen Ressourcen mit dem Befehl "az group delete ".
az group delete --name my-aks-cluster-group
Verwandte Inhalte
- Erstellen Sie einen Arc-aktivierten AKS-Cluster in einer erweiterten Zone
- Bereitstellen von Arc-fähigen Workloads in einer erweiterten Zone: ContainerApps
- Bereitstellen von Arc-fähigen Workloads in einer erweiterten Zone: PostgreSQL
- Bereitstellen eines AKS-Clusters in einer erweiterten Zone
- Bereitstellen eines Speicherkontos in einer erweiterten Zone
- Häufig gestellte Fragen