Kubernetes for Developers on AKS


Course Number: CLD-118
Duration: 3 days (19.5 hours)
Format: Live, hands-on

Kubernetes AKS Training Overview

This Kubernetes for Developers on AKS (Azure Kubernetes Service) training course teaches attendees how to get up and running quickly with Kubernetes and Docker before diving into Azure Container Registry and Azure Container Instances. Participants learn the core concepts of Kubernetes on AKS, including design, workload, deployment, logging, monitoring, and troubleshooting.

Location and Pricing

Accelebrate offers instructor-led enterprise training for groups of 3 or more online or at your site. Most Accelebrate classes can be flexibly scheduled for your group, including delivery in half-day segments across a week or set of weeks. To receive a customized proposal and price quote for private corporate training on-site or online, please contact us.

In addition, we offer some courses as live, instructor-led online classes for individuals.

Objectives

  • Build a Docker image with Dockerfile
  • Work with Docker Compose
  • Work with Container Registry and Container Instances
  • Push Docker images into ACR
  • Access the Kubernetes API in AKS
  • Access Applications in AKS
  • Deploy ACR images to AKS
  • Work with Kubernetes workloads in AKS
  • Implement the sidecar pattern
  • Use persistent storage in AKS
  • Use AKS volume with Azure file share
  • Log, monitor, and troubleshoot in AKS

Prerequisites

Attendees must:

Outline

Expand All | Collapse All

Docker Introduction
  • What is Docker
  • Docker Containers vs. Traditional Virtualization
  • Where Can I Run Docker?
  • Docker as Platform-as-a-Service
  • Docker Integration
  • Docker Services
  • Docker Hub Container Registry
  • Alternative Container Registries
  • Competing Containerization Systems
  • Docker Command-line
  • Starting, Inspecting, and Stopping Docker Containers
Building Docker Images
  • Docker Images
  • Containerizing an Application
  • Building The Image
  • Building Docker Images using Dockerfile
  • Sample Dockerfile
  • Environment Variables
  • Arguments
  • Multi-stage Builds
  • Stop at a Specific Build Stage
  • Build the Image
  • .dockerignore
  • Dockerfile – Best Practices
  • Published Ports
  • Docker Documentation Link
  • Docker Registry
  • Hosting a Local Registry
  • Deploying Docker Images to a Kubernetes Cluster
  • Running Commands in a Container
  • Multi-Container Pod
Azure Container Registry and Azure Container Instances
  • Azure Container Registry (ACR)
  • ACR Typical Workflow
  • Container Registry SKUs
  • Creating ACR
  • Pushing Existing Docker Images into ACR
  • Build Images in ACR
  • Obtaining ACR Credentials
  • Azure Container Instances (ACI)
  • Azure Container Instance Workflow
  • Working with ACI
  • Deleting Container Instances and Container Registry
Kubernetes Core Concepts
  • Kubernetes Basics
  • What is Kubernetes?
  • Container Orchestration
  • Kubernetes Architecture
  • Kubernetes Concepts
  • Cluster and Namespace
  • Using Pods to Group Containers
  • Label Syntax
  • Annotation
  • Label Selector
  • Replication Controller and Replica Set
  • Storage Volume
  • Secret
  • Resource Quota
  • Authentication and Authorization
  • Routing
  • Docker Registry
  • Azure Kubernetes Service (AKS)
  • AKS Diagram
  • Deploying an AKS Cluster
  • Application Deployment on AKS
Deploying and Exposing Applications
  • Configuring AKS for Deployment
  • Deploying to Kubernetes
  • Kubernetes Services
  • Service Resources
  • Service Type
  • ClusterIP
  • NodePort from Service Spec
  • LoadBalancer from Service Spec
  • ExternalName
  • Accessing Applications
  • Service Without a Selector
  • Ingress
    • Ingress Resource Example
    • Ingress Controller
  • Service Mesh
Design
  • Traditional Applications
  • Virtual Machines
  • Containerized Applications
  • Decoupled Resources
  • Transience
  • Flexible Framework
  • Application Resource Usage
    • Measuring Resource Usage
    • Docker Resource Usage Statistics
    • Docker Container Resource Constraints
    • Docker Run Command Resource Flags
  • Using Label Selectors
  • Equality-Based Label Selector
  • Set Based Label Selector
  • Multi-Container Pods
  • Sidecar Container
  • Adapter Container
Kubernetes Workload
  • Kubernetes Workload
  • Managing Workloads
  • Imperative commands
  • Imperative Object Configuration
  • Declarative Object Configuration
  • Configuration File Schema
  • Understanding API Version
  • Obtaining API Versions
  • Stateless Applications
  • Sample Deployment Manifest File
  • Working with Deployments
  • Stateful Applications
  • Sample Stateful Manifest File
  • Working with StatefulSet
  • Jobs
  • Sample Job Manifest File
  • Working with Batch Job
  • DaemonSets
  • Sample Daemon Manifest File
  • Rolling Updates
