Editor’s Note: This is the second in a series of blog posts by Google Certified Trainers Ben Finkel and Garth Schulte that will explore Google Cloud Platform.
Compute in the Google Cloud Platform encapsulates two popular cloud computing models, Infrastructure-as-a-Service (IaaS) and Platform-as-a-Service (PaaS), as well as an exciting up-and-coming third model, Containers-as-a-Service (CaaS). These services can be used individually, mashed together with other Google services, or even integrated with on-premise workloads — to give us a truly dynamic infrastructure for our solutions. Now, let’s demystify each one!
Google Compute Engine (GCE): Virtual machines in the cloud. Administrators spend a good portion of their time managing the physical aspects of a datacenter, right? Not anymore! Hardware-hosted and managed by Google, this software that’s fully controlled by you removes the administrative overhead of managing that physical layer. Abstracting and separating the physical layer, along with some of the great tools GCE provides, opens up new possibilities for dynamically provisioning your virtual machines to the exact state you want them at a moment’s notice. Imagine trying to accomplish that in your physical data center? Yikes! Google’s mindset has always been, “failure is the norm.” With the separation of state and machine, we can now apply that way of thinking to our own infrastructure. Development with GCE components is like playing with a box of datacenter Lego bricks, making it incredibly simple to build, manage, and combine each piece of the puzzle into a fully functional solution!
Google App Engine (GAE): Applications in the cloud. Developers spend a good portion of their time testing, managing, and supporting the environment their applications ultimately end up living on. But not anymore! GAE abstracts the environment by providing a fully managed platform packaged with the runtimes and dependencies that our applications need to run — and that’s only the beginning. It supports many popular programming languages (Java, Python, PHP, Go), is loaded with built-in services common (and even uncommon) to all applications (memcache, task queues, oauth), and gives us an easy way to store data in any format (structured, unstructured, binary). It’s also loaded with productivity features that make building all layers of an application simple, whether that’s working with data in the back-end, accessing an API in the middle-tier, or wiring up the UI in a front-end. GAE provides the tools and environment for a painless development process. The bottom line is that PaaS and GAE can enhance developers’ lives, giving them more time to focus and innovate within applications, rather than managing and supporting the environment outside of applications.
Google Container Engine (GKE): Docker containers in the cloud. The next phase in virtualization is taking place at the operating system level — the layer directly above hardware, allowing multiple applications to live independently on the same host exactly like the first phase of virtualization, where multiple hosts live on the same hardware. Applications are packed into containers, a self-contained environment that includes your application and everything it needs to run, allowing an operating system to become a multi-tenant host for applications. GKE, with the help of Kubernetes, schedules, deploys, and runs containers on top of a fully managed cluster of Compute Engine virtual machines. This all equates to developers spending less time on deployment and administrators spending less time on infrastructure. It’s a win-win situation destined for greatness.
The Google Cloud Platform provides a rich and flexible set of Compute options that anyone can use to quickly and efficiently host machines, build applications, and automate cloud infrastructures — all under the pay-as-you-go model, making it extremely cost effective and time friendly versus traditional methods of building IT solutions. It’s incredible to think that your solutions are running on Google’s high-speed, planet-wide private network; the same network and technology that Google’s very own products run on! It’s easy to get started and feel the power of Google at your fingertips!
We’ll see you next time when Ben Finkel digs into and demystifies all of the Google Cloud Platform’s storage options!
Psst! Want to explore GCP further? Browse our entire library of Google Cloud training!