다음을 통해 공유


Azure Spring Apps 기본 또는 표준 계획 인스턴스를 Enterprise 플랜으로 마이그레이션합니다.

참고 항목

기본, 표준엔터프라이즈 계획은 2025년 3월 중순부터 사용되지 않으며 3년의 은퇴 기간이 있습니다. Azure Container Apps로 전환하는 것이 좋습니다. 자세한 내용은 Azure Spring Apps 사용 중지 공지 사항을 참조하세요.

표준 소비 및 전용 계획은 2024년 9월 30일부터 사용되지 않으며 6개월 후에 완전히 종료됩니다. Azure Container Apps로 전환하는 것이 좋습니다. 자세한 내용은 Azure Spring Apps 표준 사용량 및 전용 계획을 Azure Container Apps로 마이그레이션을 참조 하세요.

이 문서는 기본/표준 ✅ 엔터프라이즈에✅ 적용됩니다.

이 문서에서는 기본 또는 표준 플랜의 기존 애플리케이션을 Enterprise 플랜으로 마이그레이션하는 방법을 보여줍니다. 기본 또는 표준 플랜에서 Enterprise 플랜으로 마이그레이션하는 경우 VMware Tanzu 구성 요소는 OSS(오픈 소스 소프트웨어) Spring Cloud 구성 요소를 대체하여 추가 기능 지원을 제공합니다.

이 문서에서는 마이그레이션 방법의 예로 Pet Clinic 샘플 앱을 사용합니다.

필수 구성 요소

  • Azure 구독 구독이 없는 경우 시작하기 전에 체험 계정을 만드세요.
  • Azure CLI: 버전 2.45.0 이상
  • Azure Spring Apps Enterprise 계획 확장입니다. 다음 명령을 사용하여 이전 버전을 제거하고 최신 엔터프라이즈 플랜 확장을 설치합니다. 이전에 spring-cloud 확장을 설치한 경우 구성 및 버전 불일치를 방지하기 위해 이 확장을 제거합니다.
    az extension add --upgrade --name spring
    az extension remove --name spring-cloud
    
  • Git

서비스 인스턴스 프로비저닝

Azure Spring Apps Enterprise 플랜에서 VMware Tanzu 구성 요소는 OSS Spring Cloud 구성 요소를 대체하여 추가 기능 지원을 제공합니다. Tanzu 구성 요소는 필요에 따라 주문형으로 사용하도록 설정됩니다. Azure Spring Apps 서비스 인스턴스를 만들기 전에 필요한 구성 요소를 사용하도록 설정해야 합니다.

참고 항목

Tanzu 구성 요소를 사용하려면 Azure Spring Apps 서비스 인스턴스를 프로비전할 때 사용하도록 설정해야 합니다. 현재 프로비전 후에는 사용하도록 설정할 수 없습니다.

