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로 마이그레이션을 참조 하세요.
이 문서는 기본/표준 ✅ 엔터프라이즈에✅ 적용됩니다.
Azure Spring Apps와 Azure Container Apps는 모두 복잡한 인프라를 관리하지 않고 애플리케이션 실행을 간소화하도록 설계된 Azure의 관리되는 플랫폼입니다. 두 서비스 모두 개발자가 기본 시스템 설정 및 유지 관리에 대해 걱정하지 않고 애플리케이션에 집중할 수 있도록 합니다. 기본적으로 Azure 에코시스템과 통합되므로 모니터링, 보안 및 배포를 위해 Azure Monitor, Key Vault 및 Azure DevOps와 같은 서비스와 쉽게 연결할 수 있습니다.
Azure Spring Apps의 사용 중지로 인해 Azure Spring Apps에서 실행되는 워크로드 마이그레이션을 위한 기본 서비스로 Azure Container Apps를 권장합니다. Azure Container Apps는 컨테이너화된 애플리케이션을 위한 최신의 유연하고 확장 가능한 기반을 제공하여 워크로드가 향후 준비되고 Azure 에코시스템과 원활하게 통합되도록 합니다.
이 문서에서는 Azure Spring Apps에서 Azure Container Apps로 워크로드를 마이그레이션하고 중단을 최소화하며 새 플랫폼의 이점을 최대화하는 데 도움이 되는 자세한 가이드를 제공합니다.
개념 매핑
다음 개념 매핑 표에서는 Azure Spring Apps와 Azure Container Apps 간의 유사점을 강조 표시합니다. Azure Spring Apps의 친숙한 개념이 Azure Container Apps의 동등한 기능으로 변환되는 방식을 이해하는 데 도움이 됩니다.
Azure Spring Apps 서비스 | Azure Container Apps 서비스 |
---|---|
서비스 인스턴스는 앱 및 기타 리소스에 대한 경계를 호스트하고 보호하며 사용자 지정 가상 네트워크를 지원합니다. | 환경은 컨테이너 애플리케이션에 대한 보안 경계를 설정하고 사용자 지정 가상 네트워크를 지원합니다. |
앱은 서비스 인스턴스 내에서 자식 리소스로 사용되는 하나의 비즈니스 앱입니다. | 컨테이너 앱은 관리되는 환경에 연결하는 독립적인 Azure 리소스로 정의된 하나의 비즈니스 앱입니다. |
배포는 앱의 버전입니다. 앱에는 하나의 프로덕션 배포와 하나의 스테이징 배포가 있을 수 있습니다. | 수정 버전은 컨테이너 앱의 각 버전에 대한 변경할 수 없는 스냅샷입니다. 컨테이너 앱에는 하나 이상의 수정 버전이 있을 수 있습니다. |
애플리케이션 인스턴스는 서비스에서 관리하는 최소 런타임 단위입니다. | 컨테이너(복제본) 는 컨테이너 집합 및 최소 런타임 단위입니다. 사이드카 및 init 컨테이너를 포함하여 여러 컨테이너를 함께 구성하여 하나의 컨테이너 앱을 제공할 수 있습니다. |
Azure 역할 기반 액세스 제어 설정
Azure Spring Apps와 Azure Container Apps는 모두 Azure RBAC(역할 기반 액세스 제어) 설정을 지원합니다. 그러나 고유한 리소스 계층 구조 때문에 환경이 다릅니다.
Azure Spring Apps에서 리소스 계층 구조는 서비스 인스턴스를 중심으로 합니다. 역할 할당은 인스턴스에 적용되고 앱 및 배포와 같은 자식 리소스에 자동으로 전파됩니다. 이 디자인은 중앙 집중식 관리를 제공합니다. 그러나 사용자가 서비스 인스턴스가 아닌 특정 앱 또는 배포에 액세스해야 하는 경우 해당 리소스에 대한 특정 권한을 부여해야 합니다.
API 관점에서 Azure Container Apps는 환경 및 컨테이너 앱에 대한 리소스 유형을 동일한 계층 수준에서 별도의 독립 엔터티로 디자인합니다. 관리되는 환경 또는 개별 컨테이너 앱 수준에서 역할을 할당할 수 있습니다. 이 구조를 사용하면 특정 애플리케이션을 정확하게 제어할 수 있습니다. 예를 들어 여러 팀 또는 개인에 대해 서로 다른 컨테이너 앱에 대한 액세스 권한을 부여할 수 있습니다. 이러한 유연성을 통해 공유 환경에서 리소스를 독립적으로 쉽게 관리할 수 있습니다. 또한 다른 Azure 리소스를 관리하는 익숙한 환경과도 잘 맞습니다.
마이그레이션 접근 방식
Azure Spring Apps에서 Azure Container Apps로 마이그레이션하는 방법에는 다음 주요 단계가 포함됩니다.
평가 및 계획: 종속성, 구성 및 네트워크 설정을 포함하여 Azure Spring Apps에서 현재 워크로드를 평가합니다.
애플리케이션 컨테이너화: Azure Container Apps는 JAR 또는 소스 코드에서 배포를 지원하지만, 더 나은 이식성과 효율성을 제공하는 Docker 컨테이너로 애플리케이션을 컨테이너화하는 것이 좋습니다. Azure Container Registry 또는 Docker Hub와 같은 도구를 사용하여 Dockerfile을 만들고 컨테이너 이미지를 빌드하여 애플리케이션을 컨테이너화할 수 있습니다. 빌드팩을 통해 로컬로 컨테이너 이미지를 빌드할 수도 있습니다. 애플리케이션을 컨테이너화하고 Azure Spring Apps에서 실행되는 것과 유사한 컨테이너 이미지를 빌드하는 방법을 알아보려면 컨테이너화 개요를 참조하세요.
Azure Container Apps 환경 설정: Azure Spring Apps의 이전 네트워크 구성과 일치하도록 가상 네트워크, 서브넷 및 필요한 보안 설정을 구성하는 것을 포함하여 Azure Container Apps에서 관리되는 환경을 프로비전합니다. 자세한 내용은 Azure Container Apps 프로비전 또는 사용자 지정 Virtual Network 마이그레이션을 참조하세요.
Azure Container Apps에서 Java 구성 요소 만들기 및 구성: Eureka Server, Config Server, Gateway 및 Managed Admin을 사용하도록 설정하고 구성합니다. 이러한 구성 요소는 Spring 애플리케이션에서 마이크로 서비스 오케스트레이션 및 관리에 필수적입니다. 원활한 전환을 위해 올바르게 구성되었는지 확인합니다.
Enterprise 계획을 사용하는 경우 다음 문서를 참조하세요.
- Tanzu 서비스 레지스트리
- Tanzu 또는 Config Server용 애플리케이션 구성 서비스
- Tanzu용 Spring Cloud Gateway
- 애플리케이션 라이브 보기
- Tanzu용 API 포털
표준 계획을 사용하는 경우 다음 문서를 참조하세요.
컨테이너 배포: 컨테이너화된 애플리케이션을 Azure Container Apps 환경에 배포합니다. 요구 사항에 따라 애플리케이션 수정, 크기 조정 정책 및 네트워킹 구성을 설정합니다. 자세한 내용은 애플리케이션 마이그레이션 개요를 참조 하세요.
모니터: 마이그레이션하는 동안 Azure Monitor를 사용하여 애플리케이션 성능을 지속적으로 모니터링하고 크기 조정 설정 또는 리소스 할당 조정과 같은 최적화를 위해 필요에 따라 구성을 조정합니다. 자세한 내용은 Azure Container Apps의 로그 및 메트릭을 참조 하세요.
테스트 및 유효성 검사: 철저한 테스트를 실행하여 컨테이너화된 애플리케이션이 새 환경에서 예상대로 작동하는지 확인합니다. 네트워크 연결, 크기 조정 및 다른 서비스와의 통합을 확인합니다.
클라이언트 및 자동화 도구: 일상적인 개발 및 운영 작업을 간소화하려면 클라이언트 도구 및 자동화 솔루션을 활용합니다. 이러한 도구에는 Azure CLI, Azure DevOps, GitHub Actions 및 클라이언트 도구 또는 IDE의 확장이 포함됩니다. 이러한 도구는 배포를 자동화하고, 성능을 모니터링하고, 리소스를 효율적으로 관리하여 수동 작업을 줄이고 운영 민첩성을 향상시키는 데 도움이 될 수 있습니다. 인기 있는 도구에 대해 알아보려면 Azure Container Apps용 클라이언트 또는 자동화 도구를 참조 하세요.
자습서
Azure Container Apps에서 ACME Fitness Store 애플리케이션을 실행하는 엔드 투 엔드 환경을 보여 주는 자습서를 제공합니다. 자세한 내용은 acme-fitness-store/azure-container-apps를 참조 하세요. 이 자습서에서는 실습 지침을 제공하여 플랫폼에서 컨테이너화된 애플리케이션을 배포하고 관리하는 데 대한 실질적인 통찰력과 자신감을 빠르게 얻을 수 있습니다.