다음을 통해 공유


Azure 컴퓨팅 서비스 선택

Azure는 애플리케이션 코드를 호스트하는 여러 가지 방법을 제공합니다. 컴퓨팅이라는 용어는 애플리케이션이 실행되는 리소스에 대한 호스팅 모델을 나타냅니다. 이 문서는 애플리케이션에 대한 컴퓨팅 서비스를 선택하는 데 도움이 됩니다.

아키텍처

다음 순서도를 사용하여 후보 컴퓨팅 서비스를 선택합니다.

Azure 컴퓨팅 서비스에 대한 의사 결정 트리를 보여 주는 다이어그램

이미지는 사용자가 기존 워크로드를 마이그레이션하는지 또는 새 워크로드를 빌드하는지에 따라 적절한 Azure 서비스를 선택하기 위한 순서도를 보여줍니다. 순서도는 시작 노드로 시작하고 Migrate 및 Build new라는 레이블이 지정된 두 개의 기본 분기로 분할됩니다. Migrate 분기에는 애플리케이션이 클라우드에 최적화되어 있는지 여부와 애플리케이션을 해제하고 이동할 수 있는지 여부를 평가하는 의사 결정 지점이 포함되어 있습니다. 답변에 따라 흐름은 Azure App Service, Azure VMware Solution 또는 Virtual Machines와 같은 서비스로 이어집니다. 새 분기 빌드에는 모든 제어, 고성능 컴퓨팅, 이벤트 기반 워크로드, 관리되는 웹 호스팅 및 오케스트레이션 요구 사항의 필요성을 평가하는 의사 결정 지점이 포함되어 있습니다. 이러한 결정은 Virtual Machines, Azure Batch, Azure Functions, App Service, Azure Container Instances, Azure Service Fabric, Azure Red Hat OpenShift, Azure Kubernetes Service 또는 Azure Container Apps와 같은 서비스로 사용자를 안내합니다. Virtual Machines의 자체 오케스트레이션 구현에 대한 분기 섹션에는 Virtual Machines의 VMware Tanzu, Virtual Machines의 Kubernetes 및 Virtual Machines의 OpenShift가 포함됩니다. 이미지 아래쪽에 두 개의 상자가 있는 섹션에는 컨테이너 전용 서비스와 컨테이너 호환 서비스가 나열됩니다. 컨테이너 전용 섹션에는 Azure Container Instances, Azure Red Hat OpenShift, Virtual Machines의 Kubernetes, Virtual Machines의 OpenShift 및 Virtual Machines의 VMware Tanzu가 포함됩니다. 컨테이너 호환 섹션에는 Azure Batch, Azure Functions, Service Fabric 및 App Service가 포함됩니다.

이 아키텍처의 Visio 파일을 다운로드합니다.

이전 다이어그램은 다음 두 가지 마이그레이션 전략을 참조합니다.

  • 리프트 앤 시프트: 애플리케이션을 다시 디자인하거나 코드를 변경하지 않고 워크로드를 클라우드로 마이그레이션하기 위한 전략입니다. 다시 호스팅이라고도 합니다. 자세한 내용은 Azure 클라우드 마이그레이션 및 현대화 센터를 참조하세요.

  • 클라우드 최적화: 클라우드 네이티브 기능 및 기능을 활용하도록 애플리케이션을 리팩터링하여 클라우드로 마이그레이션하기 위한 전략입니다.

이 순서도의 출력이 시작점입니다. 다음으로 서비스를 평가하여 요구 사항을 충족하는지 확인합니다.

이 문서에는 서비스를 선택하는 데 도움이 되는 몇 가지 테이블이 포함되어 있습니다. 순서도의 초기 후보는 애플리케이션 또는 워크로드에 적합하지 않을 수 있습니다. 이 경우 분석을 확장하여 다른 컴퓨팅 서비스를 포함합니다.

애플리케이션이 여러 워크로드로 구성된 경우 각 워크로드를 개별적으로 평가합니다. 전체 솔루션은 둘 이상의 컴퓨팅 서비스를 통합할 수 있습니다.

기본 기능 이해

