AZURE KUBERNETES SERVICE
- Description
- Reviews
PREREQUISITES
- A foundational understanding of IT infrastructure
- Basic knowledge about Software Development Life Cycle
- Internet with basic infrastructure to work
- Comfortable with Linux commands
- Understanding to work with Kubernetes
LEARNING OUTCOMES
- Learn and be comfortable to use Docker
- Learn and be comfortable to use Kubernetes.
- Learn how to deploy a .net Core application in Kubernetes
COURSE OUTLINE
- Understanding Docker
o What is Virtualization and Containerization
o What is Containerization?
o Why Containerization?
o Connect from Windows through SSH.
o Install git on windows as well as VM
o Docker Architecture
o Docker Image Internals
o Docker Container Internals
o Docker Lifecycle
o Lab:
▪ Lab on Docker image
▪ Lab on Docker Hub
▪ Lab on Docker Container
▪ Creating an image from our custom container
▪ Pushing our image to Docker Hub
o Understanding Docker Internals
▪ Namespaces
▪ CGroups
▪ Images
- How is it stored by default?
- Where is it stored?
▪ Containers
- Where is it stored?
▪ COW
o Docker Lab Continued
▪ Hands on session on Docker exploring and understanding various
- Docker features
- Docker Internals
- Docker Constraints
o Build our own Docker image
▪ Lab:
- Hands on session Create Docker images with various options.
▪ Difference between RUN, EntryPoint and Command
▪ Difference between Add and Copy
▪ Difference between ARGS and ENV
▪ Best Practices in Dockerfile
o Volume
▪ What is Volume and why do we need them.
▪ Different types of Docker volumes
▪ Lab:
▪ Hands on session understanding Docker Volume
- Create Docker web container connected to backend mysql container.
- Crash and restore of mysql container.
o Docker Networking
▪ Understanding the Docker Networking
▪ Subnetting, Gateway, Switch, etc.
▪ Understanding the Docker networking
- Hands on session
o Difference between default and custom bridge
o Host
o None
- AZURE KUBERNATE SERVICE (AKS)
o Introduction to Kubernetes
▪ Difference between Containerization and Orchestration
▪ Difference between Docker and Kubernetes
▪ Scaling Containerization into multiple machines and challenges
▪ Understanding Container Orchestration
▪ Understanding the Need of Kubernetes
▪ Understanding Kubernetes Architecture
- Understanding Kubernetes Control Plain and its Component
- Understanding Kubernetes Nodes and its Component
▪ Understand Kubernetes Concepts
▪ Understand Kubernetes Terminology
▪ Kubernetes Clusters Requirements
▪ Understanding Kubernetes Clusters using kubeadm
▪ Demo: Installing and Configuring Kubernetes Master
▪ Demo: Installing and Configuring Kubernetes Workers
▪ Demo: Install and Configure Workstation using Kubectl
▪ Understanding a concept of Namespace
▪ Demo: Define your first Kubernetes pod
▪ Demo: Working and Deep Dive with Kubernetes pod
▪ Create a Kubernetes cluster in AKS
o Replication
▪ Understanding Kubernetes replication controllers
▪ Demo: Define your first replication controllers
▪ Demo: Working with Kubernetes replication controllers
▪ Understanding Kubernetes deployments
▪ Demo: Define your first deployment
- Scale out – scale in deployment
- update and rollback deployment
▪ Demo: Working and Deep Dive with Kubernetes deployment
▪ Understanding Kubernetes Labels
▪ Demo: Define your first Kubernetes Labels
▪ Demo: Working with Kubernetes Labels
o Networking
▪ Understanding Kubernetes Services
▪ Demo: Define your first Kubernetes Services
▪ Demo: Working and Deep Dive with Kubernetes Services
- ClusterIP
- NodePort
- Loadbalancer in AKS
o Scheduling
▪ Manual Scheduling
▪ Taint and Tolerations
▪ Node Selector
▪ Node Affinity
o Configuring application
▪ Plain Key
▪ Config Map
▪ Secret
▪ Mount Variable as Volume
o Autoscaling
▪ Introduction to Cluster Autoscaler
▪ Create AKS Cluster with Autoscaling enabled using Azure AKS
▪ Introduction to Horizontal Pod Autoscaler
▪ Create Horizontal Pod Autoscaler
o Logging and Monitoring
▪ Understand how to Monitor all Cluster Components
▪ Understand how to Monitor Applications
▪ Manage Cluster Components Logs
▪ Manage Application Logs
o Networking in Kubernetes
▪ Kubernetes Networking
▪ Understand CNI
▪ Understand Pod Networking Concepts
▪ Configure Manual DNS
▪ Configure and Manage Ingress Rule
▪ Namespace
▪ Load Balancer Service
o Setup a jenkins job to
▪ Download code from jenkins
▪ Generate a Docker Image
▪ Create a Docker Container
▪ Run automated test
▪ push the image into DockerHub
▪ Deploy it into a kubernetes environment