Overview
Learn how to deploy and manage containerized applications on Google Kubernetes Engine (GKE). Learn how to use other tools on Google Cloud that interact with GKE deployments. This course features a combination of lectures, demos, and hands-on labs to help you explore and deploy solution elements—including infrastructure components like pods, containers, deployments, and services—along with networks and application services. You’ll also learn how to deploy practical solutions, including security and access management, resource management, and resource monitoring.
- Cloud architects, administrators, and SysOps/DevOps personnel
- Individuals using Google Cloud to create new solutions or to integrate existing systems, application environments, and infrastructure with Google Cloud.
Prerequisites
Completed “Google Cloud Fundamentals: Core Infrastructure” or have equivalent experience
Delegates will learn how to
- Understand how software containers work.
- Understand the architecture of Kubernetes.
- Understand the architecture of Google Cloud.
- Understand how pod networking works in Google Kubernetes Engine.
- Create and manage Kubernetes Engine clusters using the Google Cloud Console and gcloud/kubectl commands.
- Launch, roll back, and expose jobs in Kubernetes.
- Manage access control using Kubernetes RBAC and IAM.
- Manage pod security policies and network policies.
- Use Secrets and ConfigMaps to isolate security credentials and configuration artifacts.
- Understand Google Cloud choices for managed storage services.
- Monitor applications running in Google Kubernetes Engine.
Outline
Module 1 Introduction to Google Cloud
- Use the Google Cloud Console
- Use Cloud Shell
- Define Cloud Computing
- Identify Google Cloud Compute Services
- Understand Regions and Zones
- Understand the Cloud Resource Hierarchy
- Administer your Google Cloud Resources
Objectives
- Identify Google Cloud services and their function.
- Choose the right Google Cloud services to create your own Cloud solution 1 lab and 1 quiz
Activities
- 1 lab and 1 quiz
- Create a Container Using Cloud Build
- Store a Container in Container Registry
- Understand the Relationship Between Kubernetes and Google Kubernetes Engine (GKE)
- Understand how to Choose Among Google Cloud Compute Platforms
- Create a Container using Cloud Build.
- Store a Container in Container Registry.
- Compare and Contrast Kubernetes and GKE features.
- 1 lab and 1 quiz
- Understand the Architecture of Kubernetes: Pods, Namespaces
- Understand the Control-plane Components of Kubernetes
- Create Container Images using Cloud Build
- Store Container Images in Container Registry
- Create a Kubernetes Engine Cluster
- Conceptualize the Kubernetes Architecture.
- Deploy a Kubernetes Cluster using GKE.
- Deploy Pods to a GKE Cluster.
- View and Manage Kubernetes Objects.
- Conceptualize the Migrate for Anthos process
- 1 lab and 1 quiz
- The Kubectl Command
- Work with the Kubectl Command.
- Inspect the Cluster and Pods.
- View a Pod’s Console Output.
- Sign in to a Pod Interactively.
- 2 labs and 1 quiz
- Deployments
- Ways to Create Deployments
- Services and Scaling
- Updating Deployments
- Rolling Updates
- Blue/Green Deployments
- Canary Deployments
- Managing Deployments
- Jobs and CronJobs
- Parallel Jobs
- CronJobs
- Cluster Scaling
- Downscaling
- Node Pools
- Controlling Pod Placement
- Affinity and Anti-Affinity
- Pod Placement Example
- Taints and Tolerations
- Getting Software into your Cluster
- Create and Use Deployments.
- Create and Run Jobs and CronJobs.
- Scale Clusters Manually and Automatically.
- Configure Node and Pod Affinity.
- Get Software into your Cluster with Helm Charts and Kubernetes Marketplace.
- 3 labs and 1 quiz
- Introduction
- Pod Networking
- Services
- Finding Services
- Service Types and Load Balancers
- How Load Balancers Work
- Ingress Resource
- Container-Native Load Balancing
- Network Security
- Create Services to expose applications that are running within Pods.
- Use load balancers to expose Services to external clients.
- Create Ingress resources for HTTP(S) load balancing.
- Leverage container-native load balancing to improve Pod load balancing.
- Define Kubernetes network policies to allow and block traffic to Pods.
- 2 labs and 1 quiz
- Volumes
- Volume Types
- The PersistentVolume Abstraction
- More on PersistentVolumes
- StatefulSets
- ConfigMaps
- Secrets
- Use Secrets to isolate security credentials.
- Use ConfigMaps to isolate configuration
- Push out and roll back updates to Secrets and ConfigMaps.
- Configure Persistent Storage Volumes for Kubernetes Pods.
- Use StatefulSets to ensure that claims on persistent storage volumes persist across restarts.
- 2 labs and 1 quiz
- Understand Kubernetes Authentication and Authorization
- Define Kubernetes RBAC Roles and Role Bindings for Accessing Resources in Namespaces
- Define Kubernetes RBAC Cluster Roles and ClusterRole Bindings for
- Accessing Cluster-scoped Resources
- Define Kubernetes Pod Security Policies
- Understand the Structure of IAM
- Define IAM roles and Policies for Kubernetes Engine Cluster Administration
- Define IAM roles and policies for GKE.
- Define Kubernetes RBAC roles and role bindings.
- Define Kubernetes pod security policies
- 2 labs and 1 quiz
- Use Cloud Monitoring to monitor and manage availability and performance
- Locate and inspect Kubernetes logs
- Create probes for wellness checks on live applications
- Create forensic logs for systems monitoring.
- Monitor your system performance from different vantage points.
- Create probes for wellness checks on live applications.
- 2 labs and 1 quiz
- Understand Pros and Cons for Using a Managed Storage Service Versus Self-managed Containerized Storage
- Enable Applications Running in GKE to Access Google Cloud Storage Services
- Understand Use Cases for Cloud Storage, Cloud SQL, Cloud Spanner, Cloud Bigtable, Cloud Firestore, and BigQuery from within a Kubernetes Application
- Understand use cases for Cloud Storage within a Kubernetes application.
- Understand use cases for Cloud SQL and Cloud Spanner within a Kubernetes application.
- Understand use cases for Datastore within a Kubernetes application
- Understand use cases for Cloud Bigtable within a Kubernetes application.
- 1 lab and 1 quiz
- CI/CD overview
- CI/CD for Google Kubernetes Engine
- CI/CD Examples
- Manage application code in a source repository that can trigger code changes to a continuous delivery pipeline.
- Create a continuous delivery pipeline using Cloud Build and start it manually or automatically with a code change. Implement a canary deployment that hosts two versions of your application in production for release testing.
- 1 lab