다음을 통해 공유


Azure Virtual Machines의 안정성

Azure Virtual Machines 는 주문형, 확장 가능한 컴퓨팅 리소스를 제공합니다. 기본 인프라 서비스로서 중요 업무용 워크로드에 엔터프라이즈급 안정성 및 가용성을 제공하도록 설계되었습니다.

Azure를 사용하는 경우 안정성은 공유 책임입니다. Microsoft는 복원력 및 복구를 지원하는 다양한 기능을 제공합니다. 이러한 기능이 사용하는 모든 서비스 내에서 작동하는 방식을 이해하고 비즈니스 목표 및 가동 시간 목표를 충족하는 데 필요한 기능을 선택할 책임이 있습니다.

이 문서에서는 일시적인 오류, 가용성 영역 중단, 지역 중단 및 서비스 유지 관리를 포함하여 다양한 잠재적 중단 및 문제에 대해 Virtual Machines를 복원할 수 있도록 하는 방법을 설명합니다. 또한 백업을 사용하여 다른 유형의 문제에서 복구하는 방법을 설명하고 SLA(Virtual Machines 서비스 수준 계약)에 대한 몇 가지 주요 정보를 강조 표시합니다.

중요합니다

VM(가상 머신)의 안정성을 고려할 때 VM에서 실행되는 디스크, 네트워크 인프라 및 애플리케이션의 안정성도 고려해야 합니다. 다른 구성 요소가 동일하게 복원력이 없는 경우 VM의 복원력만 향상하면 영향을 제한할 수 있습니다. 복원력 요구 사항에 따라 여러 영역에서 구성을 변경해야 할 수 있습니다.

프로덕션 배포 권장 사항

솔루션의 안정성 요구 사항을 지원하기 위해 VM을 배포하는 방법과 안정성이 아키텍처의 다른 측면에 미치는 영향에 대한 자세한 내용은 Azure Well-Architected Framework의 Virtual Machines 및 확장 집합에 대한 아키텍처 모범 사례를 참조하세요.

안정성 아키텍처 개요

VM은 VM을 직접 프로비전하든, 투명하게 프로비전하고 관리하는 다른 Azure 컴퓨팅 서비스를 사용하든 Azure의 기본 컴퓨팅 단위입니다.

개별 VM을 단일 인스턴스 VM이라고도 합니다. 물리적 서버인 특정 호스트에서 실행됩니다. 대부분의 VM은 호스트를 다른 VM과 공유합니다.

VM을 만들 때 기본 인프라 내에서 실행되는 위치에 영향을 줄 수 있습니다. 일반적으로 안정성, 대기 시간 및 격리에 대한 요구 사항에 따라 배치를 결정합니다. Azure는 VM 배치 방식에 영향을 주는 몇 가지 구성 옵션을 제공합니다.

  • 지역: VM이 실행되어야 하는 Azure 지역을 선택할 수 있습니다. 지역은 각각 호스트 수가 많은 여러 데이터 센터를 포함할 수 있는 지리적 영역입니다.

  • 가용성 영역:가용성 영역 은 각 Azure 지역 내에서 물리적으로 별도의 데이터 센터 그룹입니다. 가용성 영역을 지원하는 지역에서는 VM이 실행되는 영역을 선택할 수 있습니다. 자세한 내용은 가용성 영역 오류에 대한 복원력을 참조하세요.

  • 가용성 집합: 가용성 집합은 Azure에서 중복성 및 가용성을 제공하기 위해 애플리케이션을 빌드하는 방법을 이해할 수 있도록 하는 VM의 논리적 그룹화입니다.

    가용성 집합을 사용하는 경우 Azure는 여러 장애 도메인에 VM 그룹을 배포합니다. 이 배포는 공통 전원과 네트워크 스위치를 공유하는 VM을 그룹화하여 지역적인 하드웨어 오류의 위험을 최소화합니다.

    가용성 집합은 Azure 플랫폼이 플랫폼 업데이트를 롤아웃하는 방법을 제어하는 다른 업데이트 도메인에 서로 다른 VM을 배치할 수도 있습니다. 업데이트 도메인을 사용하면 업데이트에 대해 VM의 하위 집합만 한 번에 다시 시작되도록 할 수 있습니다.

  • 근접 배치 그룹: VM 간에 가능한 가장 낮은 대기 시간을 달성해야 하는 워크로드의 경우 근접 배치 그룹을 사용하여 Azure에서 VM을 물리적으로 서로 가깝게 배치할 수 있습니다. 그러나 근접 배치는 데이터 센터의 중단이 그룹의 모든 VM에 영향을 줄 수 있음을 의미합니다. 높은 안정성을 얻으려면 여러 가용성 영역에서 여러 근접 배치 그룹을 프로비전해야 할 수 있습니다.

  • 전용 호스트:Azure Dedicated Host 를 사용하여 엄격한 규정 준수 요구 사항과 같이 하나 이상의 VM을 실행하는 자체 물리적 서버를 프로비전할 수 있습니다. 그러나 전용 호스트를 프로비전하는 경우 데이터 센터의 중단이 해당 호스트의 모든 VM에 영향을 줄 수 있습니다. 높은 안정성을 달성하려면 여러 가용성 영역에서 여러 전용 호스트를 프로비전해야 할 수 있습니다.