이전 섹션에서 선택한 Azure 서비스에 익숙하지 않은 경우 다음 개요 설명서를 참조하세요.

  • Azure App Service 는 웹앱, 모바일 앱 백 엔드, RESTful API 또는 자동화된 비즈니스 프로세스를 호스팅하기 위한 관리 서비스입니다.

  • Azure Batch 는 대규모 병렬 및 HPC(고성능 컴퓨팅) 애플리케이션을 실행하기 위한 관리되는 서비스입니다.

  • Azure Container Apps 는 Kubernetes를 기반으로 하는 관리형 서비스로, 서버리스 환경에서 컨테이너화된 애플리케이션의 배포를 간소화합니다.

  • Azure Container Instances는 Azure 에서 단일 컨테이너 또는 컨테이너 그룹을 실행하기 위한 서비스입니다. Container Instances는 전체 컨테이너 오케스트레이션을 제공하지 않지만 VM(가상 머신)을 프로비전하거나 상위 수준 서비스를 채택하지 않고도 컨테이너를 구현할 수 있습니다.

  • Azure Functions 는 이벤트 기반 애플리케이션에 대한 다양한 트리거 유형에 따라 실행되는 관리되는 함수를 제공하는 서비스입니다.

  • AKS(Azure Kubernetes Service) 는 컨테이너화된 애플리케이션을 실행하기 위한 관리되는 Kubernetes 서비스입니다.

  • Azure Red Hat OpenShift 는 Kubernetes를 사용하여 프로덕션 환경에서 컨테이너를 실행하기 위한 완전 관리형 OpenShift 클러스터입니다.

  • Azure Service Fabric은 Azure 또는 온-프레미스를 비롯한 많은 환경에서 실행할 수 있는 분산 시스템 플랫폼입니다.

  • Azure VMware Solution은 Azure 에서 기본적으로 VMware 워크로드를 실행하기 위한 관리되는 서비스입니다.

  • Azure Virtual Machines는 Azure 가상 네트워크 내에서 VM을 배포하고 관리하는 서비스입니다.

호스팅 모델 이해

호스팅 모델의 경우 클라우드 서비스는 다음 세 가지 범주로 분류됩니다.

  • IaaS(Infrastructure as a Service) 를 사용하면 연결된 네트워킹 및 스토리지 구성 요소와 함께 VM을 프로비전할 수 있습니다. 그런 다음 해당 VM에 소프트웨어 및 애플리케이션을 배포할 수 있습니다. 이 모델은 기존 온-프레미스 환경에 가장 가깝습니다. Microsoft는 인프라를 관리하고 VM을 관리합니다.

  • PaaS(Platform as a Service) 는 VM 또는 네트워킹 리소스를 관리할 필요 없이 애플리케이션을 배포할 수 있는 관리되는 호스팅 환경을 제공합니다. App Service 및 Container Apps는 PaaS 서비스입니다.

  • FaaS(Functions as a Service) 를 사용하면 코드를 서비스에 배포하여 자동으로 실행할 수 있습니다. Azure Functions는 FaaS 서비스입니다.

    비고

    Azure Functions는 Azure 서버리스 컴퓨팅 제품입니다. 이 서비스가 서버리스 워크플로용 Azure Logic Apps와 같은 다른 Azure 서버리스 제품과 어떻게 비교되는지 확인하려면 Azure에서 올바른 통합 및 자동화 서비스 선택을 참조하세요.

IaaS에서 완전히 관리되는 PaaS에 이르기까지 다양한 스펙트럼이 있습니다. 예를 들어 Azure VM은 가상 머신 확장 집합을 사용하여 자동으로 크기를 조정할 수 있습니다. 이 기능은 엄격하게 PaaS는 아니지만 PaaS의 관리 기능과 유사합니다.

제어와 관리의 용이성 사이에는 절판이 있습니다. IaaS는 가장 제어, 유연성 및 이식성을 제공합니다. 그러나 만든 VM 및 네트워크 구성 요소를 프로비전, 구성 및 관리해야 합니다. FaaS 서비스는 애플리케이션 실행의 거의 모든 측면을 자동으로 관리합니다. PaaS는 일부 사용자 구성을 요구하면서 부분 관리를 제공합니다.

