Share via


Azure Spring Apps에서 애플리케이션에 Azure Cosmos DB 데이터베이스 연결

참고 항목

Azure Spring Apps는 Azure Spring Cloud 서비스의 새 이름입니다. 서비스에 새 이름이 지정되었지만, 자산을 업데이트하는 동안 스크린샷, 비디오, 다이어그램과 같은 일부 위치에서는 당분간 이전 이름이 표시됩니다.

이 문서는 다음에 적용됩니다. ✔️ Java ✔️ C#

이 문서의 적용 대상: ✔️ 기본/표준 ✔️ 엔터프라이즈

Spring Boot 애플리케이션을 수동으로 구성하는 대신 Azure Spring 앱을 사용하여 선택한 Azure 서비스를 애플리케이션에 자동으로 연결할 수 있습니다. 이 문서에서는 애플리케이션을 Azure Cosmos DB 데이터베이스에 연결하는 방법을 보여 줍니다.

필수 조건

프로젝트 준비

  1. 애플리케이션의 pom.xml 파일에 다음 종속성 중 하나를 추가합니다. API 유형에 적합한 종속성을 선택합니다.

    • API 형식: NoSQL

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

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

      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-data-cassandra</artifactId>
      </dependency>
      
  2. az spring app deploy를 실행하여 현재 앱을 업데이트하거나, az spring app deployment create를 실행하여 이 변경 사항에 대한 새 배포를 만듭니다.

Azure Cosmos DB에 앱 연결

참고 항목

기본적으로 서비스 커넥터는 애플리케이션 수준에서 만들어집니다. 연결을 재정의하려면 배포에서 다른 연결을 다시 만들면 됩니다.

Azure CLI 사용

다음 예와 같이 Azure CLI를 통해 az spring connection create 명령을 사용하여 Cosmos NoSQL Database에 연결하도록 Spring 앱을 구성합니다. 이 예의 변수를 실제 값으로 바꿉니다.

참고 항목

Azure Cosmos DB 데이터베이스 설정을 업데이트하는 작업을 완료하는 데 몇 분 정도 걸릴 수 있습니다.

참고 항목

Cosmos Cassandra를 사용하는 경우 --database 대신 --key_space를 사용합니다. Cosmos 테이블을 사용하는 경우 --database 대신 --table을 사용합니다. 자세한 내용은 빠른 시작: Azure CLI를 사용하여 Azure Spring 앱에서 서비스 연결 만들기를 참조하세요.

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

참고 항목

서비스 커넥터를 처음 사용하는 경우 먼저 az provider register --namespace Microsoft.ServiceLinker 명령을 실행하여 서비스 커넥터 리소스 공급자를 등록합니다.

az spring connection list-support-types --output table 명령을 실행하여 Azure Spring Apps에 지원되는 대상 서비스와 인증 방법의 목록을 가져옵니다. 시스템에서 az spring 명령을 인식하지 못하는 경우 az extension add --name spring을 실행하여 필요한 확장을 설치했는지 확인합니다.

Azure Portal 사용

또는 Azure Portal을 사용해 다음 단계를 완료하여 이 연결을 구성할 수 있습니다. Azure Portal은 Azure CLI와 동일한 기능을 제공하고 대화형 환경을 제공합니다.

  1. Azure Portal에서 Azure Spring Apps 인스턴스를 선택하고 탐색 메뉴에서 을 선택합니다. 연결하려는 앱을 선택하고 탐색 메뉴에서 서비스 커넥터를 선택합니다.

  2. 만들기를 실행합니다.

  3. 기본 탭에서 서비스 유형에 대해 Cosmos DB를 선택한 다음, 구독을 선택합니다. API 유형의 경우 Core(SQL), Cosmos DB 계정 및 데이터베이스를 선택합니다. 클라이언트 유형의 경우 Java를 선택한 후, 다음: 인증을 선택합니다. 데이터베이스를 아직 만들지 않은 경우 빠른 시작: Azure Portal에서 Azure Cosmos DB 계정, 데이터베이스, 컨테이너 및 항목 만들기를 참조하세요.

  4. 인증 탭에서 연결 문자열을 선택합니다. 서비스 커넥터는 Cosmos DB 계정에서 액세스 키를 자동으로 검색합니다. 다음: 네트워킹을 선택합니다.

  5. 네트워킹 탭에서 대상 서비스에 대한 액세스를 사용하도록 방화벽 규칙 구성을 선택한 후, 다음: 검토 + 만들기를 선택합니다.

  6. 검토 + 만들기 탭에서 유효성 검사가 통과되기를 기다린 다음, 만들기를 선택합니다. 생성을 완료하는 데 몇 분 정도 걸릴 수 있습니다.

  7. Spring 앱과 Cosmos DB 데이터베이스 간의 연결이 생성되면 서비스 커넥터 페이지에서 이를 확인하고 확장 단추를 선택하여 구성된 연결 변수를 볼 수 있습니다.

다음 단계

이 문서에서는 Azure Spring Apps의 애플리케이션을 Azure Cosmos DB 데이터베이스에 연결하는 방법을 알아보았습니다. 서비스를 애플리케이션에 연결하는 방법에 대해 자세히 알아보려면 Azure Cache for Redis Cache에 연결을 참조하세요.