SlideShare a Scribd company logo
1 of 33
Download to read offline
Azure Kubernetes Service
What is a container?
Containers = operating system virtualization
Traditional virtual machines = hardware virtualization
OS
Kernel
Applications
Container Container Container
Hardware
Hardware
OS
Application
VM VM VM
App
OS
App
OS
App
OS
Virtualization versus containerization?
Virtualization Containerization
Type 1
Hardware
Hypervisor 1
VM VM VM
Hardware
Type 2
Host OS
Hypervisor 2
VM VM VM
Virtual machine
Guest OS
Dependencies
Application
Hardware
Host OS
Docker Engine
Dependency 1 Dependency 2
C C C C C
Container
App dependencies
Application XYZ
Image
How Container are Launched ?
Docker
Docker is a Open-Source computer program that
performs operating-system-level virtualization, also known
as "containerization". It was first released in 2013 and is
developed by Docker, Inc.
Docker is used to run software packages called
"containers". In a typical example use case, one container
runs a web server and web application, while a second
container runs a database server that is used by the web
application.
• Launched in March 2013
• Over 37 billion+ Downloads
• Over 3,5million+ Docker-ized applications
• 100+ Case Studies worldwide
https://en.wikipedia.org/wiki/Docker_(software)
The benefits of using containers
Agility
Ship apps
faster
Portability
Easily move
workloads
Rapid scale
Scale easily
to meet
demand
Density
Achieve
resource
efficiency
On-premises
Cloud
Anywhere
Monolith
Microservice
Any app
.Net
Java
Python
Node
Any language
Linux
Windows
Any OS
Choice of developer tools and clients
Azure Container Registry Docker Hub
App Service
Deploy web apps
or APIs using
containers in a
PaaS environment
Service Fabric
Modernize .NET
applications to
microservices
using Windows
Server containers
Kubernetes Service Container Instance
Scale and orchestrate
Linux containers using
Kubernetes
Ecosystem
Bring your
Partner solutions
that run great on
Azure
Elastically burst
from your Azure
Kubernetes Service
(AKS) cluster
Containers in Azure
Container Challenges
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
VM Host
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Container
Application
Dependencies
App code
Environmental
Variables
Files
Libraries Drivers
Things can get
complicated very
quickly
Container Management at Scale
Load
Balancing:
evenly
distribute traffic
Lifecycle and
Health:
keep containers
running despite
failure
Cluster
Management:
deploy and
manage cluster
resources
Scheduling:
where
containers run
Naming and
Discovery:
where are my
containers
Logging and
Monitoring:
track what’s
happening in
containers and
cluster
Image
repository:
centralized,
secure Docker
container
images
Storage
volumes:
persistent data
for containers
Scaling:
make sets of
containers
elastic in
number
Continuous
Delivery:
CI/CD pipeline
and workflow
At the end of the day we need something to
help us with all the orchestration..
An orchestrator!
Kubernetes
k8s
κυβερνήτης
 Most discussed repo in GitHub last year.
 Over 1,700 authors and releases every three month
 To learn more about the ideas behind Kubernetes: read the