다음 단계를 사용하여 Azure Spring Apps 서비스 인스턴스를 프로비전합니다.

  1. Azure Portal을 엽니다.

  2. 맨 위 검색 상자에서 Azure Spring Apps를 검색합니다.

  3. 결과에서 Azure Spring Apps를 선택한 다음, 만들기를 선택합니다.

  4. Azure Spring Apps 만들기 페이지에서 인스턴스에 대한 구독, 리소스 그룹이름을 설정합니다.

  5. 서비스 세부 정보계획에서 변경을 선택합니다.

    계획 섹션에서 변경 단추가 강조 표시된 Azure Portal Azure Spring 앱 만들기 페이지의 스크린샷.

  6. 플랜 선택 페이지의 테이블에서 Enterprise 행을 선택한 다음, 선택을 선택합니다.

    기본 사항 섹션과 '가격 책정 계층 선택' 창이 표시된 Azure Portal Azure Spring Apps 만들기 페이지의 스크린샷.

  7. Azure Spring Apps 만들기 페이지로 돌아가서 약관을 선택하여 Azure Marketplace에서 Enterprise 플랜 제품의 약관 및 개인정보처리방침에 동의합니다.

  8. 다음: VMware Tanzu 설정을 선택합니다.

  9. VMWare Tanzu 설정 탭에서 목록을 스크롤하여 Tanzu 구성 요소를 검토합니다. 모든 구성 요소는 기본적으로 사용하도록 설정됩니다.

    V M ware Tanzu 설정 섹션이 표시된 Azure Portal Azure Spring Apps 만들기 페이지의 스크린샷.

    참고 항목

    프로비전 단계에서 사용하거나 사용하도록 설정하려는 Tanzu 구성 요소를 신중하게 고려하세요. Azure Spring Apps 인스턴스를 프로비전한 후에는 Tanzu 구성 요소를 사용하거나 사용하지 않도록 설정할 수 없습니다.

  10. Application Insights 탭을 선택한 다음, Application Insights 사용을 선택합니다. 다음 설정을 확인합니다.

    • Application Insights 사용이 선택되어야 합니다.
    • 기존 Application Insights 인스턴스를 선택하거나 새 Application Insights 인스턴스를 만듭니다.
    • 샘플링 비율을 0~100 범위에서 지정하거나 10(기본값)을 사용합니다.

    Azure Spring Apps 인스턴스를 프로비전한 후 Application Insights를 사용하도록 설정할 수도 있습니다. Application Insights 가격 책정에 대한 자세한 내용은 Azure Monitor 로그 비용 계산 및 옵션Application Insights 청구 섹션을 참조하세요.

    참고 항목

    Azure Spring Apps와 통합된 경우 Application Insights 사용량에 대한 비용을 지불합니다.

  11. 검토 및 만들기를 선택하고, 유효성 검사가 완료될 때까지 기다린 다음, 만들기를 선택하여 서비스 인스턴스 프로비전을 시작합니다.

리소스 프로비저닝을 완료하는 데 약 5분이 걸립니다.

앱 만들기 및 구성

앱 만들기 단계는 표준 계획과 동일합니다.

  1. 다음 명령을 사용하여 Azure CLI 기본값을 설정합니다. 자리 표시자를 사용자의 값으로 바꿔야 합니다.

    az config set defaults.group=<resource-group-name>
    az config set defaults.spring=<Azure-Spring-Apps-service-instance-name>
    
  2. 다음 명령을 사용하여 PetClinic, api-gatewaycustomers-service에 대한 두 가지 핵심 애플리케이션을 만듭니다.

    az spring app create --name api-gateway --instance-count 1 --memory 2Gi --assign-endpoint
    az spring app create --name customers-service --instance-count 1 --memory 2Gi
    

외부 구성에 Application Configuration Service 사용

분산 시스템의 외부화된 구성의 경우 관리형 Spring Cloud Config Server(OSS)는 기본 및 표준 플랜에서만 사용할 수 있습니다. Enterprise 플랜에서 Application Configuration Service for Tanzu는 앱에 유사한 기능을 제공합니다. 다음 표에서는 OSS 구성 서버 및 Application Configuration Service의 사용량에서 몇 가지 차이점을 설명합니다.

구성 요소 지원 플랜 Enabled 앱에 바인딩 프로필
Spring Cloud 구성 서버 기본/표준 항상 사용 자동 바인딩 앱의 소스 코드에서 구성됩니다.
Application Configuration Service for Tanzu Enterprise 주문형 사용. 수동 바인딩 Azure Spring Apps 배포에서 config-file-pattern으로 제공됩니다.

OSS 구성 서버의 클라이언트-서버 모드와 달리 Application Configuration Service는 백 엔드 Git 리포지토리에 정의된 속성에서 채워진 Kubernetes 네이티브 ConfigMap을 사용하여 구성을 관리합니다. Application Configuration Service는 올바른 구성과 일치하도록 앱의 소스 코드에 구성된 활성 프로필을 가져올 수 없으므로, 명시적 구성 config-file-pattern을 Azure Spring Apps 배포 수준에서 지정해야 합니다.

Application Configuration Service for Tanzu 구성