유사한 기능을 수행하는 VM 집합을 만드는 경우 Azure Virtual Machine Scale Sets 를 사용하여 VM을 그룹으로 만들고 관리하는 것이 좋습니다. 또한 확장 집합은 여러 가용성 영역에 VM을 분산하는 등 더 많은 안정성 옵션을 제공합니다.

VM의 가용성에 대한 자세한 내용은 Virtual Machines의 가용성 옵션을 참조하세요.

일시적인 오류에 대한 복원력

일시적인 오류는 구성 요소에서 짧고 간헐적인 오류입니다. 클라우드와 같은 분산 환경에서 자주 발생하며 작업의 일반적인 부분입니다. 일시적인 오류는 짧은 시간 후에 스스로 수정됩니다. 애플리케이션은 일반적으로 영향을 받는 요청을 다시 시도하여 일시적인 오류를 처리할 수 있는 것이 중요합니다.

모든 클라우드 호스팅 애플리케이션은 클라우드 호스팅 API, 데이터베이스 및 기타 구성 요소와 통신할 때 Azure 임시 오류 처리 지침을 따라야 합니다. 자세한 내용은 임시 오류 처리를 위한 권장 사항을 참조하세요.

VM에서 실행되는 애플리케이션은 서비스의 일시적인 중단이 워크로드에 영향을 주지 않도록 적절한 오류 처리 전략을 구현해야 합니다.

가용성 영역 오류에 대한 복원력

가용성 영역은 Azure 지역 내에서 물리적으로 별도의 데이터 센터 그룹입니다. 한 영역이 실패하면 서비스가 나머지 영역 중 하나로 장애 조치될 수 있습니다.

개별 VM은 영역 구성으로 배포할 수 있습니다. 즉, 선택한 단일 가용성 영역에 고정됩니다. 그 자체로 영역 VM은 영역 중단에 대한 복원력이 없습니다. 그러나 여러 VM을 만들고 다른 가용성 영역에 배치한 다음, VM 인스턴스에 애플리케이션과 데이터를 분산할 수 있습니다. 또는 가상 머신 확장 집합 을 사용하여 여러 가용성 영역에 VM 집합을 배포할 수 있습니다.

영역성을 부여하지 않으면 VM은 비영역성 또는 지역성으로 간주됩니다. 영역이 아닌 VM은 지역 내의 가용성 영역에 배치될 수 있습니다. 지역의 가용성 영역에 중단이 발생하는 경우 비존 VM이 영향을 받는 영역에 있을 수 있으며 가동 중지 시간이 발생할 수 있습니다.

지역 지원

영역 VM은 가용성 영역을 지원하는 모든 지역에 배포할 수 있습니다.

그러나 일부 VM 유형 및 크기는 특정 지역 또는 지역 내의 특정 영역에서만 사용할 수 있습니다. 필요한 VM 유형을 지원하는 지역 및 영역을 확인하려면 다음 리소스를 사용합니다.

비용

영역 VM과 비존 VM 간에는 비용 차이가 없습니다.

가용성 영역 지원 구성

이 섹션에서는 VM 인스턴스에 대한 가용성 영역 지원을 구성하는 방법을 설명합니다.

비고

