주요 클라우드 공급자
- 12분
이제 현재 시장에서 인기 있는 클라우드 스택에 대한 빠른 개요를 살펴보겠습니다. Amazon Web Services, Microsoft Azure 및 Google Cloud Platform을 비롯한 주요 클라우드 공급자가 제공하는 서비스를 빠르게 살펴보겠습니다.
Amazon Web Services(AWS)
AWS는 특히 IaaS 공간에서 여러 클라우드 컴퓨팅 부문의 시장 리더입니다. Amazon Web Services는 Amazon의 엔지니어링 팀이 사내에서 개발한 서비스를 상용화하고 더 넓은 대중에게 임대하는 것으로 시작했습니다. AWS는 처음에 개체 스토리지 서비스인 S3을 제공한 다음, 탄력적 컴퓨팅 클라우드인 EC2를 제공했습니다. AWS는 현재 가장 큰 클라우드 컴퓨팅 플랫폼으로, 2018 쿼츠(2019)에서 250억 달러 이상의 매출을 올렸습니다1. 또한 매년 거의 50%의 속도로 성장하고 있습니다.
AWS에는 전 세계에 데이터 센터가 있습니다. 전 세계를 69개의 가용성 영역과 22개의 지리적 지역으로 나눕니다(그림 1.10). 각 지역은 네트워크에 대한 전체 중복성 및 연결을 제공합니다. 각 가용성 영역은 중복된 전력, 네트워킹 및 연결이 있는 불연속 데이터 센터로 구성된 AWS 인프라의 완전히 격리된 파티션을 구성합니다.
그림 1.10: Amazon Web Services 지역2.
AWS는 IaaS, PaaS 및 SaaS 간에 분산된 100개 이상의 서비스로 구성됩니다. 주요 구성 요소 중 일부는 다음과 같습니다.
컴퓨팅: Amazon의 기본 컴퓨팅 솔루션은 사용자에게 가상 머신 또는 시간별 또는 장기 대여를 위한 다양한 용량 인스턴스를 제공하는 EC2(Elastic Compute Cloud)입니다. EC2는 컴퓨팅 인프라 측면에서 AWS 클라우드 스택의 중추를 형성합니다. EC2 인스턴스는 AWS EC2 API 또는 AWS 자동 크기 조정과 같은 다른 서비스를 통해 직접 관리할 수 있습니다.
스토리지: AWS는 이 공간에서 여러 제품을 제공합니다. 블록 스토리지는 EC2 인스턴스에서 연결 및 분리할 수 있는 EBS(Elastic Block Storage) 볼륨에서 제공됩니다. 개체 스토리지는 간단한 HTTP API를 사용하여 BLOB(Binary Large Objects)을 저장하고 검색할 수 있는 S3(Simple Storage Service)에서 제공됩니다. AWS는 또한 관리되는 SQL 서비스를 제공하는 RDS를 비롯한 다양한 데이터베이스 서비스를 제공합니다. 확장성이 뛰어나고 대기 시간이 짧은 키-값 저장소를 제공하는 DynamoDB 및 ElastiCache, 메모리 내 데이터베이스 저장소입니다.
네트워킹: Amazon의 VPC(Virtual Private Cloud), ELB(Elastic Load Balancer) 및 Route 53은 AWS와 외부 세계에 배포된 인스턴스와 서비스 간의 연결을 관리하는 데 사용할 수 있는 네트워킹 서비스입니다.
PaaS 제품: AWS의 플랫폼은 다양한 애플리케이션 요구 사항에 맞게 크고 다양합니다. AWS는 EMR(Elastic MapReduce), Amazon Kinesis 및 Redshift와 같은 분석 플랫폼 제품군을 제공합니다. AWS Elastic Beanstalk를 통해 신속한 웹 애플리케이션 개발 및 호스팅이 가능합니다. 또한 Amazon은 CloudFormation, OpsWorks 및 CodeDeploy를 포함하여 클라우드 배포를 관리하고 제어할 수 있는 많은 제품을 제공합니다.
SaaS 제품: AWS에는 광범위한 SaaS 제품이 포함되어 있으며, 그 중 상당수는 기계 학습 및 인공 지능의 진화하는 분야를 대상으로 합니다. 예를 들어 텍스트를 음성으로 변환하기 위한 Amazon Polly, Amazon.com 사용하는 것과 동일한 권장 사항 엔진을 사용하여 소매 애플리케이션을 향상시키기 위한 Amazon 권장 사항, 기계 학습을 통해 지원되는 정교한 예측 모델을 빌드하기 위한 Amazon Forecast 등이 있습니다.
Microsoft Azure
Microsoft Azure는 시장에서 가장 빠르게 성장하는 클라우드 플랫폼으로, 인상적인 수익 수치와 끊임없이 확장되는 서비스 포트폴리오를 제공합니다. 이 작성을 기준으로 Azure는 140개 국가/지역에서 사용할 수 있으며 전 세계 50개 이상의 위치에 데이터 센터가 있습니다(그림 1.11). Azure의 하위 집합은 Azure Stack을 통해 사용할 수 있으며, 이를 통해 조직은 Azure 퍼블릭 클라우드에 원활하게 연결하고 상호 작용할 수 있는 프라이빗 클라우드를 빌드할 수 있습니다. 이를 통해 갑작스러운 수요 급증에 대응할 수 있는 공유 리소스를 사용하여 내부 데이터 센터를 고도로 자동화할 수 있습니다.
그림 1.11: Microsoft Azure 지역3.
Azure는 다음을 포함하여 100개 이상의 IaaS, PaaS 및 SaaS 서비스를 제공합니다.
컴퓨팅: Microsoft는 Windows 또는 다양한 버전의 Linux를 실행하도록 구성할 수 있는 Azure Virtual Machines를 제공합니다. 또한 Azure는 변화하는 수요 또는 미리 정의된 일정에 따라 VM을 자동으로 만들고 삭제하여 자동 크기 조정을 지원하는 Virtual Machine Scale Sets를 지원합니다.
스토리지: Azure Storage로 알려진 서비스 제품군은 다음을 비롯한 여러 스토리지 솔루션을 제공합니다.
- Azure Blob을 대용량 이진 데이터를 저장하기 위해 사용하기
- NoSQL 데이터를 저장하기 위한 Azure 테이블
- 영구 스토리지 큐를 사용하여 서비스 및 마이크로 서비스를 연결하기 위한 Azure 큐
- 클라우드에 파일을 탑재하고 저장할 수 있는 SMB 기반 스토리지 엔드포인트(Windows 호환 파일 서버)를 제공하는 Azure Files
또한 Azure는 Azure SQL Database를 통해 관리형 관계형 데이터베이스 서비스를 제공합니다. Cosmos DB로 알려진 관리형 다중 모델 NoSQL 데이터베이스 서비스 Azure Redis Cache를 통한 고성능 키-값 캐싱 또한 Microsoft는 하이브리드 스토리지 솔루션을 제공하기 위해 Azure와 통합되고 백업, 분석 및 클라우드 배포를 위해 Azure에 연결하는 로컬 SSD/HDD 스토리지 배열인 StorSimple이라는 고유한 스토리지 어플라이언스를 제공합니다.
네트워킹: Microsoft는 Azure Virtual Network를 통해 가상 프라이빗 네트워킹 서비스도 제공합니다. Microsoft Azure 클라우드의 또 다른 고유한 기능은 ExpressRoute를 통해 Microsoft의 데이터 센터에 대한 전용 파이버 연결을 구매하는 기능입니다. Azure Traffic Manager를 사용하여 위치, 성능 및 기타 기준에 따라 트래픽을 Azure Virtual Machines로 라우팅하고 DNS 기반 부하 분산을 수행할 수 있습니다. Azure 서비스 제품군에 최근 추가된 Azure Front Door는 최상의 성능과 즉각적인 글로벌 장애 조치(failover)를 최적화하여 웹 트래픽에 대한 글로벌 라우팅을 정의, 관리 및 모니터링할 수 있도록 Traffic Manager의 기능을 확장합니다.
PaaS 제품: Azure는 Azure App Service, Azure SQL Database 및 Azure Cosmos DB를 비롯한 여러 PaaS 제품을 제공합니다. 분석 공간에서 Azure는 Amazon의 EMR과 유사한 관리형 Hadoop 클러스터 서비스인 HDInsight를 포함한 여러 제품을 제공합니다. 관리되는 Spark 구현인 Azure Databricks 및 Data Lake Analytics는 대량의 데이터를 분석하고 변환하기 위한 작업별 가격 책정을 제공합니다.
SaaS 제품: Microsoft는 다양한 SaaS 서비스를 제공하며, 그 중 두 가지는 Microsoft 365 및 OneDrive입니다. 다른 SaaS 서비스에는 인공 지능을 앱에 통합하기 위한 서비스 및 API 집합인 Azure AI 서비스가 포함됩니다. 기계 학습 모델을 빌드, 배포 및 버전 관리하기 위한 Azure Machine Learning Services; 및 Azure Machine Learning Studio는 기계 학습 모델을 빌드, 학습 및 테스트하기 위한 브라우저 기반 끌어서 놓기 인터페이스를 제공합니다.
GCP(Google Cloud Platform)
Google의 클라우드 플랫폼은 처음에 PaaS 제품 및 API만 번역 API와 같은 Google의 가장 강력한 제품에 제공했습니다. GCP는 이후 경쟁업체의 제안에 대응하여 여러 서비스로 다양화되었습니다. 전 세계 약 60개의 데이터 센터가 20개 지역으로 그룹화되어 있습니다(그림 1.12).
그림 1.12: Google 클라우드 플랫폼 지역4.
컴퓨팅: Google의 기본 IaaS 플랫폼은 다양한 크기의 Linux 가상 머신을 지원하는 GCE(Google Compute Engine)입니다. Google은 또한 수요 급증, 일괄 처리 작업 및 내결함성 워크로드를 처리하기 위해 매우 저렴하며 수명이 짧은 선점형 가상 머신을 제공합니다.
스토리지: Google은 세 가지 기본 스토리지 서비스를 제공하며, 그 중 하나는 AWS S3 및 Azure Blob과 유사한 개체 스토리지 서비스인 Google Cloud Storage입니다. Google의 Cloud Datastore는 사용자가 확장성이 높은 비관계형 데이터를 저장할 수 있지만 필요에 따라 데이터에 대한 트랜잭션 및 SQL 쿼리를 지원하는 관리되는 NoSQL 데이터 저장소 서비스입니다. 또한 Google은 클라우드 SQL이라는 기존의 관리형 SQL 데이터베이스 서비스를 제공합니다.
네트워킹: Google은 Google의 클라우드 서비스와 외부 세계 간의 연결, 즉 부하 분산, 상호 연결 및 DNS 서비스 간의 연결을 관리하는 여러 네트워킹 제품을 제공합니다. Google은 전체 인프라가 탄소 중립적임을 자랑하며, 데이터 센터는 일반적인 데이터 센터보다 50% 적은 에너지를 소비합니다.
PaaS 제품: Google의 기본 PaaS 제품은 AWS Elastic Beanstalk 및 Azure App Service와 유사한 애플리케이션을 호스팅하기 위한 완전 관리형 서버리스 플랫폼을 제공하는 GAE(Google App Engine)입니다. 또한 Google은 사용자가 다중 테라바이트 데이터 세트에 대해 SQL과 유사한 쿼리를 실행할 수 있도록 하는 BigQuery와 같은 데이터 분석 플랫폼을 제공합니다. 클라우드 엔드포인트를 사용하면 개발자가 다른 애플리케이션에 서비스를 제공하는 RESTful API를 배포할 수 있습니다.
SaaS 제품: Google은 Gmail 및 Google Drive를 포함하여 세계에서 가장 인기 있는 SaaS 서비스를 제공합니다. 또한 예측 및 번역과 같은 Google 서비스를 API로 사용할 수 있으므로 개발자는 이러한 서비스를 자체 애플리케이션에 통합할 수 있습니다. AI Hub는 플러그 앤 플레이 AI 구성 요소의 호스트된 리포지토리를 제공하며, AI 플랫폼은 Jupyter Notebook을 서비스로 제공하고, 딥 러닝 모델을 빌드 및 학습하기 위해 최적화된 특수 VM, Kubernetes용 기계 학습 도구 키트인 Kubeflow를 제공합니다. Kubernetes는 Google에서 처음 개발한 인기 있는 오픈 소스 컨테이너 오케스트레이션 도구이며 현재 클라우드 네이티브 컴퓨팅 재단에서 유지 관리되고 있습니다.
참고문헌
석영 (2019). 아마존 웹 서비스는 맥도날드보다 더 많은 돈을 가져왔다 2018. https://qz.com/1539546/amazon-web-services-brought-in-more-money-than-mcdonalds-in-2018/
Amazon(2019). AWS 글로벌 인프라 맵. https://aws.amazon.com/about-aws/global-infrastructure/?p=ngi& loc=1
Microsoft(2019). Azure 지역. https://azure.microsoft.com/global-infrastructure/regions/
구글 (2019). 네트워크를 만나보세요. https://cloud.google.com/about/locations/