Application Configuration Service for Tanzu를 중앙 집중식 구성 서비스로 사용하려면 다음 단계를 수행합니다.

  1. Azure Spring Apps Enterprise 인스턴스의 탐색 창에서 Application Configuration Service를 선택합니다. Application Configuration Service for Tanzu의 실행 상태 및 할당된 리소스를 봅니다.

    애플리케이션 구성 서비스 페이지의 개요 탭을 보여 주는 Azure Portal의 스크린샷.

  2. 설정을 선택하고 리포지토리에서 다음 정보를 사용하여 새 항목을 추가해 양식을 완성합니다.

    • 이름: default
    • 패턴: api-gateway,customers-service
    • URI: https://github.com/Azure-Samples/spring-petclinic-microservices-config
    • 레이블: master

    애플리케이션 구성 서비스 페이지의 설정 탭을 보여 주는 Azure Portal의 스크린샷.

  3. 유효성 검사를 선택하여 대상 URI에 대한 액세스의 유효성을 검사합니다.

  4. 유효성 검사가 성공적으로 완료되면 적용을 선택하여 구성 설정을 업데이트합니다.

Application Configuration Service for Tanzu에 애플리케이션 바인딩

Git 백 엔드에서 Application Configuration Service for Tanzu를 사용하는 경우 Application Configuration Service for Tanzu에 앱을 바인딩해야 합니다. 앱을 바인딩한 후에는 앱에서 사용하는 패턴을 구성해야 합니다. 다음 단계를 사용하여 앱의 패턴을 바인딩하고 구성합니다.

다음 단계를 사용하여 VMware Tanzu용 Application Configuration Service에 앱을 바인딩합니다.

  1. Azure Spring Apps Enterprise 인스턴스의 탐색 창에서 Application Configuration Service를 선택합니다.

  2. 앱 바인딩을 선택한 다음, 앱 바인딩을 선택합니다.

    애플리케이션 구성 서비스 페이지의 앱 바인딩 탭과 앱 바인딩 드롭다운 메뉴가 표시된 Azure Portal의 스크린샷.

  3. 드롭다운 메뉴에서 앱을 선택한 다음, 적용을 선택하여 애플리케이션을 Application Configuration Service for Tanzu에 바인딩합니다.

자세한 내용은 Application Configuration Service for Tanzu 사용을 참조하세요.

Service Registry for Tanzu 사용

서비스 레지스트리는 독점 VMware Tanzu 구성 요소 중 하나입니다. 마이크로 서비스 기반 아키텍처의 핵심 개념 중 하나인 서비스 검색 패턴 구현을 앱에 제공합니다. Enterprise 플랜에서 Service Registry for Tanzu는 서비스 레지스트리를 제공하고 앱에 대한 지원을 검색합니다. 관리형 Spring Cloud Eureka는 기본 및 표준 플랜에서만 사용할 수 있으며 Enterprise 플랜에서는 사용할 수 없습니다.

구성 요소 표준 플랜 엔터프라이즈 계획
서비스 레지스트리 OSS eureka
자동 바인딩(항상 삽입)
항상 프로비전됨
Service Registry for Tanzu
앱에 수동 바인딩 필요
주문형 사용

Tanzu Service Registry에 애플리케이션 바인딩

앱을 Application Configuration Service for VMware Tanzu에 바인딩하려면 다음 단계를 수행합니다.

  1. Azure Spring Apps Enterprise 인스턴스에서 서비스 레지스트리를 선택합니다.

  2. 앱 바인딩을 선택합니다. 현재 바인딩된 앱이 앱 이름 아래에 표시됩니다.

  3. 바인딩 앱을 선택합니다.

  4. 드롭다운 메뉴에서 앱을 선택한 다음, 적용을 선택하여 애플리케이션을 Tanzu Service Registry에 바인딩합니다.

    Service Registry 페이지와 '앱 바인딩' 대화 상자를 보여 주는 Azure Portal Azure Spring Apps의 스크린샷.

참고 항목

바인딩/바인딩 해제 상태를 변경할 때 변경 내용을 적용하려면 앱을 다시 시작하거나 다시 배포해야 합니다.

자세한 내용은 Tanzu Service Registry 사용을 참조하세요.

애플리케이션 빌드 및 배포