Large-scale cluster management at Google with Borg paper
Kubernetes Architecture
Kubernetes
control
API server
replication, namespace,
serviceaccounts, etc.
-controller-
manager -scheduler
etcd
Master node
Worker node
kubelet kube-proxy
Docker
Prod Prod
Containers Containers
Worker node
kubelet kube-proxy
Docker
Prod Prod
Containers Containers
Internet
master
components
node
components
Recap – K8s Components
api-server
controller-manager
etcd
scheduler
kubelet kube-proxy
docker dns
master
components
node
components
Reference:
https://github.com/kelseyhightower/k
ubernetes-the-hard-way
Kubernetes in Azure (AKS)
Managed k8s service
Kubernetes on its own is not enough
Unlock the agility for containerized
applications using:
• Infrastructure automation that simplifies
provisioning, patching, and upgrading
• Tools for containerized app development
and CI/CD workflows
• Services that support security, governance,
and identity and access management
Save time from infrastructure management and roll out updates faster without compromising security
IDE container
support
Registry
supporting
Helm
CI/CD
Monitoring
Microservice
debugging
Networking
Virtual machines
Security Governance Identity
Source code
repository
<>
Kubernetes
Storage Data
Infrastructure automation
Deploy, manage, and
monitor Kubernetes
with ease
Scale
applications on
the fly
Roll out
new features
seamlessly (CI/CD)
Accelerate
containerized app
development
Secure your
environment with
layers of isolation
Ship-faster
Focus on your containers
not the infrastructure
Extensible
Modular, pluggable,
hookable, composable
Self-healing
Auto-placement, auto-restart,
auto-replication, auto-scaling
Azure Kubernetes Service (AKS)
A fully managed Kubernetes cluster
Managed
Azure infrastructure services
Container Runtime Engine
Kubernetes
Application
architect
Infrastructure
architect
Applications
Operations
Managed Kubernetes
Kubernetes
control
API server
replication, namespace,
serviceaccounts, etc.
-controller-
manager -scheduler
etcd
Master node
Worker node
kubelet kube-proxy
Docker
Pod Pod
Containers Containers
Worker node
kubelet kube-proxy
Docker
Pod Pod
Containers Containers
Internet
master
components
node
components
Azure managed control plane
API server
Controller
Manager
Scheduler
etcd
Store
Cloud
Controller
Self-managed master node(s)
How managed Kubernetes on Azure works
• Automated upgrades, patches
• High reliability, availability
• Easy, secure cluster scaling
• Self-healing
• API server monitoring
• At no charge
• Auto Scaling of Nodes
Customer Worker Node VMs
App/
workload
definition
User
Docker
Pods
Docker
Pods
Docker
Pods
Docker
Pods
Docker
Pods
Schedule pods
over private tunnel
Kubernetes
API endpoint
Azure managed control plane
Visible to the users/administrators
Deploy and manage Kubernetes with ease
Task The old way With Azure
Create a cluster Provision network and VMs
Install dozens of system components
including etcd
Create and install certificates
Register agent nodes with control plane
az aks create
Upgrade a cluster Upgrade your master nodes
Cordon/drain and upgrade worker nodes
individually
az aks upgrade
Scale a cluster Provision new VMs
Install system components
Register nodes with API server
az aks scale
Azure makes Kubernetes easy
Get started easily
> az aks create
> az aks install-cli
> az aks get-credentials
> kubectl get nodes
Azure makes Kubernetes easy
Manage an AKS cluster
> az aks list
➢ az aks upgrade
➢ az aks scale
Azure makes Kubernetes easy
Cluster Upgrade
Upgrade to version 1.11.4
$ az aks upgrade --name myAKSCluster --resource-group myResourceGroup --
kubernetes-version 1.11.4
• The Kubernetes community releases minor versions roughly every
three months
• AKS supports *4* minor versions of Kubernetes
• The latest stable version upstream and the previous 3
• Each supported minor version also supports *2* stable patches.
Azure makes Kubernetes easy
AKS – Portal Experience
Azure Portal Experience
Azure Container Instances (ACI)
Increase agility
with containers on
demand
Secure applications
with isolation
Run containers
without managing
servers
Azure Container Instances (ACI)
Easily run containers on Azure without managing servers
Release automation tools
Simplifying the Kubernetes experience
Streamlined
Kubernetes
development
Event-driven
scripting for
Kubernetes
The package
manager for
Kubernetes
helm.sh
Looking for sample charts?
Visit the Chart Directory at kubeapps.com to explore and use community charts.
Helm
Resources
AKS Workshop MS Learn – AKS Workshop
AKS on GitHub AKS Issues and feature Tracking
k8s on Azure Kubernetes on Azure
AKS DevOps
labs
Deploying multi-container apps in AKS
AKS Azure Kubernetes Services
Thank You

More Related Content

Similar to MS Azure Kubernetes Service explaining containers and challenges

The Tao of Docker - Devfest Nantes 2017
The Tao of Docker - Devfest Nantes 2017The Tao of Docker - Devfest Nantes 2017
The Tao of Docker - Devfest Nantes 2017Patrick Chanezon
 
Docker Deep Dive Understanding Docker Engine Docker for DevOps
Docker Deep Dive Understanding Docker Engine Docker for DevOpsDocker Deep Dive Understanding Docker Engine Docker for DevOps
Docker Deep Dive Understanding Docker Engine Docker for DevOpsMehwishHayat3
 
Containers On Azure.
Containers On Azure.Containers On Azure.
Containers On Azure.Omnia Ismail
 
