4. In this session, we will take an
overview of Google Kubernetes
Engine (GKE).
GCCP Camp Facilitator
Rupak Biswas
3rd Year, BTech
IIT Patna
Google Cloud Career Practitioner Campaign
5. Event
Agenda 10 min
1
2 Kubernetes and GKE
3 Serverless Compute Options
4 Q&A
Containers
20 min
20 min
10 min
6. Your training schedule
Session 1
(10th Nov 2022)
In this session, we will
cover about Cloud
Technology in general,
GCP Overview and how
you can get started and
access GCP.
Session 4
(1st Dec 22)
Introduction to Docker and
Kubernetes. Overview of
Google Kubernetes Engine
(GKE).
You are here!
Session 2
(17th Nov 2022)
In this session, we look at
the IaaS (Compute Engine) ,
PaaS (App Engine) , FaaS
(Cloud Functions) and CaaS
(GKE) compute offerings on
GCP. We also look at IAM
and Storage in General.
Session 3
(24th Nov 2022)
Look at various Networking
Options.We also look at
Google Cloud Monitoring
and tools available in the
Cloud Operations Suite.
8. What are containers?
Containers are a method of packaging an application executable and
its dependencies (runtime, system tools, system libraries,
configuration),
and running the package as a set of resource-isolated processes
Buzzwords associated with containers
● Lightweight
● Portable/Standard
● Productivity
● Secure
9. Containers
• Any Language
• Any Library
• Any Binary
• Ecosystem of base images
.js .rb .go
.py .sh …
0 1 0
1 0 0
1 1 1
10. Proprietary + Confidential
But why Containers?
Containers are a great choice when your biggest priority
is to maximize the number of apps running on a minimal
number of servers, and fast app deployments
Benefits of Containers:
● Less overhead
● Reduce IT management resources
● Portability
● Efficiency
● Better app development experience
11. Docker
● Dominant container tool
● Released OSS in 2013 by DotCloud Inc. (hosted PaaS)
● Made it easy and fast to create and run container images
● Spread like wildfire
12. Everything at Google runs in containers
• Gmail, Web Search, Maps, ...
• MapReduce, batch, ...
• GFS, Colossus, ...
• Even Google’s Cloud Platform: Our
VMs run in containers
We launch
over 4 billion
containers
per week
13. Deploying containers at scale is different!
A fundamentally different way of managing
applications requires different tooling and
abstractions
● Deployment
● Management, monitoring
● Isolation
● Updates
● Discovery
● Scaling, replication, sets
14. Kubernetes
Greek for “Helmsman”; also the root of the words “governor” and
“cybernetic”
● Manages container clusters
● Inspired and informed by Google’s experiences and internal systems
● Supports multiple cloud and bare-metal environments
● Supports multiple container runtimes
● 100% open source, written in Go
Manage applications, not machines
15. In simple terms...
Think of Kubernetes as the OS for your compute fleet
● Scheduling workload
● Finding the right host to fit your workload
● Monitoring health of the workload
● Scaling it up and down as needed
● Moving it around as needed
It provides features similar to an OS for a host:
20. Scheduling:
Decide what pods to run on which nodes
Lifecycle and health:
Keep my containers running despite failures
Scaling:
Make sets of containers bigger or smaller
Naming and discovery:
Find where my containers are now
Load balancing:
Distribute traffic across a set of containers
Kubernetes handles...
Storage volumes:
Provide data to containers
Logging and monitoring:
Track what’s happening with my containers
Debugging and introspection:
Enter or attach to containers
Identity and authorization:
Control who can do things to my containers
22. GKE is a managed environment for deploying
containerized apps
Copyright Google LLC. For educational purposes in accordance with the terms of use set forth on the program
23. Control plane provisioning
& management
Availability &
reliability
Patching &
upgrades
Security &
Networking
configuration
Monitoring &
management
Scaling
up & down
Worker nodes
provisioning &
management
DIY Kubernetes Service
Modern
application
platform
Optimized Managed Kubernetes
Application platform
Autopilot: a hands-off K8s experience
24. GKE Autopilot
Fully Managed and Optimized for Production
● Optimized for production by K8s experts
● SLA on control plane, nodes and Pods (all
monitored by Google)
● Secure by default with hardening guidelines
implemented
● Resources provisioned based on workload
● It’s still Kubernetes, still GKE
26. Proprietary + Confidential
What is the benefit of Serverless?
Cloud
Physical
Servers
Network
Hardware
Physical
Security
Internet
Connectivity On Prem
Application
Development
Performance
Monitoring Serverless
Scaling
VM
Provisioning
Ops & Security
Management
28. The Serverless Family on GCP
Cloud Run
Run containers without infrastructure
Cloud Functions
Connect & extend cloud services
Cloud Workflows
Declarative service orchestration
Cloud Tasks
Asynchronous task execution
Eventarc
Asynchronous event delivery
Cloud Build
Serverless CI/CD
Cloud Pub/Sub
Serverless messaging
Cloud Scheduler
Cron in the cloud
API Gateway
Declarative API management
VPC Access
Serverless networking
Build & Run Orchestrate Connect
App Engine
Run source-based web applications on a
fully managed environment
31. Proprietary + Confidential
Why choose...
Cloud Run
Run your code and deploy in seconds to a
container
Automatic HTTPS/SSL, Custom domains
Any language, any library
Portability
No cluster management
32. Fundamentally - Cloud Run
provides the most direct way
for customers to run Containers
on Google Infrastructure
35. Default front end
(HTTPS URL,
traffic management)
Optional GCLB
Workload Identity
(runs as service account)
Cloud Ops Observability
(built in logs and metrics)
Cloud SQL Proxy SOCKET
Your Container
Secret Manager Secrets
Env Vars
36. ● Internal website or API
● Private HTTP or gRPC
microservices
● Server-side rendered pages
● REST or GraphQL API
● Streaming with WebSockets
● Process queue messages
● Event driven architecture
● Scheduled Scripts
● Background processing
● Batch Data processing
Public
Website / API
Private
Services
Data
Processing
Use Cases
37. Proprietary + Confidential
Why choose...
Cloud Functions
Connect and extend GCP services
Single-purpose, reusable code
Triggered by an event
Retries
Node.js, Python, Go, Java, PHP, Ruby, .NET
38. ● Requires the least amount of technical
expertise needed to execute your function in
the cloud. No VMs or containers; just code.
● Your cost scales to $0 when your function’s
not in use.
● Performance scales to meet your most
demanding workloads automatically with no
additional work needed.
● Integrated with 125+ Google Cloud services
make orchestration a breeze.
● Open source tools for local development and
testing.
What makes Cloud
Functions so easy?
39. Extend GCP Products
Meet your business needs by adding
custom logic to extend GCP products
like BigQuery, Cloud Storage and
Firestore.
Data Processing
Transform data in as it arrives and store
it in BigQuery.
Perform image analysis and add
classification information to your
database.
Event Driven Architecture
Respond to events from GCP products
like Cloud Storage.
Build endpoints for webhooks for 3rd
party services like Github.
Use Cases
40. Creating services is easier than ever…
Cloud Run & Functions
launch services
quickly
Google Cloud offers
100s of services
Third-parties offer
1000s of services
Serverless
Compute
External
API’s
Google
API’s
etc...
SaaS
API’s
Private
API’s
Other
Clouds
41. … but no service is an island
Dependencies?
Shared state?
Retries?
Failure handling?
Observability?
Architectural source
of truth?
42. Simple and understandable
Observability over a distributed
solution
Secure by default with no
maintenance required
Scales as needed
A recipe for combining services into a solution
Workflows for orchestration and automation