사용할 가용성 영역을 선택하면 실제로 논리적 가용성 영역을 선택합니다. 다른 Azure 구독에 다른 워크로드 구성 요소를 배포하는 경우 다른 논리 가용성 영역 번호를 사용하여 동일한 물리적 가용성 영역에 액세스할 수 있습니다. 자세한 내용은 물리적 및 논리적 가용성 영역을 참조하세요.

모든 영역이 정상인 경우의 동작

이 섹션에서는 가용성 영역 지원을 사용하여 VM 인스턴스를 구성하고 모든 가용성 영역이 작동할 때 예상되는 사항에 대해 설명합니다.

  • 영역 간의 트래픽 라우팅: 서로 다른 가용성 영역에 있는 VM을 포함하여 VM 간의 트래픽 라우팅을 담당합니다. 일반적인 방법은 Azure Load Balancer 및 Azure Application Gateway입니다. 자세한 내용은 부하 분산 옵션을 참조하세요.

  • 영역 간 데이터 복제: 여러 가용성 영역의 VM을 포함하여 VM 간에 발생해야 하는 모든 데이터 복제를 담당합니다. VM에서 실행되는 데이터베이스 및 기타 유사한 상태 저장 애플리케이션은 종종 데이터를 복제하는 기능을 제공합니다.

영역 오류 중 동작

이 섹션에서는 가용성 영역 지원을 사용하여 VM 인스턴스를 구성하고 가용성 영역에 중단이 발생할 때 예상되는 사항에 대해 설명합니다.

  • 검색 및 응답: VM에 영향을 주는 영역 오류를 감지하고 대응해야 합니다.

  • 통지:Azure Resource Health 를 사용하여 영역 오류를 감지하고 장애 조치(failover) 프로세스를 트리거합니다.

  • 활성 요청: 영역 오류 중에 VM에서 발생하는 활성 요청 또는 기타 작업은 종료될 가능성이 높습니다.

  • 예상 데이터 손실: 영역 오류 중에 영역 VM 디스크를 사용할 수 없을 수 있습니다.

    ZRS(영역 중복 스토리지) 디스크를 사용하고 중단이 VM에 영향을 주는 경우 실패한 VM에서 ZRS 디스크를 강제로 분리 할 수 있습니다. 이 방법을 사용하면 ZRS 디스크를 다른 VM에 연결할 수 있습니다.

  • 예상 가동 중지 시간: 가용성 영역이 복구될 때까지 VM은 다운된 상태로 유지됩니다.

  • 트래픽 경로 변경: 정상 영역의 다른 VM으로 트래픽을 다시 라우팅할 책임이 있습니다.

    영역 복원력 부하 분산 장치를 구성하고 상태 검사를 수행하는 경우 부하 분산 장치는 일반적으로 실패한 VM을 검색하고 정상 영역의 다른 VM 인스턴스로 트래픽을 라우팅할 수 있습니다.

영역 복구

영역이 정상이 되면, 해당 영역 내의 VM이 다시 시작됩니다. 워크로드에 필요한 영역 복구 절차 및 데이터 동기화를 담당합니다.

영역 오류 테스트

Azure Chaos Studio를 사용하여 실험의 일부로 VM 손실을 시뮬레이션할 수 있습니다. Chaos Studio는 VM을 종료하는 기능을 포함하여 VM에 대한 기본 제공 오류를 제공합니다. 이러한 기능을 사용하여 영역 수준 오류를 시뮬레이션하고 장애 조치 프로세스를 테스트할 수 있습니다.

복원력을 위한 사용자 지정 다중 영역 솔루션

여러 VM을 다른 영역에 배포하는 경우 복제, 부하 분산, 장애 조치(failover) 및 장애 복구 프로세스를 구성하고 관리해야 합니다.

일부 애플리케이션은 여러 VM에 배포할 때 도움이 될 수 있는 기본 제공 기능을 제공합니다. 예를 들어 Azure VM의 SQL Server 는 가용성 영역에서 구성 및 관리 프로세스를 간소화하는 기능 집합을 제공합니다.

애플리케이션이 한 번에 단일 영역에서 실행되고 영역 간에 거의 즉각적인 장애 조치(failover)가 필요하지 않은 경우 Azure Site Recovery DR(영역 간 재해 복구) 을 사용하는 것이 좋습니다. 영역 대 영역 DR에는 몇 가지 중요한 제한 사항이 있으므로 요구 사항을 철저히 검토하세요.

