GCP Certification-let’s sail together.Structuredplan with sections:Computing Products.

Chaskarshailesh
Javarevisited
Published in
9 min readFeb 9, 2022

Hi All,

Get to know the Google Cloud certifications in 1 minute | Google Cloud Blog

I hereby present you a structured plan with sections as a reference for Cloud aspirants who are planning for Solutions Architect Certification.

Get the basics covered:

  1. Introduction to Cloud Computing
  2. Overview of different Cloud Platforms (AWS/Azure/GCP) — A good comparison Compare AWS and Azure services to Google Cloud
  3. Overview of Google Cloud Platform and its available products

Get a feel of Google Cloud products: Product Cheat sheet

  1. Networking Products
  2. Computing Products
  3. Database Products
  4. Storage Products
  5. Containers
  6. Developer Tools
  7. Security and Identity Products

…..many more, but this should be good to get you started and keep adding through your journey.

Before getting hands-on get acquainted with

  1. Google Cloud Console
  2. Google Cloud shell Command Line tool is the primary CLI tool to create and manage Google Cloud resources
  3. Google Cloud Storage gsutil to access it
  4. bq command-line tool — Python-based command-line tool for BigQuery.
  5. Regions and zones and Global Locations

* — — — — — — — — — — — — Compute Start — — — — — — — — — *

Compute Options —

  1. Compute Engine — A managed environment for deploying virtual machines
  2. Kubernetes Engine — A managed environment for deploying containerized applications
  3. App Engine — A managed serverless platform for deploying applications
  4. Cloud Functions — A managed serverless platform for deploying event-driven functions
  5. Cloud Run — Develop and deploy highly scalable containerized applications on a fully managed serverless platform.

Refer : Application Hosting Options

* — — — — — — — — — — — — Compute continues— — — — — — — — — *

Compute Engine: Virtual Machines (VMs)

Autoscaling groups of instances

  1. Based on CPU utilization
  2. Based on Load Balancing serving Capacity
  3. Based on Cloud Monitoring Metrics
  4. Based on Schedules
  5. Based on predictive auto scaling — on CPU utilization

* — — — — — — — — — — — — Compute continues — — — — — — — — — *

Google Kubernetes Engine — Must to browse — The Twelve-Factor App

Basics before you deep dive :-

  1. Virtualization vs Containerization
  2. Docker
  3. Docker Hub
  4. Docker Desktop
  5. Containers
  6. kubectl
  7. GKE
  8. HELM Package Manager
  9. HELM Chart
  10. pod-level scaling — Refer Autoscaling with GKE: Clusters and nodes
    Horizontal Pod Autoscaling
    Vertical Pod Autoscaling
  11. node-level scaling — Refer Autoscaling with GKE: Clusters and nodes
    Cluster Autoscaler (horizontal infrastructure solution)
    Node Auto Provisioning (vertical infrastructure solution)
  12. Kubernetes controller objects
  13. GKE Object — Services

Good reference : Kubernetes NodePort vs LoadBalancer vs Ingress? When should I use what?

* — — — — — — — — — — — — Compute continues — — — — — — — — — *

Services provide load-balanced access to specified Pods. There are three primary types of Services:

● ClusterIP: Exposes the service on an IP address that is only accessible from within this cluster. This is the default type.

● NodePort: Exposes the service on the IP address of each node in the cluster, at a specific port number. Can be accessed from outside the Cluster.

● LoadBalancer: Exposes the service externally, using a load balancing service provided by a cloud provider. Can be accessed from outside the Cluster.

GKE provides three different types of load balancers to control access and to spread incoming traffic across your cluster as evenly as possible. You can configure one Service to use multiple types of load balancers simultaneously.

  • External load balancers manage traffic coming from outside the cluster and outside your Google Cloud VPC network. They use forwarding rules associated with the Google Cloud network to route traffic to a Kubernetes node.
  • Internal load balancers manage traffic coming from within the same VPC network. Like external load balancers, they use forwarding rules associated with the Google Cloud network to route traffic to a Kubernetes node.
  • HTTP(S) load balancers are specialized external load balancers used for HTTP(S) traffic. They use an Ingress resource rather than a forwarding rule to route traffic to a Kubernetes node.

* — — — — — — — — — — — — Compute continues — — — — — — — — — *

Benefits of GKE:-

GKE Sketch Note

* — — — — — — — — — — — — — Auto Scaling — — — — — — — — — — — *

GKE handles autoscaling scenarios by using features like the following: Refer Autoscaling with GKE: Clusters and nodes

* — — — — — — — — — — — — Modes of Operaton— — — — — — — — — — *

GKE modes of Operation

  1. Auto Pilot : Google manages the cluster and node infra (Regional scope).
  2. Standard : Customer manages the cluster and node infra (Regional and Zonal scope).

* — — — — — — — — — — — — Compute continues — — — — — — — — — *

GKE Clusters:

  1. zonal_clusters

a. single-zone_clusters

b. multi-zonal_clusters

2. regional_clusters — preferable for production workload as it offers HA

3. Private clusters — A private cluster is a type of VPC-native cluster that only depends on internal IP addresses. Nodes, Pods, and Services in a private cluster require unique subnet IP address ranges.

4. Multi Cluster Ingress -is a cloud-hosted multi-cluster Ingress controller for GKE clusters. It’s a Google-hosted service that supports deploying shared load balancing resources across clusters and across regions.

Good reference Multi-Cluster Ingress with Google Kubernetes Engine

