Training Information
Docker & Kubernetes
We are pleased to offer a comprehensive suite of training solutions tailored to meet your needs. Our services encompass both online and offline corporate training options, ensuring flexibility and accessibility for your team's professional development.
Course Content
Syllabus:
Docker & Docker Swarm Orchestration
Introduction to Containers & Docker
Docker architecture & Docker repositories
Pull, Create & Upload Docker images
Using Dockerfile and Docker Compose
Understanding Docker Networks
Understanding Docker Volumes
Creating Docker cluster using Docker Swarm
Docker Swarm Stacks and Container Placement
Docker Swarm Node Availability
Docker Swarm Rolling Updates
Docker Swarm secrets and Container healthcheck
Introduction to Kubernetes
Deploying PODS, Services, Deployments.
Introduction to Kubernetes
Understanding Container Runtime Environments.
Working with YAML files for creating manifests.
Deploying Docker and understanding Docker components like Engine, Networks, Images & Registries.
Creating custom container images with Dockerfile
Why Kubernetes & Understanding Kubernetes architecture and Components.
Understanding the Kubernetes Component Connectivity.
Studying significance of API-Server, ETCD, Kube-Scheduler, Controllers, Kubelet & Kube-Proxy.
Understanding Kubernetes High Availability.
Deploying & Managing Kubernetes using KOPS
What is Kubernetes Operations (KOPS)?
Deploying Kubernetes Production Grade Kubernetes Cluster with on AWS with KOPS.
Understanding components of KOPS.
Scaling the Kubernetes Cluster using KOPS.
Manipulating KOPS configuration for reducing the bill.
Accessing Kubernetes cluster with Kubeconfig
Running Kubernetes basic cluster commands.
Working with Kubernetes POD’s & Deployments
Running Kubectl Commands vs. Deploying Manifests
Overview about POD, Deployment, ReplicaSet, Service & Namespaces.
Deploying, Managing & Troubleshooting PODs.
Deep dive through POD, POD Components, POD-Sidecar, kube-scheduler life cycle.
Managing PODs with EXEC, port-forwarding, POD Metadata &PODEnvironment variables.
Disadvantages of running PODS and Intro to Deployments.
Deep dive with Deployments, Replica Set & Replication Controller.
Differences and use cases of Replica Set & Daemonset.
Creating and Integrating Kubernetes Services
Understating Kubernetes Service and its importance.
Deep dive on Kubernetes Services and understanding Traffic Flow.
Creating ClusterIP, NodePort, LoadBalancer & Headless Service.
Understanding & Creating Liveness & Readiness Probes.
Understanding and Creating Ingress Controllers and Ingress Services.
Configure AWS LoadBalancer with Ingress controllers.
Kubernetes Advance Scheduling
Understanding Labels & Annotations
Configuring Labels & Annotations at Node & PODs.
Understanding how Taints and Tolerations work.
Configuring Node Taints and POD Tolerations
Understanding and Configuring Node Affinity.
Understanding and Configuring POD Affinity.
Storage with Kubernetes
Understanding Kubernetes Persistence and Non-Persistent Storage.
Creating non-persistent volumes - emptydir, gitrepo & host-path.
Deep dive in to Kubernetes Persistence Volumes (PV).
Creating Persistent Volume Claims (PVC) with Persistence Volumes.
Understanding Kubernetes Storage Classes and Dynamic VolumeProvisioning.
Kubernetes ConfigMaps & Secrets
Passing command-line variables containers.
Setting environment variables for containers.
Intro to ConfigMaps.
Decoupling configuration with ConfigMap
Working with sensitive data in Kubernetes.
Creating and using Secrets in Kubernetes.
Securing Kubernetes Cluster
How authentication works in Kubernetes.
Deepdive into Kubernetes Namespaces.
Configuring user access to the cluster.
Creating and working with service accounts.
Understanding RBAC in Kubernetes.
Creating Role and Role Bindings.
Creating ClusterRoles and ClusterRoleBindings.
Understanding Blue-Green Deployments & Rolling Updates
Troubleshooting & Updating Kubernetes Cluster
Working with logs in Kubernetes.
Working with Master and Worker Node Failure.
Find and retrieve information about the cluster components.
Performing Rolling Update with KUBECTL with no downtime
challenges with KUBECTL rolling updates.
Running KUBECTL cheat sheet commands.
Kubernetes Jobs & Cronjobs
Understanding differences between Job & Cronjobs
Creating a Job and understanding the attributes.
Use cases for Jobs.
Scheduling with Cron Jobs.
Use cases for Cron Jobs.
Kubernetes with Rancher & K3S
Understanding Rancher & Components
Deploying Racher and access dashboards.
Deploy On-Prem Kubernetes Cluster with Rancher
What is K3S?
Deploying Kubernetes Cluster with K3S application.
Advantages of K3S
POD Level Security with Network Policies
Understanding Kubernetes Network Policies.
Restricting and Allow Traffic between Pods.
Allow & Restrict traffic between Namespaces.
Restricting & Allow traffic based on Application Ports.
Service Mesh with Istio
What is Istio & What is the purpose?
Understanding Istio Architecture.
Deploy Istio on Kubernetes Cluster.
Enable Istio on namespace and deploy application
Checking Sidecars, Kiali, Jaeger
Deploying VirtualService & Gateways
Monitoring & Logging & Cluster Maintenance
Monitoring Cluster Components.
Working with Logs and application logs.
Performing cluster upgrade.
Backup and Restore of Cluster.
Overview about Prometheus monitoring.
Deploying Prometheus and Grafana on Kubernetes.
Creating dashboards for monitoring.
Understanding Alert Manager.
Working with AWS Elastic Kubernetes Services (EKS)
Understanding AWS EKS Architecture
Deploying workloads on EKS Cluster.
Adding & Removing resources to the cluster.
RBAC on AWS EKS.
Helm Package Manager
Understanding & Installing Helm 3
Creating Helm Chart and understanding folder structure.
Working with Values.yaml file.
Creating custom charts for Nginx & EFS Provisioner.
Creating & linting Helm Packages.
Understanding Helm Chart Repositories.
Downloading & Installing applications for Helm Repositories.
CI/CD Tools & GitOps Kubernetes Applications
Jenkins & Azure DevOps Overview
Installing Jenkins and installing necessary plugins.
Integrating Jenkins with Kubernetes Cluster.
CI/CD with Jenkins Pipelines.