[DB] Azure Database for MySQL 단일서버 와 유동서버 그리고 AWS RDS 비교

DB
작성자
Roronoa
작성일
2022-05-05 20:09
조회
1516
Azure Database for MySQL 단일서버 유연한 서버 비교

애저에서 Microsoft에서 제공하는 SQL 이 아닌 MySQL을 PaaS로 만든 Azure Database for MySQL이 처음 나온 당시 AWS의 RDS가 목표였으며 매우 공격적으로 기능을 추가 했으며 전체적인 Microsoft의 자사 제품 판매에서 리눅스와 오픈소스 사랑에 대한 부분을 알수 있었으며 2021년에 나온 Flexible Azure Database for MySQL (MySQL 인데 유연한 서버) 라고 불리는 버전을 출시했습니다.

기존에 있는 것을 더 추가 하지 않고 왜 나왔을까? 뭐가 다를까? AWS RDS에서 제공되는 기능들이 추가 된것일까? Aurora에 대한 대항마일까? 매우 궁금했었습니다.

Azure Database for MySQL을 약 4년 이상 사용했으며 AWS RDS 는 매우 오래 사용해왔기 때문에 왜 이렇게 나왔을까에 대한 뇌피셜을 한번 써보겠습니다.

 

4년전 최초 Azure MySQL 쓴글

Microsoft Azure 기술 게시판 | Map The Cloud (syncrofusion.com)

 

Azure Database for MySQL 단일서버 유연한 서버 비교 공식문서

https://docs.microsoft.com/en-us/azure/mysql/single-server/select-right-deployment-type?WT.mc_id=AZ-MVP-5002667

 

우선 비교 공식문서에 있는 엑셀표를 한번 분석 해봅시다.

 

azure그림001

Azure database for MySQL 단일서버와 유연한 서버의 차이점은

 

딱 Microsoft에서 개발하려고 보니깐 윈도우 기반으로 하지 않고 리눅스 기반으로 만들고 싶었습니다. 그런데 기존에 있던 2018년에 출시한 제품에 추가로 제공하고 싶었으나 구조를 변경하기 어려웠을듯 합니다. 왜냐면 2018년도 출시 버전인 단일서버는 윈도우 기반 이었습니다. 그러나 유연한 서버는 리눅스 기반입니다. 사실 MySQL은 윈도우 +MySQL 버전보다 리눅스 + MySQL 버전의 궁합이 좋습니다. 그래서 리눅스 버전으로 나온거입니다.

이번에 보니깐 2021년도에는 AWS에서 자랑하는 Availability Zone 이 이제 Azure에서 도 나왔으니 당연히 디폴트로 Azure에서도 유연한 서버에서도 제공합니다. 자 그러면서 조금 변한것이 단일서버는 AZ를 사용하지 않아도 걍 SLA가 99.99% 제공하나 유연한 서버는 AZ 를 써야지만 99.99%를 제공합니다. 이부분 조금 아쉽습니다.

MySQL 버전도 유연한 서버는 5.7 과 8.0 만 제공합니다.

연결문자열의 사용자 이름은 Master의 접속 아이디를 말하는데 단이러서버는 아이디이름@서버이름 으로 되어 있어서 MySQL workbench나 다양한 MySQL 클라이언트 툴에서 이를 인식하지 못하는 경우가 매우 많았는데 이번엔 깔끔하게 @서버이름 을 안붙여도 되도록 변경되었습니다. 다양한 툴에서 이제 사용이 가능하게 되었습니다.

또한 유연한 서버에서는 버스팅 서버인 B 씨리즈가 드디어 가능하게되었습니다. 이는 AWS 의 RDS와 같은 기능입니다. 조금 늦게 나왔습니다. 

스토리지 크기가 기존에 단일서버는 5GiB ~ 16TiB였는데 유연한 서버는 20GiB~16TiB 로 미니멈이 올라갔습니다. 개인적으로는 이번에 SSD premium SSD Magnatic 을 선택 할수 있는 디스크 타입에 대한 옵션을 원했지만 아직 없으며 IOPS을 조정할수 있는 기능이 유연한 서버에서 처음 생겼지만 최대가 5000 IOPS 라서 AWS의 RDS IOPS 보다 훨씬 낮아서 이부분은 개선 해야 할 부분으로 보입니다. AWS RDS 는 256000 IOPS 가 최대이므로 좀 많이 차이 납니다.

 

azure그림002

비용최적화를 위해서 단일서버는 기존에는 7일간만 서버 중지가 가능했지만 유연한 서버에서는  최대 30일까지 서버 중지가 가능해져서 매우 유연해졌습니다. 

그러나. 아직 유연한 서버는 프라이빗 엑세스만 가능하고 프라이빗 링크는 불가능합니다. 이말은 온프레미스과 하이브리드 구성을 해서 온프레미스에서 프라이빗 아이피를 가지고 유연한 서버로 접근은 가능하지 않다는 점 입니다. 

안타깝게도 AD와 Defender는 아직 유연한 서버에서 지원이 되지 않습니다.

큰 특징은 유지 관리제어가 단일서버는 시스템 관리형이 었는데 유연한 서버에서는 고객이 관리해야 합니다.

azure그림003

이번에는 유연한 서버에서는 영역 중복이 되며 읽기 복제도 10개 가 됩니다. 그러나 GRS 기능이 되지 않습니다.

azure그림004

유연한 서버에서 백업 보전이 1일간도 설정되는 부분은 스토리지측면에서 비용절감의 포인트 입니다. 또한 빠른 복원 시점으로 좀더 빠르게 복구가 가능합니다.

AWS 의 RDS의 장점인 RDS Snapshot의 S3 저장은 왜 이번에 유연한 서버에서 안되는 것인지 의문사항이며 수없이 피드백을 보냈는데 안타깝습니다.

azure그림005

모니터링은 어느정도는 만족스럽지만 AWS CloudWatch 연동보다 매트릭이 적으며 이부분은 개선해야 될 점입니다.

 

결론

여전히 Microsoft에서 MySQL의 PaaS 제품이 이렇게 잘 지원되고 버전업이 되는 모습을 보면 Microsoft의 오픈소스에 대한 사랑은 계속될 듯 합니다. 개인적인 욕망으로는 Microsoft 버전 Aurora를 기대하는 날이 오는 것을 기다리고 있습니다. 점점 더 발전하는 모습을 5년간 지켜보면서 매우 기쁜 마음을 가지고 있습니다. 이번 유연한 서버는 매우 만족스럽습니다.