지역 전체 오류에 대한 복원력

VM은 단일 지역 리소스입니다. 지역을 사용할 수 없게 되면 VM도 사용할 수 없습니다.

복원력을 위한 사용자 지정 다중 지역 솔루션

여러 VM을 다른 지역에 배포할 수 있지만 복제, 부하 분산 및 장애 조치 프로세스를 구현해야 합니다.

Site Recovery는 VM 및 해당 데이터를 보조 지역에 복제하여 DR을 사용하도록 설정하는 서비스입니다. 비쌍 지역 조합을 포함하여 거의 모든 Azure 지역을 보조 지역으로 선택할 수 있습니다. 자세한 내용은 Azure-Azure DR 아키텍처를 참조하세요.

일부 애플리케이션은 다른 지역을 포함하여 여러 VM에 데이터를 복제하고 작업을 분산하는 클러스터 또는 기타 구문을 만듭니다. 이러한 애플리케이션은 다중 지역 솔루션의 구성을 간소화할 수 있습니다.

여러 지역에서 VM을 사용하는 방법을 보여 주는 예제 아키텍처는 Azure Traffic Manager, Azure Firewall 및 Application Gateway를 사용한 다중 지역 부하 분산을 참조하세요.

서비스 유지 관리에 대한 복원력

Azure는 VM에서 정기적으로 유지 관리를 수행하여 안정성을 보장합니다. 유지 관리 작업 중에 워크로드가 계속 작동하도록 할 수 있는 여러 가지 방법이 있습니다.

  • 가용성 집합 또는 가상 머신 확장 집합을 사용하는 경우 업데이트 도메인을 구성할 수 있습니다. 업데이트 도메인은 다른 시간에 여러 VM에 유지 관리 작업을 분산하는 데 도움이 되므로 VM이 동시에 다시 시작되지는 않습니다.

  • 유지 관리 제어를 사용하여 VM에 유지 관리가 적용되는 타이밍을 사용자 지정할 수 있습니다. 유지 관리 구성을 사용하여 워크로드에 적합한 시간에 예약할 수 있습니다.

  • 예정된 유지 관리 활동에 대한 알림을 받을 수 있습니다.

자세한 내용은 게스트 업데이트 및 호스트 유지 관리 개요를 참조하세요.

백업 및 복원

Virtual Machines는 기본적으로 Azure Backup을 통한 백업을 지원합니다. Azure Backup은 연결된 모든 디스크를 포함하여 전체 VM에 대한 애플리케이션 일치 보호를 통해 백업을 만들고 관리하여 Virtual Machines를 보호하기 위한 네이티브 솔루션을 제공합니다. 이 방법은 여러 디스크 또는 애플리케이션 인식 백업의 조정된 백업이 필요한 경우에 이상적입니다. 데이터베이스 워크로드의 경우 트랜잭션 일치 보호 및 더 빠른 복구 옵션을 제공하는 애플리케이션별 백업 솔루션을 고려합니다.

필요에 맞게 백업 빈도, 보존 기간 및 스토리지 구성을 사용자 지정할 수 있습니다. 자세한 내용은 VM용 Azure Backup을 참조하세요.

Backup은 VM에 연결된 디스크도 지원합니다. 자세한 내용은 Azure Disk Backup 개요를 참조하세요.

서비스 수준 약정

Azure 서비스의 SLA(서비스 수준 계약)는 각 서비스의 예상 가용성과 해당 가용성 예상 결과치를 달성하기 위해 솔루션이 충족해야 하는 조건을 설명합니다. 자세한 내용은 온라인 서비스 SLA를 참조하세요.

Virtual Machines의 경우 SLA는 기본 수준의 가용성을 제공합니다. 두 개 이상의 VM이 있고 다음 작업을 수행할 때 SLA에 정의된 가동 시간 비율이 증가합니다.

  • 둘 이상의 가용성 영역에 배포되도록 해당 VM을 구성합니다.
  • 가용성 집합에 배포되도록 해당 VM을 구성합니다.

자세한 내용은 온라인 서비스 SLA를 참조하세요.

다음 단계