4. 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
5. Dependencies
• Any Language
• Any Library
• Any Binary
• Ecosystem of base images
.js .rb .go
.py .sh …
0 1 0
1 0 0
1 1 1
6. 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
7. Docker
● Dominant container tool use only required resources
● Docker file -> Docker Image -> Container
● Made it easy and fast to create and run container images
● Takes only required resources from machine
● Any App which HTTPs Server can be deployed using Docker
8. 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
9. 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
10. Kubernetes is an open-source system for automating
deployment, scaling, and management of containerized
applications.It is also known as K8s.
What is Kubernetes?
11. 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
12. 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
● Manages large volume container clusters
● Provides container communication services
It provides features similar to an OS for a host:
17. 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
20. 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
21. 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
22. 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
23. Fundamentally - Cloud Run
provides the most direct way
for customers to run Containers
on Google Infrastructure
29. Scopes to build your projects
New Ideas Existing idea
Solves a real-world
problem
Instructional project
Full-fledged business
project
Port to Google Cloud
30. Guidelines to submit the project
Every project needs to be
created using the credit code
provided by the GDSC India
team to Facilitators.
Every project needs a one
pager description to
elaborate on the details of the
project.
Every project needs to be
started from 14th December
and completed by 28th
December
Every project needs to utilize
the provisioned $50 credits
for their projects.
Use any ONE of the Google
Services (Cloud Run, Cloud
Functions, Cloud Storage)
Create NEW Google Cloud
Account
31. One Pager
The one-pager should organized as follows:
● Problem Statement
● Proposed Solution with screenshots
● Google Cloud Services used
● Screenshots of cost calculations for the Google Cloud services used.
Refer this page for cost calculations
● Billing breakdown on services used. Refer to this page for billing
reports and cost trends.
Note: Your intro should be well written and should give a brief explanation & working of your project.
32. Your Google Cloud project should utilize the following:
Use any programming
language that is
supported by Google
Cloud Platform services.
Cloud Run Cloud Functions Cloud Storage
You are free to choose a Compute Offering :
Operating your Google Cloud Project is important.
33. Last Date to submit
the project : 28th
December
A Facilitator can submit only ONE Google Cloud Project. Only
Facilitators can make the submission on behalf of the team.
The cloud credits will be shared on 12th December
34. New Announcements!!
Last Date to Complete the Pathway is
extended : 21st December, 10:00 PM IST
Access code redemption
ends on Dec 9th