The Google Cloud Platform
This is the second part on Beginners Guide To All You Need To Know About The Google Cloud Platform, be sure to check out the first part before this, for maximum comprehension.
Diving in today, let’s discuss the one of the popular categories of google cloud uses.
Under Google Cloud Compute, we have the following:
- Google App Engine.
- Compute Engine
- Kubernetes Engine (GKE) or GKE
- Cloud Functions
- Cloud Run
App Engine is a Platform as a Service to deploy Java, PHP, Node.js, Python, C#, .Net, Ruby, and Go applications.
The App Engine part of google cloud compute provides a platform allowing customers to develop, run, and manage applications without the complexity of building and maintaining the infrastructure typically associated with developing and launching an app.
So App Engine is for deploying web applications built by developers with languages like Java, Php, Node.Js, Python, C#, .Net, Ruby, and Go
Compute Engine is an Infrastructure as a Service that can be used to run Microsoft Windows and Linux virtual machines.
If you have used or heard about VMware, virtual box, or HyperV, you’ll have a basic understanding of what Google cloud Compute Engine is.
For others who haven’t used that software, if you have heard of bluestacks or memu player, the apps that allow you to use android applications on your computer, then you can also understand what compute engine is.
Compute engine allows you to create virtual machines to act like or emulate physical computers.
Imagine you wanted to run a software that requires you to have a core i7 processor and you don’t have that, you can configure a cloud compute VM instance to have the specifications you want – 124GB ram, 3TB hard drive? All you have to do is select and configure the specs, then create them.
GOOGLE KUBERNETES ENGINE (GKE)
These are containers as a service based on Kubernetes.
A container is a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another.
Imagine it like a hotel room that has everything you need pre-installed. All you have to do is bring in yourself.
In theory, a container has all the requirements needed to run the software installed. All you have to do is bring the code you want to run.
Kubernetes on its own is a portable, extensible, open-source platform for managing containerized workloads and services, that facilitates both declarative configuration and automation.
Let’s recall the hotel analogy we discussed earlier, the hotel
Imagine that when a new customer comes in, your hotel is configured in such a way that the hotel itself would automatically copy and paste an empty room for the new customer.
Whereas the room already has all that the customer needs, so all they need to do is move in. That way you never run out of rooms for new customers.
That’s more like what Kubernetes is.
Kubernetes is like the room that has all that the customer needs to feel at home, so much that all that is needed is the customer.
Cloud Functions as a Service to run event-driven code written in Node.js, Python, or Go.
Think of the google cloud function as a button that does one thing and one thing only.
Google cloud functions are written in code, so you’ll have to know programming to a minimal level.
However, when you want to run it on GCP (google cloud platform), you don’t need a server.
Google Cloud Functions is a serverless execution environment for building and connecting cloud services. With Cloud Functions, you write simple, single-purpose functions that are attached to events emitted from your cloud infrastructure and services. Your function is triggered when an event being watched is fired. Your code executes in a fully managed environment. There is no need to provision any infrastructure or worry about managing any servers.
Using our hotel analogy from part 1 of this blog post again.
Imagine you wanted to get an alert when Kubernetes assigns a new room to a new customer. Then you write a function (or instructions) to ask it to notify you when it assigns a new room. The instruction you gave it is for one thing and one thing only, alert me when you assign a new room.
Also, let’s imagine the customer walks into the room, sits on the bed, lifts the jug of water and finds it empty, gets to the bed in their hotel room, and finds that it’s unkempt…
To automate this you decide to do the following:
A. provide an instruction to the room, stating that it should trigger the lights when the customer walks in.
B. then you provide another instruction to the jug stating that it should notify the hotel waitresses when the jug is empty and without water.
C. You ask the room to notify you if a customer leaves the room with their beds unkempt.
In the above, A, B, and C are cloud functions. Serverless instructions that do one thing and one thing only.
Cloud run is a compute execution environment based on Knative.
knative is an extension of Kubernetes including three major parts: Serving, Build, and Eventing.
And that’s all for the day friends. I hope this was insightful and you have learned a lot.
Feel free to drop your questions, reviews, and suggestions about today’s blog.