다음을 통해 공유


Spring Cloud Config Server를 Azure Spring Apps에서 Azure Container Apps로 마이그레이션

참고 항목

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

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

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

이 문서에서는 Spring Cloud Config Server를 Azure Container Apps의 Spring용 Config Server로 마이그레이션하는 방법을 설명합니다. Azure Container Apps는 Azure Spring Apps의 Spring Cloud Config Server와 유사한 기능을 포함하는 Spring용 Config Server를 관리합니다.

필수 조건

  • 서버 구성을 사용하도록 설정된 Azure Spring Apps 인스턴스입니다.
  • Config Server용 Azure Container Apps 환경 및 Azure Container Apps 인스턴스.

구성 서버 프로비전

다음 단계에서는 Azure Container Apps에서 Spring용 Config Server를 프로비전하는 방법을 보여 줍니다.

  1. Azure Portal에서 Azure Container Apps 환경으로 이동합니다.

  2. 메뉴에서 Services Services를> 선택합니다.

  3. 구성 드롭다운 목록을 열고 Java 구성 요소를 선택합니다.

  4. Java 구성 요소 구성 패널에서 다음 값을 입력합니다.

    속성
    Java 구성 요소 유형 Spring용 Config Server를 선택합니다.
    Java 구성 요소 이름 configserver를 입력합니다.
  5. Git 리포지토리 섹션에서 추가를 선택한 다음, 다음 표와 같이 Application Configuration Service의 값을 여기로 마이그레이션합니다. 하나의 리포지토리를 Spring용 Config Server의 기본 리포지토리로 선택합니다.

    속성
    Type 기본값을 선택합니다.
    URI 리포지토리의 URI 값을 입력합니다.
    분기 이름 리포지토리의 레이블 값을 입력합니다.
    검색 경로 리포지토리의 검색 경로 값을 입력합니다.
    인증 리포지토리의 인증 유형을 선택하고 해당 정보를 입력합니다.

    나머지 필드에 기본값을 그대로 두고 추가를 선택합니다.

  6. 여러 리포지토리가 있는 경우 추가를 선택하여 다른 리포지토리를 마이그레이션합니다. 형식의 경우 기타를 선택한 다음, 이전 단계와 다음 표에 표시된 대로 다른 속성을 마이그레이션합니다.

    속성
    Type 기본값을 선택합니다.
    패턴 리포지토리의 패턴 값을 형식으로 {application}{application}/{profile} 입력합니다.
  7. 바인딩 섹션에서 드롭다운을 열어 Spring용 구성 서버에 바인딩할 앱을 선택합니다.

  8. 다음을 선택합니다.

  9. 구성 서버를 설정하려면 검토 탭에서 구성을 선택한 다음 구성 섹션의 지침을 따릅니다.

성공적으로 만든 후 Spring용 구성 서버의 프로비저닝 상태가 성공했음을수 있습니다.

리소스 할당

Azure Container Apps에서 관리되는 Config Server에 대한 컨테이너 리소스 할당은 다음 값으로 고정됩니다.

  • CPU: 0.5 vCPU
  • 메모리: 1Gi

Spring용 Config Server의 인스턴스 수를 구성하려면 매개 변수 --min-replicas--max-replicas 동일한 값으로 업데이트해야 합니다. 이 구성은 인스턴스 수가 고정된 상태로 유지되도록 합니다. 현재 시스템은 동적 크기 조정을 위한 자동 크기 조정 구성을 지원하지 않습니다.

구성 서버 구성

Azure Spring Apps 내의 Spring Cloud Config Server에 구성된 기본 Git 리포지토리 및 추가 리포지토리를 Azure Container Apps에 배포된 Spring용 Config Server의 기본 및 기타 리포지토리에 매핑합니다. 다음 표에서는 속성에 대한 매핑 관계를 보여줍니다.