Enterprise 플랜에서 Tanzu Build Service는 앱을 빌드하는 데 사용됩니다. 소스 코드 및 zip 파일과 같은 아티팩트에서 배포할 Polyglot 앱과 같은 더 많은 기능을 제공합니다.

Tanzu Build Service를 사용하려면 빌드 작업과 사용할 작성기에 대한 리소스를 지정해야 합니다. 빌드 환경을 설정하는 --build-env 매개 변수를 지정할 수도 있습니다.

앱이 Application Configuration Service for Tanzu와 바인딩되는 경우 추가 인수 —config-file-pattern을 지정해야 합니다.

자세한 내용은 Tanzu Build Service 사용을 참조하세요.

애플리케이션을 로컬로 빌드

로컬로 빌드하려면 다음 단계를 사용합니다.

  1. 다음 명령을 사용하여 샘플 앱 리포지토리를 Azure 계정에 복제하고, 디렉터리를 변경하고, 프로젝트를 빌드합니다.

    git clone -b enterprise https://github.com/azure-samples/spring-petclinic-microservices
    cd spring-petclinic-microservices
    mvn clean package -DskipTests
    

    프로젝트를 컴파일하는 데 몇 분 정도 걸릴 수 있습니다. 완료되면 각 서비스에 대한 개별 JAR 파일이 해당 폴더에 있습니다.

  2. 다음 명령을 사용하여 이전 단계에서 빌드된 JAR 파일을 배포합니다.

    az spring app deploy \
        --name api-gateway \
        --artifact-path spring-petclinic-api-gateway/target/spring-petclinic-api-gateway-2.3.6.jar \
        --config-file-patterns api-gateway
    az spring app deploy \
        --name customers-service \
        --artifact-path spring-petclinic-customers-service/target/spring-petclinic-customers-service-2.3.6.jar \
        --config-file-patterns customers-service
    
  3. 다음 명령을 사용하여 배포 후 애플리케이션 상태를 쿼리합니다.

    az spring app list --output table
    

    이 명령은 다음 예제와 유사한 출력을 생성합니다.

    Name                  Location    ResourceGroup       Public Url                                                 Production Deployment    Provisioning State    CPU    Memory    Running Instance    Registered Instance    Persistent Storage    Bind Service Registry    Bind Application Configuration Service
    --------------------  ----------  ---------------  ---------------------------------------------------------  -----------------------  --------------------  -----  --------  ------------------  ---------------------  --------------------  -----------------------  ----------------------------------------
    api-gateway           eastus      <resource group>   https://<service_name>-api-gateway.asc-test.net                    default                  Succeeded             1      2Gi       1/1                1/1                    -                     True                     True
    customers-service     eastus      <resource group>                                                                      default                  Succeeded             1      2Gi       1/1                1/1                    -                     True                     True
    

Application Insights 사용

Azure Spring Apps Enterprise 플랜은 빌드팩 바인딩을 사용하여 Application Insights를 In-Process 에이전트 대신 ApplicationInsights 형식과 통합합니다. 자세한 내용은 APM 통합 및 CA 인증서 구성 방법을 참조하세요.

다음 표에서는 플랜에서 사용할 수 있는 APM 공급자를 나열합니다.

표준 플랜 엔터프라이즈 계획
Application Insight
New Relic
Dynatrace
AppDynamics
Application Insight
New Relic
Dynatrace
AppDynamics
ElasticAPM

Application Insights에서 현재 설정을 확인하거나 업데이트하려면 다음 단계를 사용합니다.

  1. Azure Spring Apps Enterprise 인스턴스에서 Application Insights를 선택합니다.

  2. 바인딩 편집 또는 바인딩 해제를 선택하여 Application Insights를 사용하거나 사용하지 않도록 설정합니다.

    바인딩 옵션 편집 드롭다운 메뉴가 표시된 Azure Portal Application Insights 페이지의 스크린샷.

  3. 바인딩 편집을 선택합니다. 바인딩 설정을 편집한 다음, 저장을 선택합니다.

    Azure Portal의 '바인딩 편집' 창의 스크린샷.

다음 단계