이 글은 Google Cloud Platform – Community 에 올라온 내용으로 부족한 영어 실력에 제멋대로 번역한 것임을 밝힙니다.
[ 원본 링크 : New Google Cloud SSDs have AMAZING price to performance! – Google Cloud Platform – Community – Medium ]
New Google Cloud SSDs have AMAZING price to performance!
Google Cloud 는 새로운 데이터베이스 관련하여 여러 기능을 발표했다. Datastore, BigTable, 그리고 Cloud SQL 2세대 서비스가 모두 베타에서 벗어났다!
이 중에서 정말 내 눈을 사로 잡은 것은 SSD Persistent Disks 가 거대한 IOPS boost 를 추가 비용없이 사용할 수 있다는 사실이었다! 25,000 IOPS에서, 기본적으로 중복 (redundancy) 기능이 내장되어 있고 초고속 백업 기능을 가지고 있는 네트워크에 연결된 디스크임을 잊어버리고 시작할 수 있다.
그래서 생각했다 : Google Cloud IOPS 를 AWS 와 Azure 와 같은 다른 클라우드와 비교하면 어떨까?
스포일러 : Google Cloud 는 나를 몹시 놀라게 했다!
비밀이야기 공개 : 나는 구글에서 일하기 때문에 강한 편견을 가지고 있지만, 가능한 한 공정하게 하려고 노력했다. 또한, 웹 사이트에 공개된 값을 사용했다. 어떠한 것도 성능테스트(벤치마킹)를 하지 않았다. 만약 당신이 AWS 또는 Azure 의 성능을 더 좋게 만들수 있거나 내가 뭔가 잘못하고 있다면 알려 주기 바란다!
AWS vs GCP
Amazon 의 EBS 볼륨은 종류가 다양하다. 그중 내가 찾는 것은 Provisioned IOPS SSD 일 것이다. 제공 할 수있는 최대 IOPS 는 볼륨 당 20,000 이다.
Google Cloud Persistent Disk 를 사용하면, 볼륨 당 25,000 IOPS를 얻을 수 있다. 단지 IOPS 가 할당되기 위해 충분한 CPU 와 Disk 용량을 확인하기만 하면 사용할 수 있다.
그럼 몇 가지 비교를 해보자. 디스크 용량 500 기가바이트를 가진 데이터베이스 서버를 원한다면 :
Wow. Just Wow.
1/3 비용으로 IOPS 를 확보했다 !
AWS 에서 하나의 인스턴스 금액으로 Google Cloud 에서 세 개의 인스턴스를 실행할 수 있다.
자 이제 각 공급사의 최대 IOPS 를 설정해보자.
Again!
1/3 비용으로 IOPS 를 확보했다 !
AWS 에서 4개 이상의 CPU core 를 가진 인스턴스를 사용한다면, Google Cloud 에서는 32 core 시스템을 3대 사용할 수 있다.
선불로 $18,000 을 지불하더라도, AWS 는 여전히 많이 비싸다! 그건 미친 짓이다!
왜 Google Cloud 는 그렇게 싼가 ?
두 가지 이유가 있다:
- GCP의 인스턴스 비용이 저렴하다. 지속적인 사용에 대해 자동으로 적용되는 할인이 없더라도, Compute Engine 은 보통의 EC2 보다 싸다.
- AWS 의 Provisioned IOPS 는 매우 비싸다. Google Cloud 에서 디스크는 디스크 용량에 따라 자동으로 프로비저닝 된 IOPS 를 얻을 수 있다. 목표한 IOPS 를 얻기 위해 과도하게 디스크 용량을 할당했던 이유이다. 그럼에도 불구하고 AWS 는 IOPS 를 위해 추가 비용을 지불하게 만들고, 그것을 볼 수 있었다!
EDIT: GCP 에서보다 작은 인스턴스에 Provisioned IOPS EBS 볼륨을 붙힐 수 있다는 것을 지적했다. @fittedcloud 는 t2.small 인스턴스에 20K IOPS 디스크를 장착 하고, 전체 디스크 성능을 얻었다. 이는 한 달에 $1,381.54 를 지불했고, 인스턴스는 오직 1 CPU 와 2 GB RAM 을 사용했다. 다시 말하지만, 이것은 provisioned IOPS 때문이고 매우 비싸다!
Azure vs GCP
Azure 의 각 인스턴스는 디스크가 있지만, 이것은 인스턴스가 지워지거나 이동되면 삭제되는 임시 디스크이다. 대신, AWS 와 GCP 가 제공해주는 네트워크에 연결된 persistent 디스크와 같은 유형의 스토리지를 원한다면 Premium SSD 스토리지를 사용해야 한다.
Premium SSD 스토리지의 재미있는 점은 미리 설정된 덩어리 형태로 제공한다는 것이다. AWS 또는 GCP 와는 다르게, 당신이 원하는만큼의 IOPS 나 디스크 용량을 정확히 지정할 수 없다. 이것은 또한 GCP 와 AWS 가 제공하는 것과 같은 레벨의 IOPS 를 얻기 위해 RAID 에 디스크를 스트라이프 해야만 한다는 것을 의미하고, 이것은 엄청난 고민 거리가 될 것이다. 인스턴스에서 이것을 설정하기 위해 무엇을 어떻게 해야하는지 복잡해진다.
말했던 것들에 대해서, 가격을 살펴보자:
Again!
1/3 비용으로 IOPS 를 확보했다 !
나는 여기에서 트렌드를 보고 있다고 생각한다.
Azure 의 비용에서, 이것은 앞 섹션에서 설정했던 AWS 인스턴스보다 빠르고 저렴함을 알 수 있다. 그러나 Google Cloud 의 가격은 너무 낮다. 미쳤다!
왜 Google Cloud 는 그렇게 싼가 ?
두 가지 이유가 있다:
- GCP의 인스턴스 비용이 저렴하다. 지속적인 사용에 대해 자동으로 적용되는 할인이 없더라도, Compute Engine 은 보통의 Azure VM 보다 싸다.
- Azure 에서 IOPS 를 얻는 방법은 구식이다. Azure 는 원하는 IOPS 성능을 얻기 위해 여러개의 디스크를 함께 묶어서 만들어야 한다. 이는 비슷한 성능을 얻기 위해 8개 볼륨을 함께 묶어야 (stripe) 함을 의미한다. Google Cloud 를 사용하면, 자동으로 IOPS 를 확보할 수 있다. 볼륨을 묶어서 (stripe) 할 이유가 없다 ( 참고로 정말 어쨌든 GCP 에 도움이되지 않는다 ).
결론
나는 미친 약을 먹고 있는 것 같은 느낌이다. Google Cloud 는 동일하거나 더 나은 IOPS 성능을 AWS 와 Azure 보다 1/3 의 비용에 제공하고 있다!
나는 AWS 또는 Azure 의 전문가가 아니다. 만약 이러한 플랫폼에서 더 나은 시스템을 구성할 수 있다면, 코멘트를 달아 알려주세요.
또한 GCP 도 완벽하지 않다. 최대 인스턴스 당 Persistent Disk IOPS 가 25k 이다. AWS 와 Azure 의 어떤 (매우 비싼) 인스턴스는 더 나은 성능이 나올 수도 있다.