Public Cloud Compute Services: IaaS Comparison
|
AWS |
GCP |
Azure |
Alibaba |
Virtualization Technology |
Xen |
KVM |
Customized version of Hyper-V |
Transition from Xen to KVM since 2014 |
Nested Virtualization |
Partial in i3.metal instance |
Nested virtualization can only be enabled for |
Yes Linux and Windows |
Yes in ECS Bare Metal Instance |
SLA (Monthly |
99.99% |
99.99% |
99.99% |
99.99% |
Machine Types and Sizes |
Up to 96 VCPU & 768 GB Memory Up to 16 GPU & 54 GB of GPU Memory |
Up to 416 VCPU & 1.4 TB Memory (mega-memory Up to 8 GPU & 96 GB of GPU Memory |
Up to 416 VCPU & 11.4 GB Memory Up to 8 GPU & 96 GB of GPU Memory |
Up to 208 VCPU & 3.8 TB Memory Up to 8 GPU & 256 GB of GPU Memory |
Machine Options |
Dedicated – On – Reserved Instances (1-3 years) – Spot Instances Dedicated – On – Reserved Instances (1-3 years) On |
Dedicated – On – Reserved Instances (1-3 years) – Spot Instances (Preemptible VM) – Shielded Dedicated – On – Reserved Instances (1-3 years) On |
Dedicated – On – Reserved Instances (1-3 years) – Spot Instances (low-Priority VM) Dedicated – On – Reserved Instances (1-3 years) On |
Dedicated – On – Reserved Instances (Monthly) – Spot Instances (Preemptible Dedicated – Reserved Instances (Monthly)
|
Disks (Block & File Devices) |
Instance Elastic Cloud |
Local Persistence File RAM |
Azure Azure |
Cloud Shared Local Alibaba allow access to data through shared file |
Autoscaling |
Scaling – Manual – Schedule – Dynamic policies – Monitoring policies
Cooldowns support Shutdown script Health check support Removal Policy |
Scaling – Dynamic policies – Monitoring policies
Cooldowns support Shutdown script Health check support |
Scaling – Manual – Schedule – Dynamic policies – Monitoring policies – Application policies
Cooldowns support Shutdown script (preview) Health check support Notification & webhooks |
Scaling – Manual – Schedule – Dynamic policies – Monitoring policies
Cooldowns support Shutdown script Health check support Removal Policy |
Billing Model |
On Demand: Pricing is per instance-hour (Each Discounts: – – Reserved Instances (1-3 Years) up to 75%
|
On Demand: Pricing is per instance-second Discounts: – – Reserved Instances (1-3 Years) up to 70% – Sustained use discounts (When an instance |
On Demand: Pricing is per instance-second Discounts: – – Reserved Instances (1-3 Years) up to 72%
|
On Demand: Pricing is per instance-minute Discounts: – – Reserved Instances (monthly) up to 60%
|
Other |
– Linux & Windows Support – Public and Custom Image Support – Snapshot support – Migration tool & methodology – Lightweight version (lightsail) – VMware Cloud on AWS – Parallel Cluster management based on Opensource |
– Linux & Windows Support – Public and Custom Image Support – Snapshot support – Migration tool & methodology – Managed and unmanaged Instance Groups
|
– Linux & Windows Support – Public and Custom Image Support – Snapshot support – Migration tool & methodology – Update and Fault Domains – Azure CycleCloud An enterprise-friendly tool for orchestrating |
– Linux & Windows Support – Public and Custom Image Support – Snapshot support – Cloud migration tool |
Public Cloud Compute Services: CaaS Comparison
|
AWS |
GCP |
Azure |
Alibaba |
Custom Container Service |
EC2 Container Service (ECS) |
|
Azure Container Service (ACS) that will be |
Alibaba Container Service |
Kubernetes Container Service |
Elastic Container Service for Kubernetes (EKS) -AWS Load-balancing integration. -Automatic scaling of your cluster’s node -Automatic upgrades for your cluster’s node -Hybrid Networking -Workload Portability, on-premises and cloud -Identity and Access Management Integration -Logging and Monitoring |
Google Kubernetes Engine (GKE) -GCP load-balancing integration – Node pools to designate subsets of nodes -Multi-zone Clusters or Regional Clusters -Automatic scaling of your cluster’s node -Automatic upgrades for your cluster’s node -Node auto-repair to maintain node health and -Hybrid Networking -Workload Portability, on-premises and cloud -Dashboard for GKE clusters and their resources. -Identity and Access Management Integration -Logging and Monitoring |
Azure Kubernetes Service (AKS) –Azure -Automatic scaling of your cluster’s node -coordinated application upgrades -Hybrid Networking -Workload Portability, on-premises and cloud -Identity and Access Management Integration -Logging and Monitoring |
Alibaba Container Service for Kubernetes with – Dedicated Kubernetes cluster – Managed Kubernetes cluster – Serverless –Alibaba -Automatic scaling of your cluster’s node -Hybrid Networking -Workload Portability, on-premises and cloud -Identity and Access Management Integration -Logging and Monitoring |
Registry service |
Amazon ECR Registry – Fine-grained -Existing CI/CD integrations |
Google Container Registry – Perform vulnerability analysis – Fine-grained -Existing CI/CD integrations |
Azure Container Registry – Geo-replication – Fine-grained -Existing CI/CD integrations |
Alibaba Container Registry |
Billing Model |
– Amazon EKS cluster (per hour) – AWS resources you create to run your |
– Node instances according to VM, Storage and |
– Node instances according to VM, Storage and |
– Node instances according to VM, Storage and |
Other Services |
|
Google Cloud Build to executes
GKE on premises with Anthos GKE on-prem that brings Google
Knative provides an open API
|
Service Fabric Microsoft’s container orchestrator deploying microservices across a cluster of machines. Microservices can be developed in many ways from using Azure Container Instances (ACI) offers the fastest and simplest way to run a container in |
Elastic Container Instance (ECI) is an agile and secure serverless |
Public Cloud Compute Services: AaaS Comparison
|
AWS |
GCP |
Azure |
Alibaba |
Web Apps |
AWS Elastic Beanstalk -Wide Selection of Application Platforms; -Variety of Application Deployment Option -Monitoring, Logging, and Tracing -Management and Updates -Scaling -AWS Resources Customization |
Google App Engine (Standard and Flexible – -Wide Selection of Application Platforms; Java, -Variety of Application Deployment Option (Cloud -Monitoring, Logging, and Diagnostics -Application Versioning -Scaling -GCP Resources Customization – Traffic Splitting – Application |
Azure App Service –Wide -Auto-scaling -High availability -Supports both Windows and Linux -Enables automated deployments from GitHub, -Monitoring, Logging, and Tracing -Management and Updates Cloud Services Offers access to the underlying Azure VMs Azure Spring Cloud (preview) Azure Spring Cloud makes it easy to deploy |
Simple Application Server It provides you the all-in-one solution to Focus on beginners to get started with cloud computing.
|
Batch Apps |
AWS Batch –Support -Granular job definitions -Simple job dependency modeling -Support for popular workflow engines -Dynamic compute resource provisioning and -Priority-based job scheduling -Dynamic spot bidding -Integrated monitoring and logging -Fine-grained access control |
App Engine Cron
Batch on GKE A cloud-native solution for scheduling and
Cloud Dataflow – Based -Automated Resource Management -Dynamic Work Rebalancing -Horizontal Auto-scaling |
Azure Batch –Support -Granular job definitions -Simple job dependency modeling -Support for popular workflow engines -Dynamic compute resource provisioning and -Priority-based job scheduling -Integrated monitoring and logging -Fine-grained access control |
Batch Compute –Support -Granular job definitions -Job scheduling -Dynamic compute resource provisioning and -Integrated monitoring and logging -Fine-grained access control |
Billing Model |
You pay only for AWS resources (e.g. EC2 |
App Engine flexible you pay only for the App Engine standard environment are deployed Cloud Dataflow service usage is billed in per |
Azure App Service pricing is per hour with a Azure Cloud Services pricing is per hour with Azure batch pricing is per hour with a cost |
Simple Application Server provides a monthly Batch Compute, you pay for the compute and |
Public Cloud Compute Services: FaaS Comparison
|
AWS |
GCP |
Azure |
Alibaba |
Language Runtimes |
– JavaScript (Node.js 12 & 10) – Python 3.8-3.6-3.7-2.7, – Go (1.x) – Java 8-11 – PowerShell – C# (.Net Core 3.1 and 2.1) – Ruby 2.7-2.5 |
– JavaScript (Node.js 6-8-10) – Python (3.7.6) – Go (1.11 and 1.13(beta)) |
– JavaScript (Node.js 6,8,10&12) – Python 3.6-3.7-3.8 – Java 8 – C#-F# (.NET Framework 4.7 &.NET Core 2.2 |
– JavaScript (Node.js 6 & 8) – Python 2.7 & 3.6 – Java 8 – PHP 7.2 |
SLA (Monthly |
<= 99.95% |
<= 99.5% |
<= 99.95% |
<= 99.95% |
Events and Triggers |
– HTTP— HTTP requests. – Amazon S3 – Amazon DynamoDB – Amazon Kinesis Data Streams – Amazon Simple Notification Service – Amazon Simple Email Service – Amazon Simple Queue Service – Amazon Cognito – AWS CloudFormation – Amazon CloudWatch – Amazon CloudWatch – AWS CodeCommit – Scheduled Events (powered by Amazon CloudWatch Events) – AWS Config – Amazon Alexa – Amazon Lex – Amazon API Gateway – AWS IoT Button – Amazon CloudFront – Amazon Kinesis Data Firehose – Other Event Sources: Invoking a Lambda |
– HTTP— HTTP requests. – Cloud – Cloud Pub/Sub – Cloud Firestore -Firebase (Realtime –Stackdriver |
– HTTP – Blob Storage – Cosmos DB – Event Grid – Event Hubs – Microsoft Graph Events – Queue storage – Service Bus – Timer |
– HTTP— HTTP requests. – Alibaba Cloud Object Storage Service (OSS) – CDN events – Timer – MNS topic – Table Store – Log Service |
Timeout |
Default 3 Seconds. Up to 15 Minutes |
Default 1 Minute. Up to 9 Minutes |
Default 5 Minute. Up to 10 Minutes. (with Premium and App Service plan you can |
Default 3 Seconds Up to 10 Minutes |
Billing Model |
Number of requests + Execution time + Memory allocated + Networking. Outbound data transfer
1M free requests per month and 400,000 |
Number of requests + Compute time + Memory allocated + Networking. Outbound data transfer
2M free requests per month regardless duration |
Number of requests + Execution time + Memory allocated + Networking. Outbound data transfer
1M free requests per month and 400,000 Customers can also run Functions within their |
Number of requests + Execution time + Memory allocated + Public Network Traffic
1M free requests per month and 400,000 |