Getting Started with Google Compute Engine – The Core Concepts

ComputeEngine_512pxHello World! Let me start by introducing myself. I am Janakiram (Jani), Cloud and DevOps enthusiast. I have experience in working on AWS, Azure and Google Cloud Platform.
I am excited to write for CloudAcademy! What can you expect from me? I am passionate about sharing my learning and experience with others and my current interest happens to be Google Cloud Platform (GCP). If you want to get started with GCP, follow my posts. Occasionally, I will also write about other platforms. Thanks for reading and I hope you will enjoy my work!
Google Compute Engine (GCE) is gaining attention for its performance and innovative features. It is redefining the IaaS delivery model by solving key problems that customers face while dealing with other platforms. If you are a developer or an operations professional familiar with other cloud platforms like Amazon Web Services, Microsoft Azure or Rackspace, you will find GCE familiar. What I personally like about GCE is its simplicity. You deal with  the same operations that you usually perform on other cloud platforms much faster and better performance.
If you want to learn Google Compute Engine, you need to understand the key components of it. They are 1) VMs, 2) Disks and, 3) Network.

Google Compute Engine Building Blocks
Google Compute Engine Building Blocks

Virtual Machines – VMs are workhorses of the IaaS platform. GCE’s VM instances are based on 64 bit x86 architecture supporting a variety of Linux distributions, FreeBSD and Microsoft Windows OS. VMs can be launched based on a specific machine type. Each machine type offers different capability depending on the number of vCPUs, memory and the supported disk I/O. Once you choose an OS and an appropriate machine type, you can launch a VM in one of the available regions of Google Cloud Platform. Each region represents a specific geography where Google has an infrastructure facility. As on date, GCE VMs can be launched in US-Central region or Europe-West region. More regions will be available in the future. Typically, regions consist of at least two zones, which are isolated data centers within a region. They are connected by high bandwidth, low latency network to offer redundancy. It is recommended that you launch at least 2 VMs in each zone of a region for high availability.
Persistent Disks – The next important building block of GCE is persistent disk. This is a block storage device that offers persistence to the data stored within VMs. VM images are persistent disks with a root file system that are capable of booting an OS. When you launch a VM, GCE creates a new persistent disk from the chosen image and uses it to boot the VM. Additional disks can be attached to the VM, which can be formatted with a native file system like ext3, ext4 or NTFS. Each persistent disk can be up to 10TB in size, which is more than sufficient for even most complex workloads dealing with Big Data and analytics. Persistent disk’s IOPS are based on the size of the disk and the machine type chosen. Unlike other providers who force you to commit the read and write operations ahead of the creation of the disks, GCE’s persistent disks can deliver the IOPS consistently without the need for guesswork. The other important capability of persistent disk is that it can be attached to multiple VMs simultaneously in read-only mode. If massive amount of static content needs to be made available to a fleet of VMs, this feature makes it easy.  Persistent disks can be periodically backed up through snapshots. A snapshot is a point-in-time replica of the disk. This can be used to duplicate the disks or as a reliable backup/restore mechanism.
Network – The third key building block of GCE is networking. It provides the basic connectivity among the VMs running within a project. Unlike other platforms, network is a first class citizen in GCE. When you create a GCE project, Google gives you a default network that can be used for launching VMs. One of the pre-configured rules allows communication among the VMs that belong to the same network. You can configure a firewall for the network by selectively opening ports. This firewall is independent of the VMs since it is associated with the network. You can create additional networks within the project and configure routes to enable communication among the networks. This lets you create private networks that are secure since they are inaccessible through the public Internet. GCE’s network stack has a scalable load balancer that can evenly distribute the load across multiple VMs attached to it. It supports health checks that can stop routing the traffic to faulty VM instances. In summary, the network stack has firewall, load balancer and routes.
I plan to provide insights into each of these building blocks in the future articles. Stay tuned!

Written by

Janakiram MSV heads the Cloud Infrastructure Services at Aditi Technologies. He contributes to cloud related articles on YourStory.com. A former employee of Microsoft and Amazon, Janakiram built a cloud consulting company that recently got acquired by Aditi Technologies. He is an analyst with Gigaom Research contributing to the Cloud related market research and analysis. He can be reached at jani@janakiram.com.

Related Posts

Albert Qian
— June 19, 2018

Preparing for the Microsoft Azure 70-535 Exam

The credibility of Microsoft Azure continues to grow in the first quarter of 2018 with an increasing number of enterprises migrating their workloads, resulting in a jump for Azure from 10% to 13% in market share. Most organizations will find that simply “lifting and shifting” applicatio...

Read more
  • Azure
  • Compute
  • Database
  • Security
— May 8, 2017

Which AWS Compute Service Do I Need?

With the ever increasing and expanding service catalog being developed by the engineers at AWS, it's easy to get confused when it comes to understanding which AWS Compute service you need and which service you should be using for your deployments. Which service offers me the quickest de...

Read more
  • AWS
  • Compute
— February 21, 2017

Which Cloud Computing Platform? Advantages of a Multi-Cloud Strategy

The rivalry is warming up in the cloud space as vendors continue to offer innovative features and reduced pricing. In this post, we will highlight the competition between the three titans of the cloud: Google Cloud Platform (GCP), Amazon Web Services (AWS), and Microsoft’...

Read more
  • AWS
  • Azure
  • Compute
  • Google Cloud
— May 5, 2016

Compute Fundamentals for AWS: Updated Course

Innovation fuels cloud computing.Compute Fundamentals for AWS: Updated, Improved, and Better than EverCloud Academy happily announces a major update to a popular course: Compute Fundamentals for AWS.David Robinson originally built this course an introduction to AWS's cornerstone comp...

Read more
  • AWS
  • Compute
— May 19, 2015

Preemptible Virtual Machines: cheap instances from Google Compute Engine

Could you use some serious computing power? Say hello to Google's Preemptible Virtual Machines.One of the nice things about having access to hundreds of thousands of computers is that you get to do cool stuff. Arguably, the fact that, with enough creativity, you can use that access to...

Read more
  • Compute
  • Google Cloud
— March 24, 2015

EC2 vs Google Compute Engine: comparing the big players in IaaS

IaaS: EC2 vs Google Compute EngineArguably, 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 maj...

Read more
  • AWS
  • Compute
  • Google Cloud
Igor Putilov
— February 26, 2015

EC2 Pricing: understanding compute costs on AWS

Amazon EC2 pricing considerations (& how to save your money)After a first glance at the pricing page for Amazon EC2, you might find absorbing so much information a little intimidating. In this post we will try to break EC2 pricing down and provide strategies to not only ease the pa...

Read more
  • AWS
  • Compute
— October 23, 2014

Learn Google Compute Engine with our new course!

After the launch of our first course introducing the Google Cloud Platform, our expert David Clinton is back with a brand new course to learn Google Compute Engine. We just launched it, and you can watch it on CloudAcademy.Google is one of the hottest cloud platform, probably the most ...

Read more
  • Compute
  • Google Cloud

Deploying a MEAN Stack Onto Google Compute Engine

Gone are the days where a product team used to spend a considerable amount of time to build a basic web application.  Say Hi to MEAN! If you are familiar with LAMP/WAMP stacks, you could consider MEAN as a complete stack based on JavaScript. In fact, MEAN represents: MongoDB, ...

Read more
  • Azure
  • Compute
— July 21, 2014

How to Identity and Access Management works in Google Compute Engine

Google Cloud Platform is gaining momentum, and it seems that Google is warming up to compete with Amazon Web Services. During the last quarters Google has invested heavily on new services and features for both Google App Engine and Google Compute Engine. Like any other cloud computing p...

Read more
  • Compute
  • Google Cloud
— July 14, 2014

Load Balancing in Google Compute Engine

Load balancing is an important feature of cloud infrastructure services. With the ability to rapidly launch VMs, it is important to ensure that all the VMs are evenly utilized. Amazon’s Elastic Load Balancer (ELB) is quite popular for its ability to route the traffic across a set of ins...

Read more
  • Compute
— July 4, 2014

Overview of Replica Pools in Google Compute Engine

Cloud is all about elasticity. Cloud infrastructure running web-scale applications can shrink and grow dynamically. Batch processing on cloud will have to deal with on-demand instantiation of the machines based on the load.Google Compute Engine is a high performance, next generation Ia...

Read more
  • Compute