[VM] Azure B시리즈 와 AWS T시리즈의 비교 Azure B-Series vs AWS T-Series

비교분석
작성자
Roronoa
작성일
2021-09-27 10:43
조회
1617
Azure B시리즈 와 AWS T시리즈의 비교

벤츠의 모델명은 S E C B 이런 시리즈로 모델명을 표현하고 BMW는 1 3 5 7 8 씨리즈로 모델명을 표시합니다. 이런 모델명 시리즈 처럼 Azure 에서는 B-시리즈 가상머신이 있습니다. 

B 라는 단어는 Burstable에서 왔으며 버스팅은 “터질 수 있는” 이라는 뜻입니다. 가상머신이 있는데 마치 오버 클러킹 한 컴퓨터처럼 빵하고 기존의 능력보다 능력치가 높아지는 성능 순간 확장 가능 가상머신 입니다. 쉽게 생각하면 100 마력자리 차를 타고 가다가 갑자기 150마력으로 파워를 쓸 수 있으며 물론 성능이 지속적으로 유지되지는 않습니다. 오버클러킹 처럼 현재 능력치보다 더 많은 능력치를 쓸 수 있으며 이는 비용에 관련되어 있기 때문에 매우 독특하면서 중요한 기능입니다. 지속적으로 CPU성능을 요구하지 않고 순간 동안 성능을 끌어올리는데 최적화 된 가상머신이며 단순 웹 사이트, 마이크로서비스 ,개발서버,테스트서버, 빌드서버, 코드 스토리지, 일정시간만 크론잡을 하는 서버 등과 같은 능력치가 낮은 서버에 사용됩니다. 지속적으로 사용되는 데이터베이스나 많은 트래픽을 처리하는 서버에서는 절대 사용해서는 안됩니다.

azure그림001

위에 그림001을 보면 3가지 명명 규칙을 가지고 있습니다. 

먼저 B1S의 B는  Burstable이라는 B-series를 의미하며 B1S의 1은 vCPU의 숫자를 표현합니다. 마지막으로 B1S의 S 는 SSD Premium Disk를 붙일수 있는지 없는지를 나타내는 표현입니다.

두번째 B1MS 는 B1S와 비슷한데 M이라는 모델명은 Memory를 나타내며 B1S 의 메모리는 1GiB 이며 B1MS는 2GiB 로 항상 2배 많은 메모리를 표현하기 위한 명명 규칙입니다.

세번째는 B1LS 로 가장 늦게 나온 버전이며 L이라는 모델명 의미는 Lowest Cost 이며 모든 B시리즈중에 L이 들어가는 모델은 단 하나뿐입니다. B1LS은 0.5GiB의 Ram을 가지고 있는 유일하게 가장 작은 비용의 가상머신이며 경쟁관계의  AWS의 인스턴스중 가장 낮은 Ram이 0.5GiB 였기 때문에 나온것으로 판단됩니다. 그래서 명명 규칙도 초반에 나온 B-시리즈와 다르게 L이라는 일관성없는 모델이름을 붙인듯 합니다. 명명규칙은 일관성을 가지는것이 좋겠죠? 

사실 Azure 에서 Burstable 가상머신이 나오기전에 Basic Tier 의 A0 A1 A2 A3 A4가  AWS T-시리즈를 대체 하는 CPU 와  Ram을 가진 가상머신이었으나 Burstable 하지 않았기 때문에 순수하게 AWS의 T-시리즈 인스턴스와 비교할수 없었습니다. 

정확하게 비교하자면 나온 순서로 비교하자면 Azure Basic Tier A-시리즈가 AWS T2시리즈와 유사한  CPU 와 Ram으로 비교할수 있었지만 Burstable 기능은 없었습니다. 물론 완전히 같은 기능이 있는 가상머신이나 인스턴스는 없기 때문에 비슷한 스펙으로 분류할수는 있습니다. Azure B-시리즈가 그다음 나오고  AWS-T3-시리즈가 그다음 비슷한 스펙과 기능이라고 할수 있습니다. 그러나 A0와 AWS T2는 기능이 다른 차이가 너무 커서 같은 스펙으로 분류하기 어려워서 Burstable 관점에서 Azure B-시리즈와 AWS T2 T3를 비교하는 것이 정확하다고 생각합니다.

 

azure그림002

가격은 B1ls 가 3년 예약 으로 1626원/월 이므로 테스트 용으로 정말 나쁘지 않은 가격입니다. 윈도우로 는 느려서 추천하지 못하고 리눅스로는 매력적인 가격입니다.

 

