Share via


Conexión de una base de datos de Azure Cosmos DB a la aplicación de Azure Spring Apps

Nota:

Azure Spring Apps es el nuevo nombre del servicio Azure Spring Cloud. Aunque el servicio tiene un nuevo nombre, verá el nombre antiguo en algunos lugares durante un tiempo mientras trabajamos para actualizar recursos, como capturas de pantalla, vídeos y diagramas.

Este artículo se aplica a: ✔️ Java ✔️ C#

La información de este artículo puede ponerse en práctica en: ✔️ Básico o Estándar ✔️ Enterprise

En lugar de configurar manualmente las aplicaciones de Spring Boot, puede conectar automáticamente los servicios de Azure seleccionados a las aplicaciones mediante Azure Spring Apps. En este artículo se muestra cómo conectar la aplicación a una base de datos de Azure Cosmos DB.

Requisitos previos

Preparación del proyecto

  1. Agregue una de las siguientes dependencias al archivo pom.xml de la aplicación. Elija la dependencia que sea adecuada para el tipo de API.

    • Tipo de API: NoSQL

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

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

      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-data-cassandra</artifactId>
      </dependency>
      
  2. Actualice la aplicación actual mediante la ejecución de az spring app deploy o cree una implementación para este cambio mediante la ejecución de az spring app deployment create.

Conectar la aplicación a Azure Cosmos DB

Nota:

De forma predeterminada, los Conectar ors de servicio se crean en el nivel de aplicación. Para invalidar las conexiones, puede volver a crear otras conexiones en las implementaciones.

Uso de la CLI de Azure

Use la CLI de Azure para configurar la aplicación spring para conectarse a una base de datos NoSQL de Cosmos mediante el az spring connection create comando , como se muestra en el ejemplo siguiente. Asegúrese de reemplazar las variables del ejemplo por valores reales.

Nota:

La actualización de la configuración de la base de datos de Azure Cosmos DB puede tardar unos minutos en completarse.

Nota:

Si usa Cosmos Cassandra, use --key_space en lugar de --database. Si usa Cosmos Table, use --table en lugar de --database. Para más información, consulte Inicio rápido: Creación de una conexión de servicio en Azure Spring Apps con la CLI de Azure.

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

Nota:

Si usa Service Connector por primera vez, empiece ejecutando el comando az provider register --namespace Microsoft.ServiceLinker para registrar el proveedor de recursos de Service Connector.

Sugerencia

Ejecute el comando az spring connection list-support-types --output table para obtener una lista de los servicios de destino compatibles con Azure Spring Apps y los métodos de autenticación. Si el sistema no reconoce el comando az spring, compruebe que ha instalado la extensión necesaria mediante la ejecución de az extension add --name spring.

Uso de Azure Portal

Como alternativa, puede usar Azure Portal para configurar esta conexión completando los pasos siguientes. Azure Portal proporciona las mismas funcionalidades que la CLI de Azure y una experiencia interactiva.

  1. Seleccione la instancia de Azure Spring Apps en Azure Portal y seleccione Aplicaciones en el menú de navegación. Elija la aplicación que quiere conectar y seleccione Service Connector en el menú de navegación.

  2. Seleccione Crear.

  3. En la pestaña Aspectos básicos, para el tipo de servicio, seleccione Cosmos DB y, después, elija una suscripción. En Tipo de API, seleccione Core (SQL) y elija una cuenta de Cosmos DB y una base de datos. En Tipo de cliente, seleccione Java y, a continuación, seleccione Siguiente: Autenticación. Si aún no ha creado la base de datos, consulte Inicio rápido: Creación de una cuenta, una base de datos, un contenedor y elementos de Azure Cosmos DB desde Azure Portal.

  4. En la pestaña Autenticación, elija Cadena de conexión. Service Connector recupera automáticamente la clave de acceso de la cuenta de Cosmos DB. Seleccione Siguiente: Redes.

  5. En la pestaña Redes, seleccione Configurar reglas de firewall para habilitar el acceso al servicio de destino y, después, seleccione Siguiente: Revisar y crear.

  6. En la pestaña Revisar y crear, espere a que se complete la validación y después seleccione Crear. Este proceso puede tardar unos minutos.

  7. Una vez generada la conexión entre las aplicaciones de Spring y la base de datos de Cosmos DB, puede verla en la página Service Connector y seleccionar el botón de despliegue para ver las variables de conexión configuradas.

Pasos siguientes

En este artículo, ha aprendido a conectar la aplicación en Azure Spring Apps a una base de datos de Azure Cosmos DB. Para más información sobre cómo conectar servicios a la aplicación, consulte Conectar a una caché de Azure Cache for Redis.