Azure Spring Apps의 속성 이름 CONFIGURATION_KEY CONFIGURATION_VALUE
uri spring.cloud.config.server.git.uri
spring.cloud.config.server.git.repos.{repoName}.uri
uri 원격 리포지토리.
search path spring.cloud.config.server.git.search-paths
spring.cloud.config.server.git.repos.{repoName}.search-paths
로컬 작업 복사본 내에서 사용할 경로를 검색합니다. 기본적으로 루트만 검색합니다.
label spring.cloud.config.server.git.default-label
spring.cloud.config.server.git.repos.{repoName}.default-label
Git에 사용되는 레이블입니다.
name 추가 리포지토리에서 {repoName} 에서 다음 구성을 수행합니다.
Patterns 추가 리포지토리에서 spring.cloud.config.server.git.repos.{repoName}.pattern
username spring.cloud.config.server.git.username
spring.cloud.config.server.git.repos.{repoName}.username
인증 유형이 username 원격 리포지토리 있는 인증을 입력합니다HTTP Basic.
password spring.cloud.config.server.git.password
spring.cloud.config.server.git.repos.{repoName}.password
인증 유형이 password 원격 리포지토리 있는 인증을 입력합니다HTTP Basic.
private key spring.cloud.config.server.git.private-key
spring.cloud.config.server.git.repos.{repoName}.private-key
인증 유형이 .인 경우 유효한 SSH 프라이빗 키입니다 SSH.
host key spring.cloud.config.server.git.host-key
spring.cloud.config.server.git.repos.{repoName}.host-key
인증 유형이 .인 경우 유효한 SSH 호스트 키입니다 SSH. host-key-algorithm이 설정되면 설정해야 합니다.
host key algorithm spring.cloud.config.server.git.host-key-algorithm
spring.cloud.config.server.git.repos.{repoName}.host-key-algorithm
ssh-dss, ssh-rsa, ssh-ed25519, ecdsa-sha2-nistp521ecdsa-sha2-nistp256ecdsa-sha2-nistp384또는 인증 유형 SSH중 하나입니다. host-key도 설정된 경우 설정해야 합니다.

더 많은 구성 서버 속성은 Azure Container Apps에서 관리되는 Spring용 Config Server에 연결의 구성 옵션 섹션을 참조하세요.

Azure Container Apps에 애플리케이션 배포

애플리케이션을 로컬로 테스트한 후 Azure Container Apps 애플리케이션에 새 이미지를 배포할 수 있습니다.

다음 단계를 사용하여 배포합니다.

  1. Azure Portal에서 Azure Container Apps 애플리케이션으로 이동합니다.
  2. 메뉴에서 애플리케이션>컨테이너를 선택합니다.
  3. 편집 및 배포를 선택하여 새 수정 버전 만들기 및 배포 페이지를 엽니다.
  4. 컨테이너 이미지 섹션에서 이미지를 선택한 다음 편집을 선택합니다.
  5. 컨테이너 편집 섹션의 속성 탭에서 애플리케이션의 새 이미지를 선택합니다.
  6. 환경 변수 탭에서 이름에 대해 spring.application.name 지정합니다. 그런 다음 원본의 경우 수동 항목을 선택하고 애플리케이션이 구성을 사용하는 구성 파일 이름을 지정합니다.
  7. 저장을 선택하여 새 수정 버전을 배포합니다.

문제 해결

Log Analytics를 사용하여 Azure Container Apps에서 Spring용 관리되는 구성 서버에 대한 로그를 볼 수 있습니다. 다음 단계를 사용합니다.

  1. Azure Portal에서 Azure Container Apps 환경으로 이동합니다.

  2. 모니터링>로그 메뉴를 선택합니다.

  3. 로그를 보려면 다음 예제와 같이 테이블의 쿼리 편집 ContainerAppSystemLogs_CL 기에 쿼리를 입력합니다.

    ContainerAppSystemLogs_CL
    | where ComponentType_s == "SpringCloudConfig"
    | project Time=TimeGenerated, ComponentName=ComponentName_s, Message=Log_s
    | take 100
    

로그 쿼리에 대한 자세한 내용은 Azure Container Apps에서 관리되는 Java 구성 요소의 관찰 가능성을 참조 하세요.