Google GCE
MS Azure VM
Amazon EC2
Regions
Google Compute Engine is spread across 3 different regions: us-central1, Europe-west1, and asia-east1
MS Azure VM is distributed across 5 regions: America, Europe, Asia Pacific, China and India
Amazon EC2 is spread across 6 regions: North America, South America, Europe, Middle East, Africa, Asia Pacific
Service
IaaS
IaaS
IaaS
Compute Capacity
GCE instances are classified into 4 types: Standard machine types, High CPU machine types, High memory machine types and Small machine types. GCE provides a total of 17 instance types
Azure offers 40 instance sizes offering up to 20 cores and 140GB of memory
Instance types are divided into different “families” like m3 (balanced), c4 (compute optimized), and t2 (baseline level). In its current form, there is a total of 28 instances types
Storage
Google Compute Engine offers persistent disk storage, available as both standard (HDD) and solid-state (SSD). All data inserted to disk in Compute Engine is encrypted on the fly and then transmitted and saved in encrypted form. GCE’s Persistent Disks (PD) can be mounted read-write via one VM or read-only via many VMs.
Google persistent disk storage provides 3000 Read IOPS/volume and 15,000 Write IOPS/volume for standard disks and 10,000 Read IOPS/volume and 15,000 Write IOPS/volume for Solid-state persistent disks. Each persistent disk can be up to 10TB in size
Local (temporary) and persistent disk are supported, with VHDs being stored in Storage page blobs. SSDs are offered as Premium Storage options. Azure will replicate data to a neighboring region (Standard Storage only) automatically as well as locally through fault domains (physically isolated infrastructure). Cross region replication of Premium Storage disks is enabled through snapshots
Amazon EC2 provides Elastic Block Storage (EBS) volumes for persistent storage. These EBS volumes are porvided in 3 types: Magnetic volumes, General Purpose SSD volumes, and Provisioned IOPS SSD volumes.
AWS just enlarged the performance limits on EBS volumes to 16TB capacity with 20,000 IOPS/volume and 320 MBps max throughput/volume as a maximum. EBS volumes can be related to one instance at a time and recently featured encryption for EBS volumes as well
Database
Supports relational (Cloud SQL), noSQL (Cloud Datastore) and big data (Cloud Dataproc)
Supports relational (SQL Database), noSQL (DocumentDB) and big data (HDInsight)
Supports relational (RDS), noSQL (DynamoDB) and big data (Elastic MapReduce (EMR))
Data Orchestration
Supported (Cloud Dataflow)
Supported (DataFactory)
Supported (Data Pipline)
Networking
GCE’s network performance is very effective because Google’s network traffic passes through its own fiber network rather than traversing the public internet. Each GCE instance is also attached to a single network that spans all regions without VPNs or gateways as middlemen
Microsoft combines globally distributed datacenters and edge computing nodes with one of the world’s largest dark fiber networks, providing multiple terabits per second of capacity over 1.4 million 10 gigabit ethernet fiber
AWS also customizes its networking equipment, the corresponding protocols that travel over it to boost network performance, and also has its own fiber-optic network between zones
Pricing
GCE offers 2 types of pricing models: on-demand and sustained usage pricing models. The sustained usage pricing model provides discounts if your instance is used for more than 25% of a month. To maximize savings, GCE also offers inferred instances, i.e., it combines multiple, non-overlapping instances of the same instance type in the same zone into a single instance for billing
MS Azure VM offers 2 types of pricing models: on-demand and short term commitments (pre-paid or montly)
Amazon EC2 offers three types of pricing models:
On-demand – pay for compute capacity by the hour with no long term commitments.
Reserved instances – maximize savings by purchasing reserved instances that meet your long term business needs.
Spot instances – bid for instances using a supply and demand model.
Unique Features
Fast boot times & auto restart of VMs. pay “exactly” for what you use. Load Balancers don’t need any pre-warming. Offers real 100% uptime via transparent maintenance. Relatively cheap price.
Scale out to multiple instances without redeploy. Easy-to-use administration tool, especially for Windows admins. WebJobs: applications that can be deployed to a Web App to implement background processing. That can be invoked on a schedule, on demand or can run continuously. Microsoft Azure Machine Learning: (Azure ML) service is part of Cortana Intelligence Suite that enables predictive analytics and interaction with data using natural language and speech through Cortana.
Largest data centers in the world (widespread geographical distribution). Larger choice of Operating Systems and AMIs. Availability of GPU acceleration. A wider range of instance types and families. Rich set of services and integrated monitoring tools.
Load Balancing
offers a load balancer and distributing incoming traffic between backend instances. Also, it allows balancing between regions, supports content-based routing, and does not require pre-warming
Line of Business applications that are internal facing only can be load balanced using Internal load balancer. External load balancer: external load balancer can be used to provide high availability for IaaS VMs role instances accessed from the public Internet. Internal load balancer: an internal load balancer can be used to provide high availability for IaaS VMs role instances accessed from other services in the VNet
allows load balance incoming traffic among your backend instances in multiple availability zones (within a single region). This traffic distribution to backend instances happens using a weighted round robin algorithm. Apart from load balancing incoming traffic, ELB also offers session stickiness, cross zone load balancing, and SSL termination. ELB works with AWS’s auto-scaling and supports IPv4 and IPv6 addresses, HTTP and TCP load balancing, and logging
Security
Google Compute Engine firewalls regulate outgoing traffic from instances using iptables. Google’s Firewall is a whitelist service
Microsoft Azure security includes allowing customers to establish an encrypted IPSec tunnel from their on-premises data center via the Azure Virtual Network Gateway. In addition, internal networks and virtual machine instances can be segmented individually or within deployments in the same customer subscription using virtual networks, private IP address ranges, and Network Security Groups that act as stateful firewall rule sets to individual systems and IP subnets
As AWS instances are provisioned within VPCs, Amazon provides the benefit of both Security Groups and Network ACLs. With Security Groups – working as whitelists – it controls incoming and outgoing traffic at the instance level. Network ACLs, on the other hand, work at subnet level, and allow or deny specific IP addresses or networks
SLA
Google Compute Engine also offers a service level agreement ensuring at least 99.95% uptime. If your monthly uptime percentage is between 99.00% – 99.95%, 10% financial credit is received. For 95.00% – 99.00%, 25% financial credit is received. For anything less than 95.00%, you’ll receive a 50% credit
MS Azure VM offers a service level agreement ensuring at least 99.95% uptime. It provides credit for 1+ minutes downtime. Max monthly credit is 25%
Amazon EC2 offers a service level agreement guaranteeing a monthly uptime percentage of 99.95%. If your actual monthly uptime percentage is less than 99.95%, but equal to or greater than 99.0%, Amazon EC2 offers 10% service credit. For less than 99.0%, you receive 30% service credit
Operating System Support
Google Compute Engine supports CentOS, Red Hat Enterprise Linux, Debian, SUSE, Ubuntu, and Windows Server 2008R2. Windows Server support is in beta mode
MS Azure VM supports CentOS, CoreOS, Debian, openSUSE, Oracle Linux, RHEL, SLES, Ubuntu, Windows Server
Amazon EC2 supports a wide range of operating systems, including Amazon Linux, Red Hat Enterprise Linux, CentOS, Debian, SUSE, Ubuntu, Oracle Enterprise Linux, FreeBSD, and Windows (2003 R2, 2008, 2008 R2, 2012)