I attended the Google cloud summit Bangalore’19 which piqued my interest in Google Cloud Platform. Given the interest and demand around multi-cloud experience in the industry, I decided to dive in.
I’ve 3+ years of managing cloud infrastructure in AWS, so I’m familiar with the concept of Compute, Storage, Networking offerings in Cloud platforms.
One of the advantages of attending summits, events is you get to meet different people, gain industry knowledge which you might not get in the work. Coursera had a live talk and booth on Google Cloud courses offering.
I got to talk to one of their representatives, enquired him about how should I get into GCP, given I have working experience in AWS. He recommended to checkout the Coursera course — ‘GCP for AWS professionals’, which gave me a good overview of GCP’s main offerings in comparison with AWS offerings.
Then I did the complete Coursera Specialization of Architecting with Google Cloud Platform Specialization.
This specialization has 6 courses with many Qwiklabs practical labs. The labs really helped me in understanding how to create compute instances, GKE, subnets, firewalls, IAM roles etc. The videos are short and crisp (2–3 mins), they wasted no time and gave me good hands on experience in all the main services of GCP. I finished all the 6 courses in a month to complete the specialization in the free month itself. Looking back, I feel I shouldn’t rushed it as I could’ve absorbed more knowledge by taking it slowly.
Use this link to get 1 month free on the specialization: https://www.coursera.org/promo/summit19
Linux Academy and ACloudGuru
The Coursera specialisation is designed to give you deep exposure on GCP’s services and not specifically tailored towards the certification. Since my objective is to do the GCP certification, I checked out the certification courses offered by the usual suspects “Linux Academy” and “Acloudguru”.
Both courses helped me to learn how to provision services/resources, interacting with GCP in CLI/SDK, day to day operations stuff, etc.
Linux Academy: https://linuxacademy.com/course/google-cloud-certified-associate-cloud-engineer/
GCP associate cloud engineer certification is designed to test your knowledge on creating/managing projects/billing accounts, IAM, deploying applications, using console/cli to perform operations, monitoring and high-level understanding of all service offerings.
Projects: Organizational hierarchy — Organization, Folders, Projects, Resources. How to create, manage projects, move projects to a folder, create project level permissions, services bound to projects scope.
Billing accounts: Create/manage billing accounts, move projects to new billing accounts, how to set up budgets/alerts for the billing accounts, billing exports.
IAM: Important topic. Create users, groups, service accounts — assign IAM roles to them. Different types of IAM roles, creating custom IAM roles, copy an IAM role to different project, when to use. Always provide a solution based on least privilege principle.
Service accounts: How to create service accounts, assign roles to them, assign service account to an instance, limit service accounts scopes.
CLI: Very important one. You should be familiar with general gcloud cli commands. How to configure default zone/region/project, switch between multiple profiles, projects, launch an instance, deploy cloud functions, create a pod/deployment in kubernetes.
Pricing calculator: To determine the price/approximate cost of the resources. This is not an exact cost, just an estimate.
Fully customisable to Fully managed: Compute engine, Kubernetes engine, App engine, Cloud functions in that order. Choose the appropriate choice given the scenario.
Compute engine: What instance type to choose, how to launch instance using console and glcoud, add ssh key to an instance (project wise), create an autoscaling managed instance group using instance template, taking snapshots of disks, creation of image using snapshots/disks/custom ami, etc
Kubernetes Engine: Deploy a GKE cluster, list and deploy pod/deployments/services, resizing nodes/pods, auto upgradation of GKE nodes. Relevant gcloud, kubectl cli commands. Usage of GCR.
App Engine: Standard vs Flexible — which one to choose. How to split traffic between two versions, roll back to previous version.
Cloud Functions: Deploy a cloud function, supported languages, CF trigger — pub/sub events, schedule, http request, Cloud storage object change notification.
SQL offerings: Cloud SQL, Cloud Spanner
No-SQL: Cloud datastore, Cloud Big table
Blob: Cloud storage
Cloud storage classes: Multi-regional, regional, nearline, coldline. Know what are the features/use cases of each classes. How to set acl, make bucket/objects public, create signed urls, setup lifecycle policies, using gsutil cli to perform cloud storage operations, etc.,
Network resources: How to create VPC with subnets (auto, custom mode), expand the subnets, use network tags, firewall rules, static ip address, different Load balancer options — global vs regional, external vs internal load balancers.
Add a subnet to existing vpc, create a vpn between google vpc and external network, cloud DNS.
Stack driver: Important topic. How to create stackdriver alerts, create custom metrics, viewing logs, debug an application issue, tracing, exporting logs to Bigquery/Cloud storage, uptime checks, etc.,
Cloud launcher: Use case of cloud launcher marketplace solution. Readily available pre-baked images.
Deployment manager: Supported formats — Python, jinja2, yaml. How to deploy/update using cli.
Google associate cloud engineer certification tests your fundamental knowledge of cloud computing and offerings of GCP. One should be familiar with all the offerings, use cases, perform day to day operations using cli/gcloud.
I hope you find this post useful. Feel free to share your questions, comments and feedback.