Google Cloud Platform (GCP) lets you choose from computing, storage, networking, big data, and machine learning (ML) services to build your application on top of them. Clients are given a variety of options when it comes to computing in GCP. Depending on our requirements and flexibility, we can choose from one of the following service models:
• Infrastructure as a Service (IaaS): Google Compute Engine (GCE)
• Container as a Service (CaaS): Google Kubernetes Engine (GKE)
• Platform as a Service (PaaS): Google App Engine (GAE)
• Function as a Service (FaaS): Cloud Functions
• Google Compute Engine (GCE): GCE is an IaaS offering. It allows the most flexibility as it provides compute infrastructure to provision VM instances. This means that you have full control of the instance hardware and operating system. You can use standard GCP images or your own custom image. You can control where your VMs and storage are located in terms of regions and zones. You have granular control over the network, including firewalls and load balancing. With the use of an instance group, you can autoscale your control and your capacity as needed. Compute Engine is suitable in most cases, but might not be an optimal solution.
• Google Kubernetes Engine (GKE): GKE is a CaaS offering. It allows you to create Kubernetes clusters on demand, which takes away all of the heavy lifting of installing the clusters yourself. It leverages Compute Engine for hosting the cluster nodes, but the customer does not need to bother with the infrastructure and can concentrate on writing the code. The provision cluster can be automatically updated and scaled. The GCP software-defined networks are integrated with GKE and allow users to create network objects, such as load balancers, on demand when the application is deployed. Several services integrate with GKE, such as a container repository, which allows you to store and scan your container images.
• Google App Engine (GAE): GAE is a PaaS offering. It allows you to concentrate on writing your code, while Google takes care of hosting, scaling, monitoring, and updates. It is targeted at developers who do not need to understand the complexity of the infrastructure.
• Function as a Service (FaaS): Cloud Functions is an FaaS offering. It allows you to concentrate on writing your functions in one of the supported languages. It is ideal for executing simple tasks for data processing, mobile backends, and IoT. This service is completely serverless and all of the layers below it are managed by Google. The functions can be executed using an event trigger or HTTP endpoint.
Click on the link to access our Google Cloud Platform (GCP) training catalog.