5. Container-native load balancing — enables several kinds of load balancers to target Pods directly and to evenly distribute traffic to Pods.

6. Network endpoint groups overview — NEG : is a configuration object that specifies a group of backend endpoints or services. A common use case for this configuration is deploying services in containers.

* — — — — — — — — — — — — Compute continues— — — — — — — — — *

Google App Engine — is a fully managed, serverless platform for developing and hosting web applications at scale. You can choose from several popular languages, libraries, and frameworks to develop your apps, and then let App Engine take care of provisioning servers and scaling your app instances based on demand.

  1. Google App Engine Flexible Environment
  2. Google App Engine Standard Environment

* — — — — — — — — — — — — Compute continues — — — — — — — — — *

Cloud Run — Develop and deploy highly scalable containerized applications on a fully managed serverless platform.

Important feature — container instance autoscaling : each revision is automatically scaled to the number of container instances needed to handle all incoming requests. When a revision does not receive any traffic, by default it is scaled into zero container instances.

In addition to the rate of incoming requests, the number of instances scheduled is impacted by:

* — — — — — — — — — — — — Compute continues — — — — — — — — — *

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.

Knowing IOT Core and invocation via Cloud functions is very handy.

IoT CoreA fully managed service to easily and securely connect, manage, and ingest data from globally dispersed devices.

* — — — — — — — — — — — — Compute ends— — — — — — — — — *

FYI — Google Cloud Platform Service Level Agreements

Way to go…..let’s sail together.

* — — — — — — — — — — — — — Questions — — — — — — — — — — — *

To make it exciting I would list some questions here, would encourage you to answer in the comments section: -

Answer : Check comments

Q1. Your company just finished a rapid lift and shift to Google Compute Engine for your computing needs. You have another 9 months to design and deploy a more cloud-native solution. The business team is looking for services with lesser responsibility and easy manageability. Please select the order of services with lesser responsibility to more responsibility.a. GKE > Google App Engine Standard Environment > Cloud Functions > Compute Engine with containers > Compute Engine
b. Cloud Functions > Google App Engine Standard Environment > GKE > Compute Engine with containers > Compute Engine
c. Google App Engine Standard Environment > Cloud Functions>Compute Engine with containers > GKE > Compute Engine
d. Cloud Functions > GKE > Google App Engine Standard Environment > Compute Engine > Compute Engine with containers
Q2.You work for an organization called QwikCloud. Your organization has decided to implement continuous integration and delivery (CI/CD) pipeline on Google Cloud Platform using only managed services and the popular GitOps methodology. The architecture includes many containerized microservices that are updated frequently and rolled back. Please select the GCP services that should be used in order build the CICD pipeline and to host the containerized workloads.a. Cloud Storage, Cloud Dataflow, Compute Engine
b. Cloud Source repositories, Jenkins on Compute Engine, Container Registry, Google Kubernetes Engine
c. BitBucket, Cloud Build, Container Registry, Google Kubernetes Engine
d. Cloud Source repositories, Cloud Build, Container Registry, Google Kubernetes Engine
Q3. You have an application running on a managed instance group. To ensure that your application will handle the load even if an entire zone fails, what should you do? Select all correct options.a. Don't create the "Multizone" managed instance groups.
b. Spread your managed instance group over two zones and overprovision by 100%. (for Two Zone)
c. Overprovision your regional managed instance group by at least 50%. (for Three Zones)
d. Create a regional unmanaged instance group and spread your instances across multiple zone
Q4. Your company’s test suite is a custom C++ application that runs tests throughout each day on Linux virtual machines. The full test suite takes several hours to complete, running on a limited number of on-premises servers reserved for testing. Your company wants to move the testing infrastructure to the cloud, to reduce the amount of time it takes to fully test a change to the system while changing the tests as little as possible. Which cloud infrastructure should you recommend?a. Google Cloud Dataproc to run Apache Hadoop jobs to process each test
b. Google App Engine Standard with Google Stackdriver for logging
c. Google Compute Engine managed instance groups with auto-scaling
d. Google Compute Engine unmanaged instance groups and Network Load Balancer
Q5. Your customer is receiving reports that their recently updated Google App Engine application is taking approximately 30 seconds to load for some of their users. This behaviour was not reported before the update. What strategy should you take?a. Rollback to an earlier known good release, then push the release again at a quieter period to investigate. Then use Cloud Trace and Logging to diagnose the problem.
b. Rollback to an earlier known good release initially, then use Cloud Trace and Logging to diagnose the problem in a development/test/staging environment.
c. Work with your ISP to diagnose the problem.
d. Open a support ticket to ask for network capture and flow data to diagnose the problem, then roll back your application.
Q6. You are creating a single preemptible VM instance named “preempt-vm” to be used as scratch space for a single workload. If your VM is preempted, you need to ensure that disk contents can be re-used. Which gcloud command would you use to create this instance?a. gcloud compute instances create "preempt-vm" –preemptible –boot-disk-auto-delete=no
b. gcloud compute instances create "preempt-vm" –no-auto-delete
c. gcloud compute instances create "preempt-vm" –preemptible –no-boot-disk-auto-delete
d. gcloud compute instances create "preempt-vm" –preemptible

* — — — — — — — — — — Questions End — — — — — — — — — — *

--

--

Chaskarshailesh
Javarevisited

I am a Site Reliability Engineer aspirant Cloud Solutions Architect. Further exploring the horizon into MLOps