Docker and Kubernetes All In One (CKA + CKAD) ..


Duration: 30 Hrs Approx.

kubernetes training in india

Why to Learn Following Kubernetes Course ?

1. This course is designed for DevOps working professionals. This includes all Contents required for CKA/CKAD Certifications and additionally added tools are Helm,ArgoCD, Promethues, Graffana, ELK Stack

2. To be a or two Step ahead in your team.

3. This is the era of Devops and most of the Devops projects are on following tools.

About the Course

Pro Kubernetes In the fast-paced world of DevOps, staying competitive and relevant in the job market requires a continuous commitment to learning and mastering the latest tools and certifications. Our specialized course is meticulously designed for DevOps working professionals, aiming to equip them with the knowledge and skills needed to excel in their careers. Focused on the Certified Kubernetes Administrator (CKA) and Certified Kubernetes Application Developer (CKAD) certifications, this course goes beyond the basics by integrating key tools such as Helm, ArgoCD, Prometheus, Grafana, and the ELK Stack.


Course Content.


Docker:

Docker Engine:
1)	Container tools
2)	Docker Engine Installion
3)	Basic introduction to Docker Engine
4)	Docker architecture
•	images
•	containers
•	networking
•	services
5)	Underlying technologies of Docker
6)	Images and container management
•	docker image registries (Docker Hub,)
•	docker image pull/push
•	Image layers
•	container creation
•	Sample application deployment like web server
•	Basic things that to be considered while working with images and containers
7)	Docker networking
•	Docker Engine network types:
o	host
o	bridge
o	null
8)	Docker storage
•	Basic understanding of emphemeral and persistent storage
•	Types of volume mounts
o	Bind mount
o	Volume mount
o	tempfs mount
9)	Backup and restore of Images using docker save, docker load
10)	Building custom images
•	Dockerfile parameters
•	Develop custom image through Dockerfile.
•	Convert container into Image.
•	How to store Images in Container registries
11)	Registry management
•	Docker Hub
•	Gitlab / Github registry
 
12)	Docker compose
•	Building compose file for orchestration of application deployment
14)	Task
•	Deployment of application like Wordpress, mariadb/Mysql 
•	Deploy wordpress as webserver and database for storage using Dockercompose
•	Write Dockerfile to containerize application.
 
kubernetes Deep Dive:

1)	kubernetes components and responsibility controller nodes:
•	kube-apiserver
•	kube-control-manager/cloud-control-manager
•	kube-schduler
•	calico, flannel, wavenet etc.,
•	coreDNS
•	etcd key-value pair storage
•	kubelet
•	kube-proxy
•	Docker Engine/containerd/cri-o etc.,

2)	Deployment of kubernets cluster using, kubeadm
Three nodes (1 for controller and 2 for compute nodes)

3)	POD object creation using single container and multi-container
•	Understanding common networking and common storage in POD 
•	Sample application deployment using nginx for single container in POD
•	Multi-container deployment.
•	POD creation with initContainer
•	static POD deployment
•	resource allocation like CPU and MEMORY
4)	ReplicationController object (RC)
•	Disadvantages of deploying application with single POD
•	Understanding template and selector parameters
5)	Replica Set object (RS)
•	Difference between Replication Controller and Replica Set
•	Advantages of adding match Labels
6)	Deployment object (deploy)
•	Advantages of Deployment over POD, RC and RS
•	Sample application deployment like Jenkins, nginx
•	Scaleout and Scale in for Deployment
•	Rollout, Rollback and Rollout History of deployment
7)	Daemonset object (DS)
•	DaemonSet usecases over deployment object
•	Advantages of using monitoring tools to deploy through DaemonSet object
•	Rollout, Rollback and Rollout History of DaemonSet
8)	StatefulSet object (sts)
•	Difference between stateful and stateless applications
•	StatefulSet application deployment advantages
•	Scaleout and Scalein for Deployment
9)	volumes:
•	Empheimeral
•	and persistent storage differences
•	Different types of volumes like emptyDir, hostPath etc.,
10)	PersistentVolume, PersistantVolumeClaim and StorageClass (PV and PVC)
•	Static and Dynamic volume provisioning
•	PVC assignment in POD, Deployment, Daemonset, StatefulSet objects
•	StargaeClass creation for Dynamic provision
11)	Services (svc)
•	Exposing application running on different object through service
•	Understanding difference between ClusterIP, NodePort, Load Balancer
•	When to use these different types of services?
12)	secrets and configmap (secret, cm)
•	How to pass sensitive data through secret like certs, password, token etc.,
•	How to pass paintext data through configMap like configuration files, scripts etc.,
•	Using secret in POD object through env and volumes
•	using configMap in POD object through env and volumes
13)	Horizontal POD AutoScalling (HPA):
•	HPA deployent to test auto scalling
•	Deployment of metric server to achieve HPA
14)	Scheduling 
•	Different types of scheduling like nodename, nodeSelector, podAffinity, podAntiAffinity, nodeAffinity, Taint, Toleration

15)	Container Health Check 
•	 Liveness
•	 readiness 

16)	RBAC authetication and authorization
•	authetication:
•	user, group and serviceaccount (token), certs 
•	kubeconfig entries and access multiple cluster through kubernetes config file
•	autherization:
•	Role Back Access Control (RBAC), ABAC, Node, Webhook
•	Role, RoleBinding, ClusterRole, ClusterRoleBinding
•       Learning: User Creation on Kubeadm cluster and provide access to user using RBAC
17)	Dashboard
•	deployment of kubernetes dashboard and creating kubernetes object through dashboard
•	How to authenticate to dashboard through token and kubeconfig
18)	Task:
a.	wordpress and database application deployment
c.	kubernetes upgrade from one version to another (1.20.1 to 1.20.2)
19)     Additional Content
•       Understanding of NetworkPolicies
•       Ingress Nginx 
•       CRD Custom Resource Defination
•       Implement etcd backup and restore

Helm 
1. Helm Introduction
2. Helm Basics
3. Helm Setup and Initial Usage ( helm repo add , repo, search, app install, uninstall)
4. Create sample chart using helm command 
5. Convert Simple deployment YAML to Helm Chart ( Understand Helm Chart Structure )
6. Package your helm Chart 
7. Create helm chart repo on github
8. Add github repo in cluster and deploy chart from github repo
9. Helm Chart release history Check 
10. Upgrade helm chart and rollback 
11 Debug helm chart 
( * This Helm Course don't have Progamming concept i.e if-else,EQ,Boolean,function )  

ArgoCD, Promethues ,Graffana and ELK introduction only ( installation using Helm Chart )