3. Azure Managed Disk Type 별 특징과 Managed vs Unmanaged Disk의 차이점
1. 표준 HDD
- 대기 시간 허용 워크로드를 실행하는 VM에 대해 안정적이고 저렴한 디스크 지원을 제공한다.
- 표준 스토리지를 사용하면 데이터가 HDD에 저장된다.
- 대부분의 IO작업에 대해 10ms/20ms 미만의 대기시간을 제공한다. 이는 I/O 크기 및 워크로드 패턴에 따라 다를 수 있다.
- 주로 개발/테스트 시나리오 및 비교적 중요치 않은 워크로드에 사용한다.
- 표준 HDD는 모든 Azure지역, VM에서 사용가능하다.
- 512E 섹터크기를 지원한다. 이는 4Kn 섹터 크기를 지원하지 않는다는것을 의미한다.
512E는 4KB 물리적 섹터 크기를 512바이트로 에뮬레이션하는 방식이고, 4Kn은 4KB 물리적 섹터 크기를 네이티브(4KB)로 사용하는 방식이다. 따라서 두 방식은 서로 다른 물리적 섹터 크기를 사용하기에 공존 불가능하다.
- 표준 HDD의 경우 각 I/O 작업은 I/O 크기에 관계없이 단일 트랜잭션으로 간주된다. 이러한 트랜잭션은 청구에 영향을 미친다.
- 따라서 큰 규모의 I/O 작업이 적은 빈도로 발생하는 워크로드에 배치하는것이 비용 효율적이다.
ex) 백업, 아카이빙 - 작은 I/O 작업이 빈번하게 발생하는 워크로드에는 적합하지 않다.
ex) DB, VDI(여러 사용자가 동시에 작은 파일을 읽고 쓰는 작업을 수행), 로그 파일 처리, 캐싱 서버
2. 표준 SSD
- 온프레미스 HDD 솔루션을 사용하는 고객에게 적절하다.
- 낮은 IOPS 수준에서 일관된 성능이 필요한 워크로드에 최적화 되었다.
- HDD에 비해 I/O속도가 빠르고, 신뢰성이 높으며, 프리미엄 SSD나 울트라 디스크에 비해 비용이 저렴하다.
- 웹 서버, 낮은 IOPS 애플리케이션 서버, 사용량이 적은 엔터프라이즈 애플리케이션 및 비프로덕션 워크로드에 적합하다.
- 모든 Azure VM에서 사용 가능하다.
- 256kB 미만의 처리량에 해당하는 각 I/O 작업은 단일 I/O 작업으로 간주한다.
- 예측 불가능한 IO 패턴 변경에 더 나은 내성을 제공하는 디스크 버스팅을 제공한다.
2-1. 표준 HDD의 용도에 관해
표준 HDD를 표준 SSD와 비교해 보았을때 주요 차이점은 아래와 같다.
- 표준 HDD가 표준 SSD보다 트랜잭션당 가격이 저렴하다.
- 표준 HHD보다 표준 SSD가 가용성, 지연시간, I/O 작업 및 처리량 측면에서 우월하다.
- 표준 HDD는 청구 가능한 트랜잭션에 대한 제한이 없다.
위의 두 차이점을 고려했을 때, 고가용성 및 고성능의 디스크가 필요 없는 고객은 트랜잭션당 가격이 저렴한 표준 HDD를 고려 할수도 있다. 그러나 세번째 차이점인 '청구 가능한 트랙잭션에 대한 제한이 없다.'는 점이 이러한 선택을 곤란하게 만든다.
표준 SSD(E4 디스크라고 가정)에서 초당 100개의 트랜잭션이 하루 종일 발생했다면 그 날 청구 가능한 트랜잭션은 360,000건이다. (360,000 * 0.072의 가격이 책정되고 이를 월간 가격으로 환산하면 0.072 * 730시간 = $52.56의 가격이 책정된다.
그러나 표준 SSD에는 청구 가능한 트랜잭션에 대한 제한이 존재한다.
E4 디스크의 경우 시간당 청구 가능 트랜잭션 한도가 시간당 43,400개 트랜잭션이다. 초당 100개의 트랜잭션이 발생할 때, (43,400 * 0.0087의 가격이 책정되고 이를 월간 가격으로 환산하면 0.0087 * 730시간 = $6.33의 가격이 책정된다.
그렇다면 표준 HDD는 어떨까?
초당 100개의 트랜잭션이 발생할 때, (360,000 * 0.018의 가격이 책정되고 이를 월간 가격으로 환산하면 0.018 * 730시간 = $13.14의 가격이 책정된다. 이는 동일한 용량의 표준 SSD 디스크에서 발생하는 트랜잭션 청구액의 두배이다.
표준 HDD는 표준 SSD와 비교 해보면
(1) 더 낮은 SLA
(2) 2배 많은 지연 시간
(3) I/O 작업 및 처리량에서의 더 낮은 일관성
(4) 청구가능 트랜잭션의 한도가 없어 예상치 못한 비용 청구의 가능성
거의 전적으로 표준 HDD를 쓸 이유가 없어보인다.
따라서, 표준 HDD는 거대한 규모의 파일을 단순히 저장만 해놓는 창고같은 용도로 사용하는것이 적절해 보인다.
3. 프리미엄 SSD
- 표준 SSD보다 성능이 뛰어나다.
- 중요 업무용 프로덕션 애플리케이션에 적합하다.
- 호환되는 VM 시리즈에서만 사용가능하다.
4. 프리미엄 SSD v2
- 4Kn을 지원한다. (표준 HDD, 표준 SSD, 프리미엄 SSD는 512E를 지원한다.)
- 프리미엄 SSD와 달리 전용 크기가 없다.
- 기존의 프리미엄 SSD는 디스크의 크기에 따라 성능이 고정되지만, v2는 디스크 크기와 성능을 별도로 설정할 수 있다.
ex) 작은 크기의 디스크에서도 높은 IOPS와 처리량을 설정 가능하다. - 디스크의 성능은 24시간 내에 4번까지 조정 가능하다. (처음 24시간 동안은 3번)
- 용량은 1GiB ~ 64TiB (1GiB 단위)로 설정 가능하다.
- 가격은 1GiB 단위로 청구된다.
- 구독당 지역당 최대 100TiB를 지원한다. 요청시 더 높은 용량을 지원한다.
- 호스트 캐싱을 지원하지 않는다.
- 제한사항이 많다.
4-1. 제한사항
- '프리미엄 스토리지 지원 VM'이 사용 가능하다.
- OS디스크로 사용 불가하다.
- Azure Compute Gallery에서 사용 불가하다.
- VM 또는 VMSS를 특정 가용성 영역에 배치해야 사용 가능하다. (해당 영역에 있는 VM에만 연결 가능) (가용성 '집합'의 VM에는 연결할 수 없음)
- 프리미엄 SSD v2 디스크가 있는 VM에서는 Azure Disk Encryption, Azure Backup, Azure Site Recovery가 지원되지 않는다.
- VM의 할당을 취소하거나, 디스크를 분리하지 않고 크기를 확장할 수 없다.
4-2. 어떻게 SSD v2같은게 가능한가?
- 클라우드 인프라와 가상화 기술을 사용한 것이다. 실제로는 Azure 데이터 센터 내의 가상화된 스토리지 리소스를 사용한다.
- 가상화된 스토리지 풀: Azure는 여러 물리적 SSD를 하나의 큰 스토리지 풀로 통합한다. 이 풀을 여러 사용자가 공유하며, 각 사용자는 필요에 따라 스토리지 리소스를 할당받는다.
- 동적 리소스 할당: 프리미엄 SSD v2를 생성하면, Azure는 스토리지 풀에서 필요한 용량과 성능을 동적으로 할당한다. 이는 사용자가 크기와 IOPS를 독립적으로 조정가능함을 의미한다.
- 성능관리: Azure는 백엔드에서 여러 물리적 디스크의 성능을 모니터링 및 관리한다. 이를 통해 사용자가 요청한 성능을 유지 가능하다.
5. Ultra Disk
- VM을 다시 시작하지 않아도 성능 매개 변수를 변경 가능하다.
- 데이터 집약적 워크로드에 적합하다. (최상위 계층 DB 및 트랜잭션 집약적 워크로드 등)
- 데이터 디스크로 사용해야 하며 빈 디스크로만 만들 수 있다.
- 프리미엄 SSD를 OS 디스크로 사용해야 한다.
- 구독당 지역별 최대 100TiB를 제공한다. 요청시 증가시킬 수 있다.
Unmanaged Disk
- Azure의 초기 스토리지 솔루션 중 하나이다.
- 사용자가 직접 스토리지 계정을 생성하고 관리해야 하는 방식이다.
- VM과 연결된 VHD 파일을 저장하는데 사용된다.
- 사용자가 직접 스토리지 계정을 관리하고, VHD 파일을 저장할 Blob 컨테이너를 설정해야 한다.
- 2025년 9/30 까지 unmanaged disk를 완전히 폐지할 예정이므로, 현재 이를 사용중이라면 managed 디스크로의 마이그레이션을 고려하는게 좋다.
무엇을 Manage 하는가?
- Azure가 스토리지 계정을 대신 관리해준다.
- 사용자가 직접 스토리지 계정을 생성하고 관리할 필요 없이 Azure가 자동으로 스토리지 계정을 생성 및 관리한다.
Managed Disk와 Unmanaged Disk의 차이점
- 고가용성 및 내구성
- managed: 데이터의 세 가지 복제본을 유지하여 높은 내구성과 가용성을 보장한다.
- unmanaged: 데이터 복제를 사용자가 직접 설정해야 하며, Azure가 자동으로 관리해주지 않는다.
- 확장성
- managed: 최대 50,000개의 VM 디스크를 생성할 수 있어 대규모 배포가 가능하다.
- unmanaged: 스토리지 계정의 제한에 따라 확장성이 제한될 수 있다.
- 편의성
- managed: 디스크의 스냅샷을 쉽게 생성 및 관리 가능해 데이터 보호가 용이하다.
- unmanaged: 스냅샷, 백업기능은 존재하지만 사용자가 직접 관리해야 한다.
- 자동화된 스토리지 계정관리
- managed: 스토리지 계정의 크기 및 성능을 자동으로 조정해 관리 부담이 감소한다.
- unmanaged: 사용자가 스토리지 계정 및 크기를 직접 관리해야 한다.