IaaS: EC2 vs Google Compute Engine
Arguably, Infrastructure as a Service (IaaS) is the most important cloud computing vertical. Within that, in terms of services and features, AWS enjoys the top position, while Google Cloud Platform is slowly catching up. In this post, we’ll discuss the main differences between Amazon’s EC2 and Google Compute Engine (GCE).
EC2 vs Google Compute Engine: Regions
Amazon EC2 is spread across 11 different regions: Northern Virginia, Oregon, Northern California, Ireland, Germany, Singapore, Tokyo, China, Sau Paulo, Sydney, and US GovCloud.
Google Compute Engine is spread across 3 different regions: us-central1, Europe-west1, and asia-east1. Google does not officially reveal the exact locations of these zones. However, according to this post from Gigaom, us-central1 translates to Oklahoma, and Europe-west1 is in Ireland.
EC2 vs Google Compute Engine: Compute Capacity
AWS Instance types are optimized for different types of workloads, like Compute, Storage, Memory, and GPU. 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. The use of previous generation instances is not recommended due to performance limitations.
Just like AWS, Google Compute Engine also offers instances based on workload type.
Currently, GCE instances are divided into 4 types:
- Standard machine types
- High CPU machine types
- High memory machine types
- Small machine types.
GCE offers a total of 17 instance types.
|Amazon EC2||Google Compute Engine|
|Type||Minimum Computing Capacity||Maximum Computing Capacity||Minimum Computing Capacity||Maximum Computing Capacity|
|General / Standard Purpose||1vCPU/3.75GB Memory||8vCPU/30GB Memory||1vCPU/3.75GB Memory||32vCPU/120MB Memory|
|Compute Optimized / High CPU Instance Type||2vCPU/3.75GB Memory||36vCPU/60GB Memory||2vCPU/1.80GB Memory||32vCPU/28.8 Memory|
|Memory Optimized/ High Memory Instance Type||2vCPU/15.25GB Memory||32vCPU/244GB Memory||2vCPU/13GB Memory||32vCPU/208GB Memory|
|Shared Core||1vCPU/1GB Memory||2vCPU/4GB Memory||1vCPU/0.60GB Memory||1vCPU/1.70GB Memory|
|Storage Optimized||4vCPU/30.5GB Memory||32vCPU/244GB Memory||N/A||N/A|
|GPU Optimized||8vCPU/15GB Memory||N/A||N/A||N/A|
Note: This is a high-level comparison table. Instances internal might vary.
EC2 vs Google Compute Engine: Pricing
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. Reserved instance prices are determined by 4 factors : term (1 or 3 year), operating system, region, and payment options (no upfront, partial upfront, all upfront).
- Spot instances – bid for instances using a supply and demand model.
Google Compute Engine machine types are charged for a minimum of 10 minutes’ use. After 10 minutes, instances are charged in 1-minute increments, rounded up to the nearest minute. GCE offers both 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.
EC2 vs Google Compute Engine: Security Groups, Network ACLs, and Firewalls
As AWS instances are now provisioned within VPCs, Amazon provides the benefit of both Security Groups and Network ACLs. With Security Groups – working as whitelists – you control 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.
Similarly, Google Compute Engine firewalls regulate outgoing traffic from instances using iptables. Google’s Firewall is also a whitelist service.
EC2 vs Google Compute Engine: Load Balancing
Elastic Load Balancer (ELB) allows you 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.
Google Compute Engine also offers a load balancer. In addition to distributing incoming traffic between backend instances, unlike AWS, it allows balancing between regions, supports content-based routing, and does not require pre-warming.
EC2 vs Google Compute Engine: Storage
Amazon EC2 provides Elastic Block Storage (EBS) volumes for persistent storage. These EBS volumes are offered in 3 types: Magnetic volumes, General Purpose SSD volumes, and Provisioned IOPS SSD volumes. AWS just increased the performance limits on EBS volumes to 16TB capacity with a peak of 20,000 IOPS/volume and 320 MBps max throughput/volume. EBS volumes can be attached to one instance at a time. Amazon also recently enabled encryption for EBS volumes.
Google Compute Engine offers persistent disk storage, available as both standard (HDD) and solid-state (SSD). All data written to disk in Compute Engine is encrypted on the fly and then transmitted and stored in encrypted form. GCE’s Persistent Disks (PD) can be mounted read-write by one VM or read-only by many VMs. Google persistent disk storage offers 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.
EC2 vs Google Compute Engine: Service Level Agreement
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.
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.
EC2 vs Google Compute Engine: Operating System Support
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).
Google Compute Engine supports CentOS, Red Hat Enterprise Linux, Debian, SUSE, Ubuntu, and Windows Server 2008R2. Windows Server support is in beta mode.
There is obviously more to making a full feature and performance comparison of EC2 vs Google Compute Engine, but this is hopefully a good start. AWS and Google both provide plenty of documentation that will allow you to dig much deeper to answer your specific questions.
How to Unlock Complimentary Access to Cloud Academy
Are you looking to get trained or certified on AWS, Azure, Google Cloud Platform, DevOps, Cloud Security, Python, Java, or another technical skill? Then you'll want to mark your calendars for August 23, 2019. Starting Friday at 12:00 a.m. PDT (3:00 a.m. EDT), Cloud Academy is offering c...
What Exactly Is a Cloud Architect and How Do You Become One?
One of the buzzwords surrounding the cloud that I'm sure you've heard is "Cloud Architect." In this article, I will outline my understanding of what a cloud architect does and I'll analyze the skills and certifications necessary to become one. I will also list some of the types of jobs ...
Boto: Using Python to Automate AWS Services
Boto allows you to write scripts to automate things like starting AWS EC2 instances Boto is a Python package that provides programmatic connectivity to Amazon Web Services (AWS). AWS offers a range of services for dynamically scaling servers including the core compute service, Elastic...
Content Roadmap: AZ-500, ITIL 4, MS-100, Google Cloud Associate Engineer, and More
Last month, Cloud Academy joined forces with QA, the UK’s largest B2B skills provider, and it put us in an excellent position to solve a massive skills gap problem. As a result of this collaboration, you will see our training library grow with additions from QA’s massive catalog of 500+...
DevSecOps: How to Secure DevOps Environments
Security has been a friction point when discussing DevOps. This stems from the assumption that DevOps teams move too fast to handle security concerns. This makes sense if Information Security (InfoSec) is separate from the DevOps value stream, or if development velocity exceeds the band...
Test Your Cloud Knowledge on AWS, Azure, or Google Cloud Platform
Cloud skills are in demand | In today's digital era, employers are constantly seeking skilled professionals with working knowledge of AWS, Azure, and Google Cloud Platform. According to the 2019 Trends in Cloud Transformation report by 451 Research: Business and IT transformations re...
Disadvantages of Cloud Computing
If you want to deliver digital services of any kind, you’ll need to estimate all types of resources, not the least of which are CPU, memory, storage, and network connectivity. Which resources you choose for your delivery — cloud-based or local — is up to you. But you’ll definitely want...
Google Cloud vs AWS: A Comparison (or can they be compared?)
The "Google Cloud vs AWS" argument used to be a common discussion among our members, but is this still really a thing? You may already know that there are three major players in the public cloud platforms arena: Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP)...
Deployment Orchestration with AWS Elastic Beanstalk
If you're responsible for the development and deployment of web applications within your AWS environment for your organization, then it's likely you've heard of AWS Elastic Beanstalk. If you are new to this service, or simply need to know a bit more about the service and the benefits th...
How to Use & Install the AWS CLI
What is the AWS CLI? | The AWS Command Line Interface (CLI) is for managing your AWS services from a terminal session on your own client, allowing you to control and configure multiple AWS services and implement a level of automation. If you’ve been using AWS for some time and feel...
Cloud Academy’s Blog Digest: July 2019
July has been a very exciting month for us at Cloud Academy. On July 10, we officially joined forces with QA, the UK’s largest B2B skills provider (read the announcement). Over the coming weeks, you will see additions from QA’s massive catalog of 500+ certification courses and 1500+ ins...
AWS Fundamentals: Understanding Compute, Storage, Database, Networking & Security
If you are just starting out on your journey toward mastering AWS cloud computing, then your first stop should be to understand the AWS fundamentals. This will enable you to get a solid foundation to then expand your knowledge across the entire AWS service catalog. It can be both d...