Conectar um banco de dados do Azure Cosmos DB ao seu aplicativo no Azure Spring Apps

Nota

Os planos Basic, Standard e Enterprise serão preteridos a partir de meados de março de 2025, com um período de aposentadoria de 3 anos. Recomendamos a transição para os Aplicativos de Contêiner do Azure. Para obter mais informações, consulte o anúncio de aposentadoria do Azure Spring Apps.

O plano de consumo padrão e dedicado será preterido a partir de 30 de setembro de 2024, com um desligamento completo após seis meses. Recomendamos a transição para os Aplicativos de Contêiner do Azure. Para obter mais informações, consulte Migrar consumo padrão e plano dedicado do Azure Spring Apps para Aplicativos de Contêiner do Azure.

Este artigo aplica-se a: ✔️ Java ✔️ C#

Este artigo aplica-se a: ✔️ Basic/Standard ✔️ Enterprise

Em vez de configurar manualmente seus aplicativos Spring Boot, você pode conectar automaticamente serviços selecionados do Azure aos seus aplicativos usando o Azure Spring Apps. Este artigo demonstra como conectar seu aplicativo a um banco de dados do Azure Cosmos DB.

Pré-requisitos

Prepare o seu projeto

  1. Adicione uma das seguintes dependências ao arquivo pom.xml do seu aplicativo. Escolha a dependência apropriada para o seu 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. Atualize o aplicativo atual executando az spring app deploy, ou crie uma nova implantação para essa alteração executando az spring app deployment create.

Conectar seu aplicativo ao Azure Cosmos DB

Nota

Por padrão, os Service Connectors são criados no nível do aplicativo. Para substituir as conexões, você pode criar outras conexões novamente nas implantações.

Utilizar a CLI do Azure

Use a CLI do Azure para configurar seu aplicativo Spring para se conectar a um Banco de Dados Cosmos NoSQL usando o az spring connection create comando, conforme mostrado no exemplo a seguir. Certifique-se de substituir as variáveis no exemplo por valores reais.

Nota

A atualização das configurações do banco de dados do Azure Cosmos DB pode levar alguns minutos para ser concluída.

Nota

Se você estiver usando o Cosmos Cassandra, use --key_space em vez de --database. Se você estiver usando o Cosmos Table, use --table em vez de --database. Para obter mais informações, consulte Guia de início rápido: criar uma conexão de serviço no Azure Spring Apps com a CLI do 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

Se você estiver usando o Service Connector pela primeira vez, comece executando o comando az provider register --namespace Microsoft.ServiceLinker para registrar o provedor de recursos do Service Connector.

Gorjeta

Execute o comando az spring connection list-support-types --output table para obter uma lista de serviços de destino suportados e métodos de autenticação para o Azure Spring Apps. Se o az spring comando não for reconhecido pelo sistema, verifique se você instalou a extensão necessária executando az extension add --name spring.

Utilizar o portal do Azure

Como alternativa, você pode usar o portal do Azure para configurar essa conexão concluindo as etapas a seguir. O portal do Azure fornece os mesmos recursos que a CLI do Azure e fornece uma experiência interativa.

  1. Selecione sua instância do Azure Spring Apps no portal do Azure e selecione Aplicativos no menu de navegação. Escolha o aplicativo que deseja conectar e selecione Service Connector no menu de navegação.

  2. Selecione Criar.

  3. Na guia Noções básicas, para tipo de serviço, selecione Cosmos DB e escolha uma assinatura. Para Tipo de API, selecione Core (SQL), escolha uma conta do Cosmos DB e um banco de dados. Para o tipo de cliente, selecione Java e, em seguida, selecione Avançar: Autenticação. Se você ainda não criou seu banco de dados, consulte Guia de início rápido: criar uma conta, banco de dados, contêiner e itens do Azure Cosmos DB no portal do Azure.

  4. Na guia Autenticação, escolha Cadeia de conexão. O Service Connector recupera automaticamente a chave de acesso da sua conta do Cosmos DB. Selecione Next: Networking.

  5. No separador Rede, selecione Configurar regras de firewall para permitir o acesso ao serviço de destino e, em seguida, selecione Seguinte: Rever + Criar.

  6. No separador Rever + Criar, aguarde até que a validação seja aprovada e, em seguida, selecione Criar. A criação pode levar alguns minutos para ser concluída.

  7. Depois que a conexão entre seus aplicativos Spring e seu banco de dados do Cosmos DB tiver sido gerada, você poderá vê-la na página Service Connector e selecionar o botão de desdobramento para exibir as variáveis de conexão configuradas.

Próximos passos

Neste artigo, você aprendeu como conectar seu aplicativo no Azure Spring Apps a um banco de dados do Azure Cosmos DB. Para saber mais sobre como conectar serviços ao seu aplicativo, consulte Conectar-se a um cache do Azure para cache Redis.