Deployment Configuration
  • Introduction to Volumes
  • Container OS file system storage
  • Docker Volumes
  • Kubernetes Volumes
  • Volume Specs
  • K8S Volume Types
  • Cloud Resource Types
  • emptyDir
  • Using an emptyDir Volume
  • Other Volume Types
  • Persistent Volumes
  • Creating a Volume
  • Persistent Volume Claim
  • Persistent Volume
  • Pod that uses Persistent Volume
  • Dynamic Volume Provisioning
  • Requesting Dynamic Storage
  • Secrets
    • Creating Secrets from Files
    • Creating Secrets from Literals
    • Using Secrets
  • ConfigMaps
    • Creating configMaps from Literals
    • Creating configMaps from files
  • Security Context Usage
  • Deployment Configuration Status
  • Replicas
  • Scaling
Shared Volume using Azure Files share
  • Volumes
  • Azure Disks
  • Azure Files share - Workflow
  • Creating a Kubernetes Secret
  • Configuring the Volume in the Container Specification
  • Verifying the Azure Files share is Mounted
Logging, Monitoring, and Troubleshooting
  • Differences Between Logging and Monitoring
  • Logging in Kubernetes
  • Basic Logging
  • Debugging Pods
  • Debugging Nodes
  • Debugging Replication Controllers and Services
  • Azure Monitor
  • Container Insights
  • Log Queries in Azure Monitor
  • Log Analytics Query Language
  • Logging Agents
  • Fluentd and Elastic Stack
  • Monitoring with Prometheus
  • Alerting
  • Upgrade Process
  • Troubleshooting
  • YAML Syntax Exceptions
  • nodeSelector
  • Troubleshooting a Failed Image Pull
  • Resource Issues when Scaling
Conclusion

Training Materials

All AKS training students receive comprehensive courseware. 

Software Requirements

  • Visual Studio 2019, 2022, or later
  • Modern web browser
  • Access to an Azure DevOps instance
  • Related lab files that Accelebrate will provide


Learn faster

Our live, instructor-led lectures are far more effective than pre-recorded classes

Satisfaction guarantee

If your team is not 100% satisfied with your training, we do what's necessary to make it right

Learn online from anywhere

Whether you are at home or in the office, we make learning interactive and engaging

Multiple Payment Options

We accept check, ACH/EFT, major credit cards, and most purchase orders



Recent Training Locations

Alabama

Birmingham

Huntsville

Montgomery

Alaska

Anchorage

Arizona

Phoenix

Tucson

Arkansas

Fayetteville

Little Rock

California

Los Angeles

Oakland

Orange County

Sacramento

San Diego

San Francisco

San Jose

Colorado

Boulder

Colorado Springs

Denver

Connecticut

Hartford

DC

Washington

Florida

Fort Lauderdale

Jacksonville

Miami

Orlando

Tampa

Georgia

Atlanta

Augusta

Savannah

Hawaii

Honolulu

Idaho

Boise

Illinois

Chicago

Indiana

Indianapolis

Iowa

Cedar Rapids

Des Moines

Kansas

Wichita

Kentucky

Lexington

Louisville

Louisiana

New Orleans

Maine

Portland

Maryland

Annapolis

Baltimore

Frederick

Hagerstown

Massachusetts

Boston

Cambridge

Springfield

Michigan

Ann Arbor

Detroit

Grand Rapids

Minnesota

Minneapolis

Saint Paul

Mississippi

Jackson

Missouri

Kansas City

St. Louis

Nebraska

Lincoln

Omaha

Nevada

Las Vegas

Reno

New Jersey

Princeton

New Mexico

Albuquerque

New York

Albany

Buffalo

New York City

White Plains

North Carolina

Charlotte

Durham

Raleigh

Ohio

Akron

Canton

Cincinnati

Cleveland

Columbus

Dayton

Oklahoma

Oklahoma City

Tulsa

Oregon

Portland

Pennsylvania

Philadelphia

Pittsburgh

Rhode Island

Providence

South Carolina

Charleston

Columbia

Greenville

Tennessee

Knoxville

Memphis

Nashville

Texas

Austin

Dallas

El Paso

Houston

San Antonio

Utah

Salt Lake City

Virginia

Alexandria

Arlington

Norfolk

Richmond

Washington

Seattle

Tacoma

West Virginia

Charleston

Wisconsin

Madison

Milwaukee

Alberta

Calgary

Edmonton

British Columbia

Vancouver

Manitoba

Winnipeg

Nova Scotia

Halifax

Ontario

Ottawa

Toronto

Quebec

Montreal

Puerto Rico

San Juan