Freigeben über


Verbinden einer Azure Cosmos DB-Datenbank mit Ihrer Anwendung in Azure Spring Apps

Hinweis

Die Pläne Basic, Standard und Enterprise gelten ab Mitte März 2025 als veraltet und werden über einen Zeitraum von drei Jahren eingestellt. Es wird empfohlen, auf Azure Container Apps umzustellen. Weitere Informationen finden Sie in der Ankündigung zur Einstellung von Azure Spring Apps.

Der Plan Standardverbrauch und dediziert gilt ab dem 30. September 2024 als veraltet und wird nach sechs Monaten vollständig eingestellt. Es wird empfohlen, auf Azure Container Apps umzustellen. Weitere Informationen finden Sie unter Migrieren des Plans „Standardverbrauch und dediziert“ von Azure Spring Apps zu Azure Container Apps.

Dieser Artikel gilt für:✅️ Java ✅ C#

Dieser Artikel gilt für:✅ Basic/Standard ✅ Enterprise

Mit Azure Spring Apps können Sie ausgewählte Azure-Dienste automatisch mit Ihren Anwendungen verbinden, statt Ihre Spring Boot-Anwendungen manuell zu konfigurieren. In diesem Artikel wird gezeigt, wie Sie Ihre Anwendung mit einer Azure Cosmos DB-Datenbank verbinden.

Voraussetzungen

Vorbereiten Ihres Projekts

  1. Fügen Sie eine der folgenden Abhängigkeiten in der Datei pom.xml Ihrer Anwendung hinzu. Wählen Sie die für Ihren API-Typ passende Abhängigkeit aus.

    • API-Typ: NoSQL

      <dependency>
          <groupId>com.azure.spring</groupId>
          <artifactId>spring-cloud-azure-starter-data-cosmos</artifactId>
      </dependency>
      
    • API-Typ: MongoDB

      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-data-mongodb</artifactId>
      </dependency>
      
    • API-Typ: Cassandra

      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-data-cassandra</artifactId>
      </dependency>
      
  2. Aktualisieren Sie die aktuelle App durch Ausführen von az spring app deploy, oder erstellen Sie eine neue Bereitstellung für diese Änderung, indem Sie az spring app deployment create ausführen.

Verbinden Ihrer App mit Azure Cosmos DB

Hinweis

Standardmäßig werden Dienstconnectors auf Anwendungsebene erstellt. Um die Verbindungen außer Kraft zu setzen, können Sie in den Bereitstellungen wieder andere Verbindungen erstellen.

Verwenden der Azure-CLI

Konfigurieren Sie mit der Azure CLI Ihre Spring-App so, dass sie sich mit einer Cosmos NoSQL-Datenbank verbindet, indem Sie den Befehl az spring connection create verwenden, wie im folgenden Beispiel gezeigt. Achten Sie darauf, die Variablen im Beispiel durch tatsächliche Werte zu ersetzen.

Hinweis

Das Aktualisieren der Azure Cosmos DB-Datenbankeinstellungen kann einige Minuten dauern.

Hinweis

Wenn Sie Cosmos Cassandra verwenden, verwenden Sie --key_space anstelle von --database. Wenn Sie Cosmos-Tabelle verwenden, verwenden Sie --table anstelle von --database. Weitere Informationen finden Sie unter Schnellstart: Erstellen Sie eine Dienstverbindung in Azure Spring Apps mit der Azure-Befehlszeilenschnittstelle.

az spring connection create cosmos-sql \
    --resource-group $AZURE_SPRING_APPS_RESOURCE_GROUP \
    --service $AZURE_SPRING_APPS_SERVICE_INSTANCE_NAME \
    --app $APP_NAME \
    --target-resource-group $COSMOSDB_RESOURCE_GROUP \
    --account $COSMOSDB_ACCOUNT_NAME \
    --database $DATABASE_NAME \
    --secret

Hinweis

Wenn Sie den Dienstconnector zum ersten Mal verwenden, führen Sie zunächst den Befehl az provider register --namespace Microsoft.ServiceLinker aus, um den Ressourcenanbieter für den Dienstconnector zu registrieren.

Tipp

Führen Sie den Befehl az spring connection list-support-types --output table aus, um eine Liste der für Azure Spring Apps unterstützten Zieldienste und Authentifizierungsmethoden abzurufen. Wenn der az spring Befehl vom System nicht erkannt wird, überprüfen Sie, ob Sie die erforderliche Erweiterung installiert haben, indem Sie ausführen az extension add --name spring.

Verwenden des Azure-Portals

Alternativ können Sie diese Verbindung auch im Azure-Portal konfigurieren, indem Sie die folgenden Schritte ausführen. Das Azure-Portal bietet die gleichen Funktionen wie die Azure CLI und dazu eine interaktive Oberfläche.

  1. Wählen Sie im Azure-Portal Ihre Azure Spring Apps-Instanz und dann im Navigationsmenü Apps aus. Wählen Sie die App aus, mit der Sie eine Verbindung herstellen möchten, und wählen Sie dann im Navigationsmenü Dienstconnector aus.

  2. Klicken Sie auf Erstellen.

  3. Wählen Sie auf der Registerkarte Grundlagen unter Diensttyp die Option „Cosmos DB“ und dann ein Abonnement aus. Wählen Sie für den API-Typ die Option „Core (SQL)“ aus, und wählen Sie dann ein Cosmos DB-Konto und eine Datenbank aus. Wählen Sie unter Clienttyp die Option „Java“ und dann Weiter: Authentifizierung aus. Wenn Sie Ihre Datenbank noch nicht erstellt haben, lesen Sie Schnellstart: Erstellen eines Azure Cosmos DB-Kontos, einer Datenbank, eines Containers sowie von Elementen mit dem Azure-Portal.

  4. Wählen Sie auf der Registerkarte Authentifizierungdie Option Verbindungszeichenfolge aus. Der Dienstconnector ruft den Zugriffsschlüssel automatisch aus Ihrem Cosmos DB-Konto ab. Klicken Sie auf Weiter: Netzwerk.

  5. Wählen Sie auf der Registerkarte Netzwerk die Option Configure firewall rules to enable access to target service (Firewallregeln konfigurieren, um den Zugriff auf den Zieldienst zu aktivieren) und dann Weiter: Überprüfen und erstellen aus.

  6. Warten Sie auf der Registerkarte Überprüfen und erstellen, bis die Überprüfung erfolgreich abgeschlossen wurde, und wählen Sie dann Erstellen aus. Die Erstellung kann einige Minuten dauern.

  7. Sobald die Verbindung zwischen Ihren Spring-Apps und Cosmos DB-Datenbank hergestellt wurde, können Sie sie auf der Seite „Dienstconnector“ sehen und die Schaltfläche „Auffalten“ auswählen, um die konfigurierten Verbindungsvariablen anzuzeigen.

Nächste Schritte

In diesem Artikel haben Sie erfahren, wie Sie Ihre Anwendung in Azure Spring Apps mit einer Azure Cosmos DB-Datenbank verbinden. Weitere Informationen zum Herstellen einer Verbindung zwischen Diensten und Ihrer Anwendung finden Sie unter Verbinden von Azure-Diensten mit Ihrer Azure Spring Cloud-Anwendung: Azure Cache for Redis.