azure그림003

그림003 왼쪽 Azure B1ls가 온디멘드일때  $0.0052/시간 AWS t2.nano 가 $0.0058 로 가격이 약간 AWS가 높으며 1년 약정은 Azure B1ls 가 오히려 $0.0031 로 AWS  t2.nano 가 $0.003 이므로 가격이 더 저렴합니다.
azure그림004

 

그림004에서 보면 왼쪽이 AWS T-시리즈로 t2, t3, t3a, t4g 은 Azure 보다 풍부한 시리즈와 다양한 스펙을 가지고 있습니다. t2와 t3는 Azure (2021년) B 시리즈와 비교 가능하며 t3a 는 arm 기반 t4g는 arm 기반 aws EC2 프로세서이며 이는 Azure에서 현재는 지원되지 않습니다.
azure그림005

자 그럼 현재 Azure 존재하지 않는 arm 기반 Burstable 서버를 제외하고 AWS t2와 t3 를 보아도 vCPU와 Memory만 보고 판단할 때는 매우 유사하며 Max vCPU와 Ram 이 20 80이 있는 Azure B20ms이 독특하며 일반적이지 않은 vCPU와 Ram을 제외하면 거의 유사합니다. 또한 MS도 곧 ARM 기반 VM을 추가 할것으로 보입니다.

 

크래딧

Burstable 서버에서 가장 중요한 부분은 CPU 사용률인데 현재 사용중인 컴퓨팅 유닛의 비율이며

AWS 는 코어당 CPU 사용률이 아니고 가상머신 당 CPU 사용률이며 Azure는 코어당 각 CPU의 총합 과 가상머신 당 CPU 사용률을 다써야 풀 성능이 나오므로 서로 다른 기준입니다.

또한 크래딧 적립은 AWS는 밀리초 단위로 획득되며 Azure 는 분당 크래딧 적립이 됩니다.

또한 크레딧은 기준 성능 보다 낮게 유지되어야 크레딧이 올라가며 이 얻은 크레딧으로 모아서 버스팅이 가능합니다.

azure그림006

하나의 큰 차이는 AWS는 이 크레딧을 무제한으로 얻을 수 있는 SKU 가 있으며 이 무제한 모드에 맞는 고객의 상황이라면 매우 만족스러운 결과를 얻을 수 있으며 Azure에서는 아직 이 기능이 없습니다.

 

결론

 

전체적으로 Azure 에서 나 AWS에서  Virtual Machine 이나 Instance 을 선택할때 여러가지 고려사항이 있을수 있습니다. 

그중에 가장 큰 변수는 vCPU 와 Memory 의 차이가 있을 수 있는데 이는 현재 시점에서 변별력이 전혀 없을정도로 두개의 제품들이 비슷하게 선택지가 있습니다.

그러나 그 하부에 있는 변수는 

  1. 크레딧기준

  2. 크레딧 제한 범위(무제한 크레딧)

  3. 최대 vCPU 퍼포먼스

  4. Max Data Disk(최대 데이터 디스크 수)

  5. Max cache (최대 캐쉬)

  6. 네트워크 처리량

  7. 디스크의 IOPS (디스크 처리랑)


 

이렇게 7가지로 볼수 있습니다. 그 중에 어떤 디스크와 어떤 IOPS를 어떻게 조합하고 크레딧의 기준을 어떻게 잘 사용해서 비용을 줄이는 목적에 맞게 사용해야 할지는 유저의 정확한 판단이 필요하며 이 복잡한 변수를 잘 사용하면 최적의 효율을 뽑아 낼 수 있습니다. 또한 Burstable 가상머신에서 크레딧 관리는 가장 킬링 포인트 입니다. 또한 Bursting이 가능한 이 서버들은 절대적으로 용도에 맞지 않게 메인 프론트 서버로 쓰는 것은 잘못된 일이며 용도에 맞게 사용해야 합니다.

클라우드에서 어떤 가상머신이나 인스턴스를 사용하는 지는 비용에 가장 큰 부분이므로 유저는 이부분에 가장 초점을 맞춰야 비용 효율적으로 설계 할 수 있습니다.

 

Azure B 씨리즈 공식 문서

https://docs.microsoft.com/en-us/azure/virtual-machines/sizes-b-series-burstable?WT.mc_id=AZ-MVP-5002667