Breaking the monolith to microservice with Docker and Kubernetes (k8s)
Breaking the monolith to microservice with Docker and Kubernetes (k8s)Breaking the monolith to microservice with Docker and Kubernetes (k8s)
Breaking the monolith to microservice with Docker and Kubernetes (k8s)Tamir Dresher
 
Microsoft Ignite 2018 BRK3192 Container DevOps on Azure
Microsoft Ignite 2018 BRK3192 Container DevOps on AzureMicrosoft Ignite 2018 BRK3192 Container DevOps on Azure
Microsoft Ignite 2018 BRK3192 Container DevOps on AzureJessica Deen
 
Running Containers On Azure
Running Containers On AzureRunning Containers On Azure
Running Containers On AzureOmnia Ismail
 
Dockers and kubernetes
Dockers and kubernetesDockers and kubernetes
Dockers and kubernetesDr Ganesh Iyer
 
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...Edureka!
 
Containers and Nutanix - Acropolis Container Services
Containers and Nutanix - Acropolis Container ServicesContainers and Nutanix - Acropolis Container Services
Containers and Nutanix - Acropolis Container ServicesNEXTtour
 
Intro Docker to Loire Atlantique
Intro Docker to Loire AtlantiqueIntro Docker to Loire Atlantique
Intro Docker to Loire AtlantiqueJulien Barbier
 
Docker intro
Docker introDocker intro
Docker introspiddy
 
AWS re:Invent 2016: Introduction to Container Management on AWS (CON303)
AWS re:Invent 2016: Introduction to Container Management on AWS (CON303)AWS re:Invent 2016: Introduction to Container Management on AWS (CON303)
AWS re:Invent 2016: Introduction to Container Management on AWS (CON303)Amazon Web Services
 
Cloud foundry architecture and deep dive
Cloud foundry architecture and deep diveCloud foundry architecture and deep dive
Cloud foundry architecture and deep diveAnimesh Singh
 
VMs and Containers - Friends or Enemies
VMs and Containers -  Friends or EnemiesVMs and Containers -  Friends or Enemies
VMs and Containers - Friends or EnemiesSimone Morellato
 
OpenShift Taiwan Vol.1 Technology Overview
OpenShift Taiwan Vol.1 Technology OverviewOpenShift Taiwan Vol.1 Technology Overview
OpenShift Taiwan Vol.1 Technology OverviewJason Peng
 
Programming the world with Docker
Programming the world with DockerProgramming the world with Docker
Programming the world with DockerPatrick Chanezon
 

Similar to MS Azure Kubernetes Service explaining containers and challenges (20)

The Tao of Docker - Devfest Nantes 2017
The Tao of Docker - Devfest Nantes 2017The Tao of Docker - Devfest Nantes 2017
The Tao of Docker - Devfest Nantes 2017
 
Docker Deep Dive Understanding Docker Engine Docker for DevOps
Docker Deep Dive Understanding Docker Engine Docker for DevOpsDocker Deep Dive Understanding Docker Engine Docker for DevOps
Docker Deep Dive Understanding Docker Engine Docker for DevOps
 
Containers On Azure.
Containers On Azure.Containers On Azure.
Containers On Azure.
 
Breaking the monolith to microservice with Docker and Kubernetes (k8s)
Breaking the monolith to microservice with Docker and Kubernetes (k8s)Breaking the monolith to microservice with Docker and Kubernetes (k8s)
Breaking the monolith to microservice with Docker and Kubernetes (k8s)
 
Microsoft Ignite 2018 BRK3192 Container DevOps on Azure
Microsoft Ignite 2018 BRK3192 Container DevOps on AzureMicrosoft Ignite 2018 BRK3192 Container DevOps on Azure
Microsoft Ignite 2018 BRK3192 Container DevOps on Azure
 
Why do I need Kubernetes?
Why do I need Kubernetes?Why do I need Kubernetes?
Why do I need Kubernetes?
 
Running Containers On Azure
Running Containers On AzureRunning Containers On Azure
Running Containers On Azure
 
Containerized application
Containerized applicationContainerized application
Containerized application
 
Dockers and kubernetes
Dockers and kubernetesDockers and kubernetes
Dockers and kubernetes
 
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
 
Containers and Nutanix - Acropolis Container Services
Containers and Nutanix - Acropolis Container ServicesContainers and Nutanix - Acropolis Container Services
Containers and Nutanix - Acropolis Container Services
 
