https://www.linkedin.com/pulse/google-cloud-certified-associate-engineer-study-guide-tt1gc
Chapter 1: Overview of Google Cloud Platform
- Introduction to GCP services: compute, storage, networking, and specialized services like machine learning products.
- Comparison between cloud computing and on-premise computing.
Types of Cloud Services :
Google-cloud-gcp-storage-public-clouds-types-services
Google-cloud-networking-overview
Chapter 2: Google Cloud Computing Services
Overview of infrastructure services: computing, storage, and networking.
storage-components-google-cloud-platform-gcp-exam-job
Gcp-projects-service-accounts-and Billing Q &A
- Introduction to identity management and related services.
- DevOps topics and tools for deploying and monitoring applications.
- Introduction to specialized services like machine learning.
- Explanation of Google Cloud’s organizational structure, regions, and zones.
- Discussion on Cloud Launcher for deploying packaged applications.
Chapter 3: Projects, Service Accounts, and Billing
- Organizing resources into organizations, folders, and projects.
- Enabling APIs for projects and managing user access controls.
- Creating billing accounts, linking them to projects, and managing costs with budgets and alerts.
- Setting up Stackdriver accounts for monitoring.
Chapter 4: Introduction to Computing in Google Cloud
Introduction-computing-google-cloud
gcp-preemptible-virtual-machines-vms-custom-machine-o2qmc
gcp-introduction-computing-google-cloud
- Overview of computing options: Compute Engine, App Engine, containers, Kubernetes Engine, Cloud Functions, and Firebase.
- Details on each computing option and their use cases.
Chapter 5: Computing with Compute Engine Virtual Machines
- Configuring VMs, selecting CPU, memory, and storage options.
- Using GCP Console, Cloud Shell, and command-line interface to work with VMs.
- Enabling network access to VMs.
Chapter 6: Managing Virtual Machines
- Managing single instances and groups of VMs.
- Overview of instance groups,
- managed vs. unmanaged, and preemptible instances.
- Q & A for managing VMs effectively.
Chapter 7: Computing with Kubernetes
- Introduction to Kubernetes Engine.
- Basics of containers, container orchestration, and Kubernetes architecture.
- Monitoring a Kubernetes cluster with Stackdriver.
- Deploying a Kubernetes cluster and applications.
Chapter 8: Managing Kubernetes Clusters
- Viewing cluster status, managing nodes, pods, and services.
- Management operations using GCP Console, Cloud Shell, and SDK.
- Best practices for managing Kubernetes clusters.
Chapter 9: Computing with App Engine
- Overview of App Engine components and configuration.
- Traffic splitting and autoscaling in App Engine.
Chapter 10: Computing with Cloud Functions
- Introduction to Cloud Functions for event-driven serverless computations.
- Use cases and integration with Pub/Sub and Cloud Storage.
- Monitoring Cloud Function executions with Stackdriver.
Chapter 11: Planning Storage in the Cloud
- Characteristics of storage systems and cost-benefit trade-offs.
- Overview of GCP storage options and guidance for choosing a data store.
Chapter 12: Deploying Storage in Google Cloud Platform
- Creating databases in various GCP storage systems.
- Overview of Cloud Pub/Sub and Cloud Dataproc.
- Guidance on choosing a data store.
Chapter 13: Loading Data into Storage
- Methods for loading data into various GCP storage services.
- Common data loading patterns.
Chapter 14: Networking in the Cloud: Virtual Private Clouds and Virtual Private Networks
- Introduction to basic networking concepts.
- Creating and managing VPCs, VPNs, and load balancers.
Chapter 15: Networking in the Cloud: DNS, Load Balancing, and IP Addressing
- Network management tasks using Cloud Console, Cloud Shell, and Cloud SDK.
Chapter 16: Deploying Applications with Cloud Launcher and Deployment Manager
- Introduction to Cloud Launcher and Deployment Manager.
- Deploying applications and automating deployment with templates.
Chapter 17: Configuring Access and Security
- Identity management, roles, and service accounts.
- Viewing audit logs and guidelines for configuring access control security.
Chapter 18: Monitoring, Logging, and Cost Estimating
- Overview of Stackdriver services for monitoring, logging, and debugging.
- Using Pricing Calculator for estimating costs in GCP.
--
47
gcloud command structure - Playing with Services
gcloud GROUP SUBGROUP ACTION
⁃ GROUP -config or compute or container or dataflow or functions or iam or ..
○ Which service group are you playing with?
SUBGROUP - instances or images or instance-templates or machine-types or regions or zones
○ Which sub group of the service do you want to play with?
ACTION - create or list or start or stop or describe or
...
○ What do you want to do?
Examples: https://cloud.google.com/sdk/gcloud/reference/compute/instances/create
gcloud compute instances list
gcloud compute zones list
gcloud compute regions list
gcloud compute machine-types list
gcloud compute machine-types list --filter="zone:us-central1-b"
gcloud compute machine-types list --filter="zone:( us-central1-b europe-west1-d )"
-
49
-
Creating Compute Instances
gcloud compute instances create
gcloud compute instances create [NAME]
Options:
-machine-type (default type is n1-standard-1- gcloud compute machine-types list)
--custom-cpu --custom-memory --custom-vm-type(n1/n2) (Custom Machine)
○ -- custom-cpu 6 --custom-memory 3072MB--custom-vm-type n2
--image or --image-family or --source-snapshot or --source-instance-template or --source-machine-image (beta)
--service-account or --no-service-account
--zone=us-central1-b
--tags (List of tags - Allow network firewall rules alia and routes routes to to be be applied applied to VM instances)
-preemptiblen
--restart-on-failure(default)--no-restart-on-failure--maintenance-policy(MIGRATE(default)/TERMINATE)
--boot-disk-size, --boot-disk-type --boot-disk-auto-delete(default) --no-boot-disk-auto-delete
--deletion-protection -- no-deletion-protection(default)
-- metadata/metadata-from-file startup-script/startup-script-url
--metadata-from-file startup-script=/local/path/to/script/startup OR metadata startup-script="echo "hello world'"
shutdown-script
--network--subnet--netyork-tier (PREMIUM (default), STANDARD)
--accelerator="type=nvidia-tesla-v100,count=8"--metadata="install-nvidia-driver=True" (GPU)
-
50
-
Compute Instances - Default Region and Zone
Three Options:
Option 1 (Centralized Configuration): gcloud compute project-info add-metadata
-metadata= [google-compute-default-region=REGION | google-compute-default-zone=ZONE]
Option 2 (Local gcloud configuration): gcloud config set compute/region REGION
Option 3 (Command Specific): --zone or --region in the command
Priority: Option 3 (if exists) overrides Option 2 (if exists) overrides
Option 1
---
51
--
List and Describe commands
Typically list commands are used to list a set of resources
gcloud compute RESOURCES list
◦ gcloud compute images/regions/zones/disk-types list
gcloud compute instances/disks/snapshots list
Most list commands support a few common options
--filter="zone:VALUE"
O
○ --sort-by (NAME, ~NAME)
(https://www.googleapis.com/compute/v1/projects/windows-sql-cloud/global/images/sql-2019-3 dwohIlimages/sal-2019-web-
--uri
windows-2019-dc-v20210112)
gcloud compute images list --sort-by NAME --filter "PROJECT:(windows-cloud ubuntu-os-cloud)"
Typically describe commands are used to describe a specific resource
gcloud compute images describe ubuntu-1604-xenial- v20210203 --project ubuntu-
os-cloud
gcloud compute regions describe us-central1
---
52
--
Playing with Compute Instances - gcloud
Playing with compute instances
gcloud compute instances list/start/stop/delete/reset/describe/move
○ gcloud compute instances start example-instance
gcloud compute instances stop example-instance-1 example-instance-2
gcloud compute instances delete example-instance
○ --delete-disks=VALUE (all or data or boot)
O --keep- disks=VALUE (alld or data or boot)
gcloud compute instances move example-instance-1 --zone us-central1-b --destination-zonf
US-
central1-f
Move a VM from one zone to another
---
53
---
gcloud compute instances create
Creating Compute Instances
gcloud compute instances create [NAME]
Options:
-machine-type (default type is n1-standard-1- gcloud compute machine-types list)
--custom-cpu --custom-memory --custom-vm-type(n1/n2) (Custom Machine)
○ caustom-cpu 6 --custom-memory 3072MB --custom-vm-type n2
--image or --image-family or --source-snapshot or --source-instance-template or --source-machine-image (beta)
--service-account or --no-service-account
--zone=us-central1-b
--tags (List of tags - Allow network firewall rules and routes to be applied to VM instances)
-preemptible
○ --restart-on-failure(default)--no-restart-on-failure--maintenance-policy(MIGRATE(default)/TERMINATE)
--boot-disk-size, --boot-disk-type --boot-disk-auto-delete(default) --no-boot-disk-auto-delete
--deletion-protection -- no-deletion-protection(default)
--metadata/metadata-from-file startup-script/startup-script-url
--metadata-from-file startup-script=/local/path/to/script/startup OR -metadata startup-script="echo 'hello world'"
shutdown-script
--network--subnet --network-tier (PREMIUM (default), STANDARD)
--accelerator="type=nvidia-tesla-v100,count=8" --metadata="install-nvidia-driver=True" (GPU)
*****
Playing with Instance Templates
gcloud compute instance-templates create/delete/describe/list
gcloud compute instance-templates create INSTANCE-TEMPLATE
--source-instance=SOURCE_INSTANCE --source-instance-zone (Which instance to create a template
from?)
Supports almost all options supported by gcloud compute instances create [NAME]
--image or - image-family or --source-snapshot or --source-instance-template
--service-account or --no-service-account
--tags
--preemptible
-- restart-on-failure(default) --no-restart-on-failure --maintenance-policy(MIGRATE(default)/TERMINATE)
--boot-disk-size,--boot-disk-type --boot-disk-auto-delete(default)--no-boot-disk-auto-delete
--deletion-protection--no-deletion-protection(default)
◦ metadata/metadata-from-file startup-script/startup-script-url
○ --network--subnet--network-tier (PREMIUM (default), STANDARD)
--accelerator="type=nvidia-tesla-v100,count=8"--metadata="install-nvidia-driver=True" (GPU)
----
55
--------
How do you create a group of VM instances?
Instance Group - Group of VM instances managed as a single entity
○ Manage group ofsimilar VMs having similar lifecycle as ONE UNIT
Two Types of Instance Groups:
Managed:Identical VMs created using a template:
◦ Features: Auto scaling, auto healing and managed releases
Unmanaged:Different configuration for VMs in same group:
◦ Does NOT offer auto scaling, auto healing & other services
◦ NOT Recommended unless you need different kinds of VMs
Location can be Zonal or Regional
Regional gives you higher availability (RECOMMENDED)
Compute Engine
---
56
----
Managed Instance Groups (MIG)
Managed Instance Group - Identical VMs created
using an instance template
Important Features:
Maintain certain number of instances
○ If an instance crashes, MIG launches another instance
Detect application failures using health checks (Self Healing)
Increase and decrease instances based on load (Auto Scaling)
Add Load Balancer to distribute load
Create instances in multiple zones (regional MIGs)
○ Regional MIGs provide higher availability compared to zonal MIGs
Release new application versions without downtime
Rolling updates: Release new version step by step (gradually). Update a
percentage of instances to the new version at a time
◦ Canary Deployment: Test new version with a group of instances before releasing it across all instances.
Compute Engine
---
57
---
Creating Managed Instance Group (MIG)
Instance template is mandatory
Configure auto-scaling to automatically adjust number of
instances based on load:
Minimum number of instances
Maximum number of instances
Autoscaling metrics: CPU Utilization target or Load Balancer Utilization
target or Any other metric from Stack Driver
○ Cool-down period: How long to wait before looking at auto scaling metrics again?
◦ Scale In Controls: Prevent a sudden drop in no of VM instances
Example: Don't scale in by more than 10% or 3 instances in 5 minutes
Autohealing: Configure a Health check with Initial delay (How long should
you wait for your app to initialize before running a health check?)
Time for a Demo MIG
---
59
---
Updating a Managed Instance Group (MIG)
Rolling update - Gradual update of instances in an
instance group to the new instance template
Specify new template:
○ (OPTIONAL) Specify a template for canary testing
Specify how you want the update to be done:
When should the update happen?
Start the update immediately (Proactive) or hen instance roup i resized
later(Opportunistic)
How should the update happen?
○ Maximum surge: How many instances are added at any point in time?
○ Maximum unavailable: How many instances can be offline during the update?
Rolling Restart/replace: Gradual restart or replace of
all instances in the group
No change in template BUT replace/restart existing VMs
Configure Maximum surge, Maximum unavailable and What you
want to do? (Restart/Replace)
---
60
---
No comments:
Post a Comment