Azure 가용성 영역(Availability Zone)
Today Keys : 가용성 영역, 가용영역, azure, Availability Zone, 중부, Geography, 지리, cloud, 클라우드, network, 네트워크
지난 21년 10월 5일부터 Azure의 한국 중부 리전에서 가용성 영역(Availability Zone)이 정식 서비스를 시작했습니다.
이번 포스팅에서는 Azure의 가용성 영역과 AWS의 가용 영역과 다른 점에 대해서 살펴보며, 실제 가용성 영역에서 가상 머신을 구성하여 확인해 봅니다.
지난 21년 10월 5일부터 Azure에서도 드디어 한국 중부 리전에 가용성 영역(Availability Zone)이 정식 서비스를 시작했습니다.
기존에는 가용성 영역이 서비스 되는 곳이 제한적이었으나,
올 초에 Azure에서 리전이 오픈된 국가 내에서는 최소 1개 리전에서 가용성 영역을 지원하는 것으로 정책이 변경되었습니다.
기존 리전이 오픈된 국가에서 올 연말까지 가용성 영역을 정식 서비스 예정이어서 조만간 오픈하겠지?
라는 생각으로 기다렸는 데, 10월 5일에 정식 오픈된 걸 딱 일 주일 후에 알게 되어서 조금 늦게 간단하게 정리 해보려고 합니다.
Azure에서는 리전 상위 개념으로 Geography가 존재합니다.
그리고 해당 Geography 내에 리전이 위치하고 있습니다.
아래의 그림은 Azure 지역 및 가용성 영역(Availability Zone)을 설명하는 그림으로, 한국 Geography(지리)도 동일한 구성이 되었습니다.
한국 Geography 내에는 한국 중부 리전(서울)과 한국 남부 리전(부산)이 존재하고 있습니다.
기존에는 한국 중부 리전과 한국 남부 리전이 모두 가용성 영역을 지원하지 않았으나,
이번에 중부 리전이 아래의 그림처럼 3개의 가용성 영역을 지원하게 되었습니다.
아마도 Azure에서 가용성 영역을 기존에 사용하지 않았고, AWS에서만 가용 영역을 사용하거나 알고 계시다면 한 가지 차이점을 알아두셔야 합니다.
오늘 포스팅은 사실 그 차이점에 대한 내용입니다.
Azure와 AWS의 가용 영역에 대한 차이를 보기 쉽도록 구성도를 그리면 아래와 같습니다.
먼저 기존에 알고 계실 AWS의 구성입니다.
하나의 VPC 내에 여러 개의 서브넷이 존재할 수 있고, 각 서브넷은 가용 영역에 종속적이기 때문에 가용 영역별로 서브넷이 분리됩니다.
따라서, 가용 영역 별로 IP 대역이 나뉘게 됩니다.
다음은 Azure의 구성입니다.
하나의 VNET이 존재하고, VNET 내에 Address Space에서 VNET에서 사용할 IP 대역이 선언되어 있습니다.
그리고 Address Space에 속하는 서브넷이 있습니다.
여기서 차이점이 Azure의 가용성 영역이 하나의 서브넷을 사용하고 있다는 것입니다.
즉, 서로 다른 가용성 영역 간의 하나의 서브넷을 사용하기 때문에 동일한 IP 대역을 사용하게 됩니다.
실제 Azure에서 간단하게 저 구성을 만들면서 살펴보겠습니다.
먼저 가상 네트워크를 새로 만듭니다.
VNET에서 사용할 주소 공간(Address Space)를 설정하고, 서브넷을 추가합니다.
서브넷을 추가하려고 보면, 서브넷 이름과 서브넷 주소 범위만 입력하도록 되어 있습니다.
서브넷에 대한 가용성 영역을 지정하는 곳이 없습니다.
Azure에서는 서브넷은 가용성 영역이 아닌 VNET(리전)에 종속적인 서비스이기 때문입니다.
서브넷을 추가하고, 남은 설정을 기본 값으로 두고 전체 설정을 확인 후에 VNET을 생성합니다.
이제 해당 VNET을 이용해서 가상 머신을 만듭니다.
현재 한국 중부 리전에서 가용성 영역을 지원하기 때문에, '가용성 옵션'을 선택하면 가용성 영역이 선택할 수 있게 된 것을 볼 수 있습니다.
'가용성 옵션'에서 가용성 영역을 선택하면, 아래에 가용성 영역을 지정할 수 있습니다.
현재 한국 중부 리전에서는 3개의 가용성 영역이 지원되는 것을 볼 수 있습니다.
첫 번째 VM(ZIGI-AZ-VM1)에서는 1번 가용성 영역을 선택합니다.
가용성 영역 선택 후, 네트워킹 항목을 보면 가상 머신을 만들 VNET(가상 네트워크)와 서브넷을 선택하도록 되어 있습니다.
앞서 만든 ZIGI-Sub1이라는 서브넷을 선택 후, 나머지는 기본 설정으로 두고 VM을 생성합니다.
두 번째 VM(ZIGI-AZ-VM2)는 2번 가용성 영역을 선택해서 생성하겠습니다.
가용성 영역 선택 후, 네트워킹 항목을 보면 앞과 동일하게 VNET(가상 네트워크)와 서브넷을 선택하는 데
서브넷을 가용성 영역과 무관하게 사용하기 때문에 동일하게 ZIGI-Sub1으로 설정 후, VM을 생성합니다.
이제 생성된 VM의 정보를 확인해 보겠습니다.
먼저 ZIGI-AZ-VM1을 보면, 생성 시에 선택한 대로 '1번 가용성 영역'을 사용하고 있으며
ZIGI-VNET-AZ/ZIGI-Sub1에 위치한 것을 볼 수 있습니다.
가상 머신에 할당된 IP 주소는 10.10.0.4 입니다.
다음으로 ZIGI-AZ-VM2을 보면, 생성 시에 선택한 대로 '2번 가용성 영역'을 사용하고 있으며
ZIGI-AZ-VM1과 동일하게 ZIGI-VNET-AZ/ZIGI-Sub1에 위치한 것을 볼 수 있습니다.
가상 머신에 할당된 IP 주소는 10.10.0.5 입니다.
앞에서 설명한 것처럼 Azure의 경우에는 가상 네트워크(VNET) 내의 서브넷이 가용성 영역에 종속적이지 않기 때문에
굳이 서브넷을 분리하지 않고 여러 가용성 영역을 활용하여 인프라 구성이 가능합니다.
따라서, 가용성 영역에 따른 서브넷 설계를 크게 신경 쓰지 않아도 되며 서브넷 분리에 따른 IP 소모를 조금이나마 줄일 수 있습니다.
불과 20여일 전까지 Azure의 한국 리전에서 가용성 영역을 지원하지 않았기 때문에 가용성 영역을 별도로 고려하지 않으셨을 수 있지만,
이제 한국 중부 리전에서 가용성 영역을 지원하기 시작했기 때문에 Azure의 아키텍처 구성 시 가용성 영역을 고려하여 설계를 하면 좋을 것 같습니다.