Intro Docker to Loire Atlantique
Intro Docker to Loire AtlantiqueIntro Docker to Loire Atlantique
Intro Docker to Loire Atlantique
 
Docker intro
Docker introDocker intro
Docker intro
 
AWS re:Invent 2016: Introduction to Container Management on AWS (CON303)
AWS re:Invent 2016: Introduction to Container Management on AWS (CON303)AWS re:Invent 2016: Introduction to Container Management on AWS (CON303)
AWS re:Invent 2016: Introduction to Container Management on AWS (CON303)
 
Cloud foundry architecture and deep dive
Cloud foundry architecture and deep diveCloud foundry architecture and deep dive
Cloud foundry architecture and deep dive
 
VMs and Containers - Friends or Enemies
VMs and Containers -  Friends or EnemiesVMs and Containers -  Friends or Enemies
VMs and Containers - Friends or Enemies
 
OpenShift Taiwan Vol.1 Technology Overview
OpenShift Taiwan Vol.1 Technology OverviewOpenShift Taiwan Vol.1 Technology Overview
OpenShift Taiwan Vol.1 Technology Overview
 
Virtual Container - Docker
Virtual Container - Docker Virtual Container - Docker
Virtual Container - Docker
 
SS Introduction to Docker
SS Introduction to DockerSS Introduction to Docker
SS Introduction to Docker
 
Programming the world with Docker
Programming the world with DockerProgramming the world with Docker
Programming the world with Docker
 

Recently uploaded

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 

Recently uploaded (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 

MS Azure Kubernetes Service explaining containers and challenges

  • 2. What is a container? Containers = operating system virtualization Traditional virtual machines = hardware virtualization OS Kernel Applications Container Container Container Hardware Hardware OS Application VM VM VM App OS App OS App OS
  • 3. Virtualization versus containerization? Virtualization Containerization Type 1 Hardware Hypervisor 1 VM VM VM Hardware Type 2 Host OS Hypervisor 2 VM VM VM Virtual machine Guest OS Dependencies Application Hardware Host OS Docker Engine Dependency 1 Dependency 2 C C C C C Container App dependencies Application XYZ Image
  • 4. How Container are Launched ?
  • 5. Docker Docker is a Open-Source computer program that performs operating-system-level virtualization, also known as "containerization". It was first released in 2013 and is developed by Docker, Inc. Docker is used to run software packages called "containers". In a typical example use case, one container runs a web server and web application, while a second container runs a database server that is used by the web application. • Launched in March 2013 • Over 37 billion+ Downloads • Over 3,5million+ Docker-ized applications • 100+ Case Studies worldwide https://en.wikipedia.org/wiki/Docker_(software)
  • 6. The benefits of using containers Agility Ship apps faster Portability Easily move workloads Rapid scale Scale easily to meet demand Density Achieve resource efficiency On-premises Cloud Anywhere Monolith Microservice Any app .Net Java Python Node Any language Linux Windows Any OS
  • 7. Choice of developer tools and clients Azure Container Registry Docker Hub App Service Deploy web apps or APIs using containers in a PaaS environment Service Fabric Modernize .NET applications to microservices using Windows Server containers Kubernetes Service Container Instance Scale and orchestrate Linux containers using Kubernetes Ecosystem Bring your Partner solutions that run great on Azure Elastically burst from your Azure Kubernetes Service (AKS) cluster Containers in Azure
  • 9. VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers VM Host Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Container Application Dependencies App code Environmental Variables Files Libraries Drivers Things can get complicated very quickly
  • 10. Container Management at Scale Load Balancing: evenly distribute traffic Lifecycle and Health: keep containers running despite failure Cluster Management: deploy and manage cluster resources Scheduling: where containers run Naming and Discovery: where are my containers Logging and Monitoring: track what’s happening in containers and cluster Image repository: centralized, secure Docker container images Storage volumes: persistent data for containers Scaling: make sets of containers elastic in number Continuous Delivery: CI/CD pipeline and workflow At the end of the day we need something to help us with all the orchestration.. An orchestrator!
  • 12. k8s κυβερνήτης  Most discussed repo in GitHub last year.  Over 1,700 authors and releases every three month  To learn more about the ideas behind Kubernetes: read the Large-scale cluster management at Google with Borg paper
  • 13.
  • 14. Kubernetes Architecture Kubernetes control API server replication, namespace, serviceaccounts, etc. -controller- manager -scheduler etcd Master node Worker node kubelet kube-proxy Docker Prod Prod Containers Containers Worker node kubelet kube-proxy Docker Prod Prod Containers Containers Internet master components node components
  • 15. Recap – K8s Components api-server controller-manager etcd scheduler kubelet kube-proxy docker dns master components node components
  • 17. Kubernetes in Azure (AKS) Managed k8s service
  • 18. Kubernetes on its own is not enough Unlock the agility for containerized applications using: • Infrastructure automation that simplifies provisioning, patching, and upgrading • Tools for containerized app development and CI/CD workflows • Services that support security, governance, and identity and access management Save time from infrastructure management and roll out updates faster without compromising security IDE container support Registry supporting Helm CI/CD Monitoring Microservice debugging Networking Virtual machines Security Governance Identity Source code repository <> Kubernetes Storage Data Infrastructure automation
  • 19. Deploy, manage, and monitor Kubernetes with ease Scale applications on the fly Roll out new features seamlessly (CI/CD) Accelerate containerized app development Secure your environment with layers of isolation Ship-faster Focus on your containers not the infrastructure Extensible Modular, pluggable, hookable, composable Self-healing Auto-placement, auto-restart, auto-replication, auto-scaling
  • 20. Azure Kubernetes Service (AKS) A fully managed Kubernetes cluster Managed Azure infrastructure services Container Runtime Engine Kubernetes Application architect Infrastructure architect Applications Operations
  • 21. Managed Kubernetes Kubernetes control API server replication, namespace, serviceaccounts, etc. -controller- manager -scheduler etcd Master node Worker node kubelet kube-proxy Docker Pod Pod Containers Containers Worker node kubelet kube-proxy Docker Pod Pod Containers Containers Internet master components node components Azure managed control plane
  • 22. API server Controller Manager Scheduler etcd Store Cloud Controller Self-managed master node(s) How managed Kubernetes on Azure works • Automated upgrades, patches • High reliability, availability • Easy, secure cluster scaling • Self-healing • API server monitoring • At no charge • Auto Scaling of Nodes Customer Worker Node VMs App/ workload definition User Docker Pods Docker Pods Docker Pods Docker Pods Docker Pods Schedule pods over private tunnel Kubernetes API endpoint Azure managed control plane Visible to the users/administrators
  • 23. Deploy and manage Kubernetes with ease Task The old way With Azure Create a cluster Provision network and VMs Install dozens of system components including etcd Create and install certificates Register agent nodes with control plane az aks create Upgrade a cluster Upgrade your master nodes Cordon/drain and upgrade worker nodes individually az aks upgrade Scale a cluster Provision new VMs Install system components Register nodes with API server az aks scale Azure makes Kubernetes easy
  • 24. Get started easily > az aks create > az aks install-cli > az aks get-credentials > kubectl get nodes Azure makes Kubernetes easy
  • 25. Manage an AKS cluster > az aks list ➢ az aks upgrade ➢ az aks scale Azure makes Kubernetes easy
  • 26. Cluster Upgrade Upgrade to version 1.11.4 $ az aks upgrade --name myAKSCluster --resource-group myResourceGroup -- kubernetes-version 1.11.4 • The Kubernetes community releases minor versions roughly every three months • AKS supports *4* minor versions of Kubernetes • The latest stable version upstream and the previous 3 • Each supported minor version also supports *2* stable patches. Azure makes Kubernetes easy
  • 27. AKS – Portal Experience Azure Portal Experience
  • 29. Increase agility with containers on demand Secure applications with isolation Run containers without managing servers Azure Container Instances (ACI) Easily run containers on Azure without managing servers
  • 30. Release automation tools Simplifying the Kubernetes experience Streamlined Kubernetes development Event-driven scripting for Kubernetes The package manager for Kubernetes
  • 31. helm.sh Looking for sample charts? Visit the Chart Directory at kubeapps.com to explore and use community charts. Helm
  • 32. Resources AKS Workshop MS Learn – AKS Workshop AKS on GitHub AKS Issues and feature Tracking k8s on Azure Kubernetes on Azure AKS DevOps labs Deploying multi-container apps in AKS AKS Azure Kubernetes Services