ATC-DKIP - Docker and Kubernetes for Infrastructure Professionals


Duration: 4.0 days
This is a lecture and hands-on course designed for infrastructure professionals and covers core Docker and Kubernetes technologies. including docker concepts, repository, networking, and storage. Kubernetes cluster architecture, steps in how to build Kubernetes cluster, deploy and manage applications on Kubernetes, high availability, Kubernetes Storage, Rolling updates, Scaling, Monitoring, Advanced Networking and how to secure Kubernetes. There are many hands-on practice, including deploying a multi-master multi-node bare metal fault tolerant Kubernetes cluster, managing users accounts, and namespace, practicing on volumes, and secrets, using prometheus/grafana tool to monitor workloads, hands-on practice in autoscaling.

This course also teaches Ansible tools, including ansible playbooks, playbook modules, and Advances playbooks.




Docker Overview
  • Introduction to Docker
  • Docker Overview
  • Benefits from Using Docker
  • Docker Concepts Images and Containers
  • Docker Concepts Layers
  • Docker Concepts Containers
  • Installing Docker
  • The Docker Command-line Client
  • Virtualization vs Containerization
  • Benefits from Using
Docker Docker Architecture
  • Docker and the Linux Kernel
  • Docker and the Linux Kernel Namespaces
  • Docker and the Linux Kernel Control groups
  • Docker and the Linux Kernel Union File Systems
  • Docker Architecture
  • Docker Components
Using Docker to Run and Manage Containers
  • Docker Concepts – Images and Containers
  • Example: docker run
  • docker run
  • Running an Application
  • Pull an Image
  • docker ps
  • docker rm
Pull and Run Image from Internet
  • Storing and Distributing Images Docker Hub
  • Storing and Distributing Images Docker Registry
  • Docker Trusted Registry
  • Deploying Your Own Registry
  • Pushing Image to Registry
  • Pushing to Registry
  • Pull from Our Own Registry
  • Pull and Run a Java Webserver
Building Container Images
  • Introduction to Docker
  • Dockerfile Example
  • Dockerfile in Depth
  • Dockerfile Commands: FROM
  • Dockerfile Commands: LABEL
  • Dockerfile Commands: RUN
  • Dockerfile Commands: COPY
  • Dockerfile Commands: ADD
  • Dockerfile Commands: EXPOSE
  • Dockerfile Commands: ENTRYPOINT
  • Dockerfile Commands: CMD
  • Dockerfile Commands: VOLUME
  • Example
  • Other DockerFile Commands
  • Sample Dockerfile
Communication Between Docker Containers
  • Docker Container Networking
  • Bridge Network
  • Host Network
  • None Network
  • Networking Commands
  • Network Commands
  • Creating and Inspecting a Network
  • Persistent Storage
  • Persistent Storage
Introducing Kubernetes
  • Introduction Kubernetes
  • Kubernetes Features
  • Kubernetes Architecture
  • Kubernetes Components
  • Master Components
  • Master Components (2)
  • Master components (3)
  • Node Components
  • Kubernetes Concepts
  • Node
  • Master
  • Pods
  • Labels
  • Label
  • Annotations
  • Label Selectors
  • Names
  • The Kubernetes APIs
Installing Kubernetes Cluster
  • Creating Kubernetes Clusters
  • kubeadm
  • Installing Virtual Machines
  • Run kubeadm
  • Adding the Worker Nodes
  • Network Connectivity
Creating Pods, Volumes and Deployments
  • Creating Pod
  • Get A List of Pods
  • Replication Controllers and Replica Sets
  • Replication Controller
  • Replica Set Example
  • Service Example
  • Create Replicas and Service
  • Using Labels
  • More on Labels
  • Using Labels
  • Deployment
  • Deployment
  • StatefulSet
  • DaemonSet
  • Volumes
  • Types of Volumes
  • Volume Types
  • emptyDir Volume Example
  • hostPath Volume
  • hostPath
  • hostPath Example
  • configMap
  • Secrets
  • Persistent Volume
Kubernetes Networking
  • Docker Network vs Kubernetes Networking
  • Kubernetes Networking Model
  • Implementing the Kubernetes Networking Model
  • How Pods Communicate with Each Other
  • How Pods Communicate with Services
  • DNS for Service and Pods
  • Pods DNS Name
Service Discovery and Load Balancing
  • Services
  • Defining A Service
  • Virtual IPs and Service Proxies
  • Discovering Services
  • Service Discovery Environment Variable
  • Service Discovery DNS
  • Publishing Services - Service Types
  • Kubernetes Service Types
  • Headless Services Ingress
  • Ingress Prerequisites
  • The Ingress Resource
Cluster Partitioning
  • Namespaces
  • Subdividing Your Cluster Using Kubernetes Namespaces Create New Namespaces
  • Create Namespaces Example
  • Display Current config
  • Adding New Context to config
  • Select Current Context
Authentication and Authorization
  • Authentication and Authorization
  • Transport Security
  • Authentication
  • Authorization
  • Authorization Example
  • Admission Control
  • Users in Kubernetes
  • RBAC Authorization
Deploying Scalable Application
  • Scaling a Kubernetes Cluster
  • Get Status of Replication Controller
  • Scaling Kubernetes Cluster Up
  • Scaling Kubernetes Cluster Down
  • Horizontal Pod Autoscaler
  • Support for Horizontal Pod Autoscaler in kubectl
  • Autoscaling During Rolling Update
  • Cooldown and Delay
Rolling Update
  • Rolling Update
  • Updating an Application
  • Managing an Update Rollout
Cluster Monitoring
  • Kubernetes Monitoring
  • Prometheus
  • Prometheus components
  • Prometheus
  • Prometheus Architecture and Ecosystem Components
  • Collecting Kubernetes Data with Prometheus
Setting Up High Availability (HA) Kubernetes Clusters
  • Options for Highly Available Topology
  • Stacked etcd Topology
  • External etcd Topology







Enquire Now
By clicking "Submit", I agree to the Terms Of Use and Privacy Policy