Tutorial: Verbinden einer AKS-App mit Azure SQL-Datenbank (Vorschau)
In diesem Tutorial erfahren Sie, wie Sie eine in AKS bereitgestellte Anwendung mithilfe eines Dienstconnector mit Azure SQL-Datenbank verbinden (Vorschau). Sie führen die folgenden Aufgaben durch:
- Erstellen einer Azure SQL-Datenbank-Ressource
- Erstellen Sie mit einem Dienstconnector eine Verbindung zwischen dem AKS-Cluster und der Datenbank.
- Aktualisieren des Containers
- Aktualisieren des Anwendungscodes
- Bereinigen Sie Azure-Ressourcen.
Voraussetzungen
- Ein Azure-Konto mit einem aktiven Abonnement. Sie können kostenlos ein Konto erstellen.
- Eine in AKS bereitgestellte Anwendung.
-
Verwenden Sie die Bash-Umgebung in Azure Cloud Shell. Weitere Informationen finden Sie unter Schnellstart für Bash in Azure Cloud Shell.
Wenn Sie CLI-Referenzbefehle lieber lokal ausführen, installieren Sie die Azure CLI. Wenn Sie Windows oder macOS ausführen, sollten Sie die Azure CLI in einem Docker-Container ausführen. Weitere Informationen finden Sie unter Ausführen der Azure CLI in einem Docker-Container.
Wenn Sie eine lokale Installation verwenden, melden Sie sich mithilfe des Befehls az login bei der Azure CLI an. Führen Sie die in Ihrem Terminal angezeigten Schritte aus, um den Authentifizierungsprozess abzuschließen. Informationen zu anderen Anmeldeoptionen finden Sie unter Anmelden mit der Azure CLI.
Installieren Sie die Azure CLI-Erweiterung beim ersten Einsatz, wenn Sie dazu aufgefordert werden. Weitere Informationen zu Erweiterungen finden Sie unter Verwenden von Erweiterungen mit der Azure CLI.
Führen Sie az version aus, um die installierte Version und die abhängigen Bibliotheken zu ermitteln. Führen Sie az upgrade aus, um das Upgrade auf die aktuelle Version durchzuführen.
Erstellen einer Azure-SQL-Datenbank
Erstellen Sie eine Ressourcengruppe, um die Azure-Ressourcen zu speichern, die Sie in diesem Tutorial mithilfe des Befehls
az group create
erstellen.az group create \ --name $RESOURCE_GROUP \ --location eastus
Befolgen Sie die Anweisungen zum Erstellen einer Azure SQL-Datenbank-Instanz in der Ressourcengruppe, die Sie im vorherigen Schritt erstellt haben. Notieren Sie sich den Servernamen, den Datenbanknamen und die Datenbankanmeldeinformationen für die Verwendung in diesem Tutorial.
Erstellen einer Dienstverbindung in AKS mit dem Dienstconnector (Vorschau)
Registrieren der Ressourcenanbieter für den Dienstconnector und die Kubernetes-Konfiguration
Sie registrieren die Ressourcenanbieter für den Dienstconnector und die Kubernetes-Konfiguration mithilfe des Befehls az provider register
.
az provider register --namespace Microsoft.ServiceLinker
az provider register --namespace Microsoft.KubernetesConfiguration
Tipp
Sie können mit den Befehlen az provider show --namespace "Microsoft.ServiceLinker" --query registrationState
und az provider show --namespace "Microsoft.KubernetesConfiguration" --query registrationState
überprüfen, ob diese Ressourcenanbieter bereits registriert sind. Wenn die Ausgabe Registered
lautet, wurde der Dienstanbieter bereits registriert.
Eine neue Verbindung erstellen
Erstellen Sie über Microsoft Entra Workload ID eine Dienstverbindung zwischen Ihrem AKS-Cluster und Ihrer SQL-Datenbank-Instanz.
Navigieren Sie im Azure-Portal zur AKS-Clusterressource.
Wählen Sie Einstellungen>Dienstconnector (Vorschau)>Erstellen aus.
Konfigurieren Sie auf der Registerkarte Grundlegende Einstellungen die folgenden Einstellungen:
- Kubernetes-Namespace: Wählen Sie default aus.
- Diensttyp: Wählen Sie SQL-Datenbank aus.
- Verbindungsname: Verwenden Sie den vom Dienstconnector bereitgestellten Verbindungsnamen, oder geben Sie Ihren eigenen Verbindungsnamen ein.
- Abonnement: Wählen Sie das Abonnement aus, das den Azure SQL-Datenbank-Dienst enthält.
- SQL-Server: Wählen Sie Ihren SQL-Server aus.
- SQL-Datenbank: Wählen Sie Ihre SQL-Datenbank-Instanz aus.
- Clienttyp: Die Codesprache oder das Framework, die bzw. das Sie zum Herstellen einer Verbindung mit dem Zieldienst verwenden, z. B. Python
Wählen Sie Weiter: Authentifizierung aus. Wählen Sie auf der Registerkarte Authentifizierung die Option Workloadidentität und dann eine benutzerseitig zugewiesene verwaltete Identität aus.
Wählen Sie Weiter: Netzwerk>Weiter: Überprüfen und Erstellen>In Cloud Shell erstellen aus.
Cloud Shell wird gestartet und führt die Befehle aus, um eine Verbindung zu erstellen. Möglicherweise müssen Sie einige Konfigurationsänderungen während der Befehlsverarbeitung bestätigen. Sobald der Befehl erfolgreich ausgeführt wird, werden Verbindungsinformationen angezeigt, und Sie können im Bereich Dienstconnector auf die Schaltfläche „Aktualisieren“ klicken, um das neueste Ergebnis anzuzeigen.
Warnung
Microsoft empfiehlt, immer den sichersten Authentifizierungsflow zu verwenden. Der in diesem Verfahren beschriebene Authentifizierungsflow erfordert ein sehr hohes Maß an Vertrauen in die Anwendung und birgt Risiken, die bei anderen Flows nicht vorhanden sind. Sie sollten diesen Flow nur verwenden, wenn andere sicherere Flows (z. B. verwaltete Identitäten) nicht anwendbar sind. Wählen Sie die Authentifizierungsmethode Workload ID (empfohlen) aus.
Erstellen Sie über eine Verbindungszeichenfolge eine Dienstverbindung zwischen Ihrem AKS-Cluster und Ihrer SQL-Datenbank-Instanz.
Navigieren Sie im Azure-Portal zur AKS-Clusterressource.
Wählen Sie Einstellungen>Dienstconnector (Vorschau)>Erstellen aus.
Konfigurieren Sie auf der Registerkarte Grundlegende Einstellungen die folgenden Einstellungen:
- Kubernetes-Namespace: Wählen Sie default aus.
- Diensttyp: Wählen Sie SQL-Datenbank aus.
- Verbindungsname: Verwenden Sie den vom Dienstconnector bereitgestellten Verbindungsnamen, oder geben Sie Ihren eigenen Verbindungsnamen ein.
- Abonnement: Wählen Sie das Abonnement aus, das den Azure SQL-Datenbank-Dienst enthält.
- SQL-Server: Wählen Sie Ihren SQL-Server aus.
- SQL-Datenbank: Wählen Sie Ihre SQL-Datenbank-Instanz aus.
- Clienttyp: Die Codesprache oder das Framework, die bzw. das Sie zum Herstellen einer Verbindung mit dem Zieldienst verwenden, z. B. Python
Wählen Sie Weiter: Authentifizierung aus. Geben Sie auf der Registerkarte Authentifizierung Ihren Benutzernamen und das Kennwort für die Datenbank ein.
Wählen Sie Weiter: Netzwerk>Weiter: Überprüfen und Erstellen>Erstellen aus.
Nach der erfolgreichen Bereitstellung können Sie im Bereich Dienstconnector Informationen zur neuen Verbindung anzeigen.
Aktualisieren des Containers
Nachdem Sie nun eine Verbindung zwischen Ihrem AKS-Cluster und der Datenbank erstellt haben, müssen Sie die Verbindungsgeheimnisse abrufen und in Ihrem Container bereitstellen.
Navigieren Sie im Azure-Portal zur AKS-Clusterressource. Wählen Sie unter Einstellungen die Option Dienstconnector (Vorschau) aus.
Wählen Sie die neu erstellte Verbindung und dann YAML-Schnipsel aus. Diese Aktion öffnet einen Bereich, in dem eine vom Dienstconnector generierte YAML-Beispieldatei angezeigt wird.
Um die Verbindungsgeheimnisse als Umgebungsvariablen in Ihrem Container festzulegen, haben Sie zwei Möglichkeiten:
Erstellen Sie eine Bereitstellung direkt mithilfe des bereitgestellten YAML-Beispielcodeschnipsels. Der Schnipsel enthält hervorgehobene Abschnitte mit dem Geheimnisobjekt, das als Umgebungsvariablen eingefügt wird. Wählen Sie Anwenden aus, um mit diesem Verfahren fortzufahren.
Wählen Sie alternativ unter Ressourcentyp die Option Kubernetes-Workload und dann eine vorhandene Kubernetes-Workload aus. Mit dieser Aktion wird das Geheimnisobjekt Ihrer neuen Verbindung als Umgebungsvariablen für die ausgewählte Workload fest. Nachdem Sie die Workload ausgewählt haben, wählen Sie Übernehmen aus.
Aktualisieren des Anwendungscodes
Aktualisieren Sie als letzten Schritt den Anwendungscode so, dass Ihre Umgebungsvariablen verwendet werden. Befolgen Sie dazu diese Anweisungen.
Bereinigen von Ressourcen
Wenn Sie die Ressourcen, die Sie in diesem Tutorial erstellt haben, nicht mehr benötigen, können Sie sie entfernen, indem Sie die Azure-Ressourcengruppe löschen.
Sie löschen Ihre Ressourcengruppe mithilfe des Befehls az group delete
.
az group delete --resource-group $RESOURCE_GROUP
Zugehöriger Inhalt
Lesen Sie die folgenden Artikel, um mehr über Konzepte im Zusammenhang mit Dienstconnectors zu erfahren und sich darüber zu informieren, wie AKS Sie beim Herstellen einer Verbindung mit Azure-Diensten unterstützt: