Introduction to Google Compute Engine

The course is part of this learning path


This course will introduce you to the Google Compute Engine. 

Learning Objectives

  • What Google Compute Engine is
  • How it differs from the other Google compute offerings
  • How to create virtual machine instances from scratch, from a template, and from a machine image

Intended Audience

  • Cloud Architects
  • System Administrators
  • GCP Developers
  • Anyone preparing for a Google Cloud certification


  • Basic understanding of Virtual Machines
  • Access to a GCP account



Google Cloud Platform offers a wide range of tools and services, each designed for a particular purpose. Cloud storage is for storing files, Apigee is for building APIs, and Pub/Sub is for sending messages between applications. But if there's one service that can do it all, then it's Google Compute Engine. Compute Engine allows you to provision and use Virtual Machines running on Google Cloud Platform. Essentially, you can design and build your own custom data center in the cloud. So, whether you need something simple like a single VM for testing, or if you need to create a complex multi-tiered production environment, Compute Engine has you covered.

Now, Compute Engine gives you almost complete control. You can create a wide array of servers and each one can be configured exactly as you see fit. You get to pick your hardware, operating system, and then install whatever applications you need. Compute Engine has lots of pre-configured machine types for you to choose from.

There are general purpose machines that are great for hosting websites or running virtual desktops. Compute-optimized machines are ideal for performance-intensive tasks, like media transcoding or running simulations. There are memory-optimized machines that are well-suited for creating large in-memory databases. And finally, accelerator-optimized machines come equipped with powerful GPUs and can make quick work out of any graphic rendering or machine learning workloads. Also, if none of the preconfigured machines will work, then Google even allows you to create your own custom machine types as well. Just pick the number and type of CPUs and add as much memory as you need. Compute Engine offers the deepest levels of customization and control. Now, that's not to say that it's the best tool for every situation. If you just need to run a container, Cloud Run is much easier and quicker to use. Likewise, you should probably use Cloud Functions if you just want to run a small amount of code.

Now, neither one of these services require provisioning hardware or configuring an operating system. Now, if you need to do something a little bit more complex, App Engine provides a much simpler way to run web-based applications. But ultimately, Compute Engine is the Swiss Army knife of computing. It's not always the easiest or most effective tool, but it can do just about anything. Cloud Engine has many other benefits as well. While it does require a bit more manual work, anything you build is going to be much more portable. If vendor lock-in is a big concern of yours, then I suggest just building everything inside of Virtual Machines. That way, you can move your services around between different cloud vendors, and it won't require any major reengineering. I think the best part about Compute Engine is that it can save you a lot of money. Building and maintaining your own physical servers can be both expensive and labor-intensive. Now with Compute Engine, you only pay for what you use.

So, that means you can try out new things without any upfront costs. Also, you can start out small, and if your new product is successful, then you can scale things up. Now, if for some reason the product doesn't do as well as you hoped, you can scale things down and try something else. Also, Compute Engine offers you several ways of getting a discount. There are sustained-use discounts that are automatically applied when you use certain machine types for a significant portion of the billing month. Or if you have predictable use patterns, you can sign up for a committed-use discount over a 1-3 year period. And if you're looking to save money over the short term, you should consider Spot VMs. These costs significantly less than the normal VMs. However, the tradeoff with Spot VMs is that they're not dedicated machines and they can be shut down at any time. So, these are best used for fault tolerant workloads like batch jobs. So, if you're considering moving to the cloud, then I think a great first step would be to learn how to create a Virtual Machine using Compute Engine.


About the Author
Learning Paths

Daniel began his career as a Software Engineer, focusing mostly on web and mobile development. After twenty years of dealing with insufficient training and fragmented documentation, he decided to use his extensive experience to help the next generation of engineers.

Daniel has spent his most recent years designing and running technical classes for both Amazon and Microsoft. Today at Cloud Academy, he is working on building out an extensive Google Cloud training library.

When he isn’t working or tinkering in his home lab, Daniel enjoys BBQing, target shooting, and watching classic movies.