Docker Kubernetes Online Workshop

Duration : 7 Half Days (2:30 PM to 6:30 PM)

Date : 8, 9, 12, 13, 14, 15, 16 April 2021

Overview

This boot camp introduces participants to docker and its ecosystem, help them get started using Docker to build, package and run their applications inside containers. This course also covers container orchestration with Kubernetes.

Prerequisites

  • Linux/Unix Systems Fundaments
  • Understanding of Command Line Interface
  • Basic knowledge of editors on Linux (any one of vi/nano/emacs)
  • Understanding of YAML syntax and familiarity with reading/writing basic YAML specifications


Course Contents

Introduction
  • Basics of Docker
  • Dockerfile
  • Networking

Creating and Running Containers
    • Container Images
    • Building Application Images with Docker
    • Storing Images in a Remote Registry
    • The Docker Container Runtime

Deploying a Kubernetes Cluster
    • Installing Kubernetes on a Public Cloud Provider
    • Installing Kubernetes Locally Using minikube
    • Running Kubernetes on Raspberry Pi
    • The Kubernetes Client
    • Cluster Components

Common Kubernetes Commands
  • Namespaces
  • Contexts
  • Viewing Kubernetes API Objects
  • Creating, Updating, and Destroying Kubernetes Objects
  • Labelling and Annotating Objects
  • Debugging Commands

Pods
  • Pods in Kubernetes
  • Thinking with Pods
  • The Pod Manifest
  • Running Pods
  • Accessing Pod
  • Health Checks
  • Resource Management
  • Persisting Data with Volumes
  • The Distributed System ToolKit
    • Sidecar containers
    • Ambassador containers
    • Adapter containers

Labels and Annotations
  • Labels
  • Annotations

Resource Quotas
  • Enabling Resource Quota
  • Compute Resource Quota
  • Storage Resource Quota
  • Object Count Quota
  • Quota Scopes
  • Requests vs Limits
  • Viewing and Setting Quotas
  • Quota and Cluster Capacity
  • Limit Priority Class consumption by default

Service Discovery
  • What Is Service Discovery?
  • Using CoreDNS for Service Discovery
  • About CoreDNS
  • Upgrading an existing cluster with kubeadm
  • Installing kube-dns instead of CoreDNS with kubeadm
  • The Service Object
  • Looking Beyond the Cluster
  • Cloud Integration
  • Advanced Details

ReplicaSets
  • Reconciliation Loops
  • Relating Pods and ReplicaSets
  • Designing with ReplicaSets
  • ReplicaSet Spec
  • Creating a ReplicaSet
  • Inspecting a ReplicaSet
  • Scaling ReplicaSets
  • Deleting ReplicaSets

DaemonSets
  • DaemonSet Scheduler
  • Creating DaemonSets
  • Limiting DaemonSets to Specific Nodes
  • Updating a DaemonSet
  • Deleting a DaemonSet

Jobs
  • The Job Object
  • Job Patterns

ConfigMaps and Secrets
  • ConfigMaps
  • Secrets
  • Naming Constraints
  • Managing ConfigMaps and Secrets

Deployments
  • First Deployment
  • Creating Deployments
  • Managing Deployments
  • Updating Deployments
  • Deployment Strategies
  • Deleting a Deployment

Integrating Storage Solutions and Kubernetes
  • Importing External Services
  • Running Reliable Singletons
  • Kubernetes-Native Storage with StatefulSets

The Ecosystem
  • Installing Helm, the Kubernetes Package Manager
  • Using Helm to Install Applications
  • Creating Your Own Chart to Package Your Application with Helm
  • Converting Your Docker Compose Files to Kubernetes Manifests
  • Creating a Kubernetes Cluster with kubicorn
  • Storing Encrypted Secrets in Version Control
  • Deploying Functions with kuberless

Deploying Real-World Applications
  • Parse
  • Ghost
  • Redis

Service Mesh
    • Why service mesh?
    • Conduit and Istio
    • Managing microservices with Istio

Authorization Overview
    • Determine Whether a Request is Allowed or Denied
    • Review Your Request Attributes
    • Determine the Request Verb
    • Authorization Modules
    • Using Flags for Your Authorization Module
    • Privilege escalation via pod creation

Networking
    • Calico
    • Flannel

Scaling
    • Scaling a Deployment
    • Automatically Resizing a Cluster in GKE
    • Automatically Resizing a Cluster in AWS
    • Using Horizontal Pod Autoscaling on GKE

Security
    • Providing a Unique Identity for an Application
    • Listing and Viewing Access Control Information
    • Controlling Access to Resources
    • Securing Pods

Ingress Controller
    • What is Ingress?
    • Prerequisites
    • The Ingress Resource
    • Ingress controllers
    • Before you begin
    • Types of Ingress
    • Updating an Ingress
    • Failing across availability zones
    • Future Work
    • Alternatives

Monitoring and Logging
  • Accessing the Logs of a Container
  • Recover from a Broken State with a Liveness Probe
  • Controlling Traffic Flow to a Pod Using a Readiness Probe
  • Adding Liveness and Readiness Probes to Your Deployments
  • Enabling Heapster on Minikube to Monitor Resources
  • Using Prometheus on Minikube
  • Using Elasticsearch–Fluentd–Kibana (EFK) on Minikube

Date

Apr 08 - 16 2021
Expired!

Time

7 Half Day
2:30 PM - 6:30 PM

ENQUIRE NOW