서비스 애플리케이션 컴퍼지션 밀도 최소 노드 수 상태 관리 웹 호스팅
Virtual Machines 불가 지론 불가 지론 1 2 상태 비지정 또는 상태 저장 불가 지론
App Service 애플리케이션, 컨테이너 App Service 계획을 사용하여 각 인스턴스에 대한 여러 앱 1 상태 비저장 Built-in
Azure Functions 함수, 컨테이너 서버리스 1 서버리스 1 상태 비지정 또는 상태 저장 6 해당 없음
AKS Containers 각 노드에 대한 여러 컨테이너 3 3 상태 비지정 또는 상태 저장 불가 지론
Container Apps Containers Serverless Serverless 상태 비지정 또는 상태 저장 불가 지론
Container Instances Containers 전용 인스턴스 없음 전용 노드 없음 상태 비저장 불가 지론
Azure Red Hat OpenShift Containers 각 노드에 대한 여러 컨테이너 6 5 상태 비지정 또는 상태 저장 불가 지론
Service Fabric 서비스, 게스트 실행 파일, 컨테이너 각 VM에 대한 여러 서비스 5 3 상태 비지정 또는 상태 저장 불가 지론
묶음 예약된 작업 각 VM에 대한 여러 앱 1 4 상태 비저장 아니오
Azure VMware 솔루션 불가 지론 불가 지론 3 7 상태 비지정 또는 상태 저장 불가 지론

참고:

1Azure Functions의 경우 소비 계획은 서버리스입니다. App Service 계획의 경우 함수는 해당 계획에 할당된 VM에서 실행됩니다. Azure Functions에 대한 올바른 서비스 계획을 선택합니다.

2둘 이상의 인스턴스가 있는 더 높은 SLA(서비스 수준 계약)입니다.

3프로덕션 환경에 권장됩니다.

4작업이 완료된 후 0으로 축소할 수 있습니다.

5개의 주 노드 3개와 작업자 노드 3개.

6지속성 함수를 사용하는 경우

7호스트를 참조하세요.

Networking

서비스 가상 네트워크 통합 하이브리드 연결
Virtual Machines 지원됨 지원됨
App Service 지원되는 1 지원되는 2
Azure Functions 지원되는 1 지원되는 3
AKS Supported 지원됨
Container Apps 지원됨 지원됨
Container Instances Supported Supported
Azure Red Hat OpenShift Supported 지원됨
Service Fabric 지원됨 지원됨
묶음 지원됨 지원됨
Azure VMware 솔루션 Supported Supported

참고:

1App Service Environment 또는 전용 컴퓨팅 가격 책정 계층이 필요합니다.

2App Service 하이브리드 연결을 사용합니다.

3App Service 계획 또는 Azure Functions Premium 계획이 필요합니다.

DevOps

서비스 로컬 디버깅 프로그래밍 모델 애플리케이션 업데이트
Virtual Machines 불가 지론 불가 지론 기본 제공 지원 없음
App Service IIS Express, 기타 1 웹 및 API 애플리케이션, 백그라운드 작업을 위한 WebJobs 배포 슬롯
Azure Functions Visual Studio 또는 Azure Functions CLI 서버리스, 이벤트 기반 배포 슬롯
AKS Minikube, Docker, 기타 불가 지론 롤링 업데이트
Container Apps 로컬 컨테이너 런타임 불가 지론 수정 버전 관리
Container Instances 로컬 컨테이너 런타임 불가 지론 해당 없음
Azure Red Hat OpenShift Minikube, Docker, 기타 불가 지론 롤링 업데이트
Service Fabric 로컬 노드 클러스터 게스트 실행 파일, 서비스 모델, 행위자 모델, 컨테이너 각 서비스에 대한 롤링 업그레이드
묶음 지원되지 않음 명령줄 애플리케이션 해당 없음
Azure VMware 솔루션 불가 지론 불가 지론 기본 제공 지원 없음

Note:

1옵션에는 ASP.NET 또는 node.js(iisnode), PHP 웹 서버, IntelliJ용 Azure 도구 키트 및 Eclipse용 Azure 도구 키트에 대한 IIS Express가 포함됩니다. App Service는 배포된 웹앱의 원격 디버깅도 지원합니다.

확장성

서비스 Autoscaling 부하 분산 장치 확장 제한3
Virtual Machines 가상 머신 크기 집합 Azure 부하 분산기 플랫폼 이미지: 각 확장 집합에 대해 1,000개의 노드. 사용자 지정 이미지: 각 확장 집합에 대해 600개 노드
App Service 기본 제공 서비스 통합 30개 인스턴스, App Service Environment가 있는 100개
Azure Functions 기본 제공 서비스 통합 각 함수 앱에 대한 인스턴스 200개
AKS Pod 자동 크기 조정1, 클러스터 자동 크기 조정2 Load Balancer 또는 Azure Application Gateway 가동 시간 SLA를 사용하는 경우 노드 5,000개
Container Apps 크기 조정 규칙4 통합 각 지역에 대한 15개 환경(기본 제한), 각 컨테이너 앱의 각 환경 및 복제본에 대한 무제한 컨테이너 앱(사용 가능한 코어에 따라 다름)
Container Instances 지원되지 않음 기본 제공 지원 없음 각 구독에 대해 100개의 컨테이너 그룹(기본 제한)
Azure Red Hat OpenShift Pod 자동 크기 조정, 클러스터 자동 크기 조정 Load Balancer 또는 Application Gateway 각 클러스터에 대해 250개 노드(기본 제한)
Service Fabric 가상 머신 크기 집합 부하 분산기 각 가상 머신 확장 집합에 대한 100개 노드
묶음 해당 없음 부하 분산기 900 전용 및 100 낮은 우선 순위의 코어 제한(기본 제한)
Azure VMware 솔루션 기본 제공 서비스5 통합6 VMware vCenter당 3~16개의 VMware ESXi 호스트

참고:

1자동 크기 조정 Pod를 참조하세요.

2AKS의 애플리케이션 요구에 맞게 클러스터 자동 크기 조정을 참조하세요.

3Azure 구독 및 서비스 제한, 할당량 및 제약 조건 참조

4Container Apps에서 크기 조정 규칙 설정 참조

5Azure VMware 솔루션 크기 조정 참조

6VMware NSX 참조

Availability

서비스 다중region 장애 조치(failover) 옵션
Virtual Machines Azure Traffic Manager, Azure Front Door 및 지역 간 Load Balancer
App Service Traffic Manager 및 Azure Front Door
Azure Functions Traffic Manager 및 Azure Front Door
AKS Traffic Manager, Azure Front Door 및 다중Region 클러스터
Container Apps Traffic Manager 및 Azure Front Door
Container Instances Traffic Manager 및 Azure Front Door
Azure Red Hat OpenShift Traffic Manager 및 Azure Front Door
Service Fabric Traffic Manager, Azure Front Door 및 지역 간 Load Balancer
묶음 해당 없음
Azure VMware 솔루션 해당 없음

서비스 보장에 대한 안내 학습은 Azure 아키텍처 및 서비스 보장을 참조하세요.

Security

다음 각 서비스에 대해 사용 가능한 보안 제어 및 가시성을 검토하고 이해합니다.

기타 조건

서비스 TLS 비용 적합한 아키텍처 스타일
Virtual Machines VM에 구성됨 Windows, Linux N 계층, 큰 컴퓨팅 (HPC)
App Service 지원됨 App Service 가격 책정 Web-queue-worker
Azure Functions 지원됨 Azure Functions 가격 책정 마이크로 서비스, 이벤트 기반 아키텍처
AKS 수신 컨트롤러 AKS 가격 책정 마이크로 서비스, 이벤트 기반 아키텍처
Container Apps 수신 컨트롤러 Container Apps 가격 책정 마이크로 서비스, 이벤트 기반 아키텍처
Container Instances 사이드카 컨테이너 사용 Container Instances 가격 책정 마이크로 서비스, 태스크 자동화, 일괄 처리 작업
Azure Red Hat OpenShift 지원됨 Azure Red Hat OpenShift 가격 책정 마이크로 서비스, 이벤트 기반 아키텍처
Service Fabric 지원됨 Service Fabric 가격 책정 마이크로 서비스, 이벤트 기반 아키텍처
묶음 지원됨 일괄 처리 가격 책정 빅 컴퓨팅 (HPC)
Azure VMware 솔루션 VM에 구성됨 Azure VMware Solution 가격 책정 VMware 형식을 기반으로 하는 VM 워크로드

제한 및 비용 고려

이전 비교 테이블과 함께 후보 서비스의 다음 측면을 보다 자세히 평가합니다.

기여자

Microsoft는 이 문서를 유지 관리합니다. 다음 기여자는 이 문서를 작성했습니다.

LinkedIn 비공개 프로필을 보려면, LinkedIn에 로그인하세요.

다음 단계