Kubernetes Custom Training

Public Training

Designed for employees working remotely, these training courses provide a quick overview of core Kubernetes topics. During the courses, students will get the necessary theoretical and practical knowledge in a short period of time. Below, you can choose a program that fits your needs.

Kubernetes Custom Training

Who should attend

  • Developers, DevOps engineers, and application architects

Why enroll

Transfer an application from code to a container running in Kubernetes

Acquire experience in different approaches to deploying Kubernetes workloads

Learn to enable application stability, manage configuration, ensure statefulness, and implement repeatable deployments

Benefits

Remote training requirements

  • Access to Zoom. You can install a client (preferable) or use a web application.
  • Access to either Amazon Web Services (AWS) or Google Cloud Platform (GCP). The accounts will be provided.
  • Access to GitHub.

Design your training agenda

Select the topics

Step 1

Select the checkboxes to include the topics you want to be present in your training agenda. You can save this form at any time and continue later.

Select your cloud infrastructure provider and deployment tool

Step 2

Select cloud infrastructure provider for the training and select your Deployment method

Submit the contact form

Step 3

Fill in the form to complete your submission:

  • Mandatory topics

    Course Introduction

    10 min

    • An introduction
    • Useful links for the course
    • The agenda
    • The schedule
    • An overview of the training methodology

    Introduction to Kubernetes

    0.5 hour

    • Problem statement
    • Kubernetes features
    • Cloud Native Computing Foundation
    • Infrastructure as a Service vs. Containers as a Service vs. Platform as a Service

    Practice

    • Setting up Google Cloud Shell
    • Deploying Kubernetes with Google Kubernetes Engine
  • Kubernetes basics

    Kubernetes API objects

    0.5 hour

    • Pods
    • Deployments
    • StatefulSets
    • DaemonSets
    • Jobs
    • ConfigMaps
    • Other objects

    Practice

    • Introducing API objects and providing a basic layout
    • Demonstrating kubectl explain, exploring various objects

    Containers

    1.5 hours

    • Different ways of packaging software
    • Container benefits
    • Container implementation
    • A sample application architecture

    Practice

    • Using Dockerfile to package a sample application into a container
    • Running the application in the container
    • Exposing ports
    • Mounting volumes
    • Switching between containers using DNS
    • Deploying the container using the host and bridge modes, examining the difference
    • Uploading an image to a container registry

    Pods

    1.5 hours

    • Pods
    • Pod’s life cycle
    • A multi-container pod design
    • Kubernetes patterns (Ambassador, Adapter, and Sidecar)

    Practice

    • Deploying a sample application to Kubernetes
    • Deploying a pod with a custom image
    • Using the exec command to connect to the deployed container, running inside a pod
    • Deploying an init container that runs application database migrations

    Deployments

    1.5 hours

    • Deployments and ReplicaSets
    • The behavior of rolling updates in a Deployment

    Practice

    • Redeploying a sample application using the Deployment object
    • Scaling a Deployment
    • Updating and rolling out a Deployment
    • Viewing Deployment history
    • Rolling back a Deployment
    • Configuring rollover parameters of a Deployment
  • Advanced pod configurations

    Secrets and ConfigMaps

    0.75 hour

    • Use cases for Secrets and ConfigMaps
    • Different ways of mapping Secrets into containers

    Practice

    • Modifying the sample application to use Secrets and ConfigMaps to externalize application credentials and configuration

    Health checks

    1 hour

    • The difference between livenessProbe and readinessProbe
    • Health check types (the exec command, TCP connections, and HTTP requests)

    Practice

    • Defining a custom livenessProbe
    • Defining a custom readinessProbe
    • Testing the workability of the probes
    • Experimenting with probe types

    Container resource usage management

    0.5 hour

    • The difference between request and limit settings in a pod
    • Limit types
    • The default behavior when limits and requests are unset

    Practice

    • Setting limits on a sample application
    • Testing the limits, observing the results

    Volumes and data

    0.5 hour

    • Persistence in Kubernetes
    • PersistentVolumes and PersistentVolumeClaims
    • Storage classes
  • Additional workloads

    Batch processing

    0.5 hour

    • Jobs use cases
    • The difference between jobs and CronJobs

    Practice

    • Creating a CronJob to enable automated backup of the sample application database

    Management of clustered stateful applications

    1.5 hours

    • StatefulSets (use cases and their difference from Deployments)
    • Using headless services in combination with StatefulSets
    • Using readinessProbes in a combination with StatefulSets

    Practice

    • Preparing a Docker image in a MySQL Galera cluster
    • Preparing a headless service to perform service discovery during the cluster bootstrap
    • Deploying the MySQL Galera cluster as a StatefulSet
    • Attaching PersistentVolumeClaim as a template to each node in a StatefulSet

    Autoscaling

    0.75 hour

    • The working principle of pod autoscaling
    • Horizontal vs. vertical autoscaling

    Practice

    • Defining a horizontal autoscaler for the sample application
    • Testing Autoscaler
  • Networking

    Labels, selectors, and annotations

    0.5 hour

    • Labels use and format
    • How to use selectors
    • Annotations
    • The difference between labels and annotations
    • Scenarios for choosing labels over selectors

    Practice

    • Labelling pods
    • Using selectors
    • Annotating pods

    Services

    1 hour

    • Service types
    • Proxy modes
    • Service discovery (the env command, DNS)

    Practice

    • Connecting sample application components together using a Service
    • Using the DNS service discovery
    • Using the LoadBalancer service to expose an application
    • Implementing a blue-green deployment pattern

    Ingress

    0.75 hour

    • The Ingress service vs. the LoadBalancer service
    • Types of Ingress controllers (Google Cloud Load Balancing, NGINX, etc.)
    • Configuring Ingress
    • Ingress in on-prem installations

    Practice

    • Serving the application traffic from the Ingress service instead of the LoadBalancer service
    • Using a static IP with Ingress
    • Specify an application domain
    • Adding the SSL support

    Service meshes

    2 hours

    • An introduction to a service mesh (common features)
    • A service mesh interface
    • Comparison of service meshes
    • Service mesh tooling (Jaeger, Kiali, and Flagger)

    Practice

    • Deploying Istio
    • Deploying sample applications
    • Observing the results with Kiali and Jaeger

    Networking

    0.75 hour

    • CNI plugins
    • A network policy
    • Cluster DNS
    • External load balancers

    Practice

    • Setting and testing an ingress/egress network policy
  • Operations

    Managing kubernetes clusters

    0.5 hour

    • Kubernetes installers (kubeadm, kops, Kubespray, and other services provided by a cloud platform)
    • Managed Kubernetes services
    • Cluster updates and upgrades
    • Isolating nodes with different characteristics (node pools)

    Kubernetes components

    1 hour

    • Kubelet
    • Kube-apiserver
    • Etcd
    • Kube-scheduler

    Practice

    • Creating a kops cluster
    • Exploring kubelet
    • Manually accessing the API
    • Manually connecting to etcd
    • Manually scheduling a pod

    Namespaces

    0.25 hour

    • Managing multiple teams/resources
    • Providing virtual clusters

    Quotas

    0.5 hour

    • Namespace level resource control
    • Stability in a cluster

    Practice

    • Creating a namespace
    • Creating a quota
    • Testing a quota

    CI/CD

    0.5 hour

    • Building CI/CD pipelines for Kubernetes
    • Deployment patterns (canary deployments, blue-green deployments)

    Helm

    1.5 hours

    • The Helm architecture
    • How to secure Helm

    Practice

    • Using Helm to deploy the ELK stack logging and Prometheus
    • Reviewing the ELK stack Helm chart
    • Writing a sample Helm chart

    Logging and monitoring

    1.5 hours

    • A logging architecture in Kubernetes
    • Logging patterns (the sidecar pattern, a node agent, etc.)
    • An example of the ELK architecture
    • How to monitor the architecture
    • Metric sources (container metrics, API metrics, etc.)
    • The Prometheus architecture

    Practice

    • Deploying the ELK stack and Prometheus-Operator
    • Accessing cluster components logs
    • Accessing application logs
    • Using filters in Kibana
    • Viewing dashboards in Grafana

    Affinity and anti-affinity

    0.75 hour

    • Pod/node affinity/anti-affinity
    • Taints and tolerations
    • Use cases

    Practice

    • Configuring node/pod affinity and anti-affinity to see how Kubernetes schedules containers
  • Security

    Security overview

    0.75 hour

    • An overview of the CIS benchmark
    • Authentication and authorization methods
    • Admission controllers
    • Securing API access
    • Pod security policies
    • Securing Docker images

    Securing Docker images

    0.25 hour

    • Image signing with Docker Notary
    • Common Vulnerabilities and Exposures scanning
    • Application code scanning

    Admission controllers

    0.5 hour

    • How to ensure images are certified and scanned for vulnerabilities
    • The ways to control what gets deployed in each namespace

    Authentication and authorization

    1.5 hours

    • An overview of authentication methods
    • Service accounts
    • Authorization methods
    • Role-based access control (RBAC)

    Practice

    • Creating a namespace
    • Creating ServiceAccount
    • Binding RBAC roles to ServiceAccount
    • Using a kubectl container to access Kubernetes API inside a cluster
    • Testing RBAC roles

    Security contexts and pod security policies

    0.75 hour

    • Security contexts
    • Pod security policies
    • How to configure a security context for a pod or container

    Practice

    • Deploying an application that needs specific root access
    • Configuring a fully restricted security context
    • Adding a required root permission to SecurityContext

    Service accounts

    0.25 hour

    • How to configure service accounts for pods

    Network policies

    0.25 hour

    • How to declare network policies
  • Review and recap

    Game: “You are an architect” (optional)

    0.5 hour

    • A review of topics discussed. Using a whiteboard, we will describe an application with Kubernetes objects.

    Game: “Pin the tail on the Donkey”

    0.5 hour

    • ArReview of the Kubernetes component architecture in an interactive game

    Questions and answers

    0.5 hour or more

    • An ask-me-anything session
  • Additional topics

    Machine learning workloads

    1 hour

    • An Introduction to machine learning on Kubernetes
    • CI/CD practices in machine learning
    • Tooling
    • How to manage special hardware, such as GPUs

    A multi-cluster design (across clouds)

    0.75 hour

    • An introduction to a multi-cluster design
    • Management tools
    • Scaling requirements

    Working with compliance requirements

    0.75 hour

    • An introduction
    • The Health Insurance Portability and Accountability Act
    • Personally identifiable information
    • Payment Card Industry Data Security Standard

    Downward API

    0.5 hour

    Custom resource definitions (CRDs) and operators

    1 hour

The total duration of the class must be not less than 16 hours
Course Duration:

Cloud infrastructure provider for the training:

Google
Amazon
MS Azure

Your Deployment method:

Maximize your team's talent with customized hands-on training

Maximize your team's talent with customized hands-on training

We work with

VMware TanzuAzure kubernetes serviceAmazonEKSGoogle kubernetes engine

Select online training close to you

Public classes are not scheduled at the moment. Please contact us at training@altoros.com if you’d like to join our waitlist or request private training for your team.

Showing online training courses {{ filterTickets.length }} of {{ tickets.length }}

Show All Courses

{{ ticket.title }}

{{ ticket.country }},

{{ ticket.city }}

{{ ticket.date }}

{{ ticket.tickets_sold }} out of 10 sold

0 out of 10 sold

PASSED
SOLD OUT
Buy ticket
PAST EVENT

Prerequisites. Altoros recommends that all students have a laptop with:

  • An SSH terminal client (like SSH or Putty)
  • A tool to transfer files over SSH (like scp)
  • A web browser (Chrome/Firefox)
  • Internet connection (outgoing connections on TCP ports 22, 80, 8080, and 443)
  • Access to Google Cloud Platform and Google Cloud Console

Get updates on upcoming events and new courses, discounts and special offers

Why train with Altoros?

Through expertly led, hands-on custom training courses, Altoros helps IT professionals around the globe to advance their skills in cloud-native development and PaaS, blockchain, artificial intelligence, and deep learning.

20+

Years of experience

750+

Satisfied customers

1,400+

Successfully implemented projects

50+

Global 2000 organizations as customers

350+

Full-time engineers

7+

Global offices

What our customers say

/
01

“This program is really good and gives a deep understanding of Kubernetes. Christian (the trainer) was very friendly and helpful.”

Lead DevOps Engineer at Accenture

Kubernetes Deep Dive training in San Francisco

02

“Ryan was very knowledagle & made the training interesting. He focuses on enabling us to actually use the technology in the field with practical examples, highlighting common problems & solutions to the same.”

Senior Solutions Architect at State Farm

Kubernetes Deep Dive Training in NYC

03

“It was great to interact face to face with instructor and ask questions, the training was very intensive and hands-on.”

Lead Architect at Macy's

Kubernetes Deep Dive Training in Chicago

04

“Training was fantastic. Everything was great and the trainers were great guys.”

Platform Architect at IBM

Kubernetes Deep Dive Training in Los Angeles

05

“What was the biggest value of the course? Definitely understanding the basics of Kubernetes, and doing some troubleshooting of problems.”

DevOps Engineer at Hanu

Kubernetes Deep Dive Training in Los Angeles

06

“What was the biggest value of the course? Lots of hands-on exercises and adding additional topics as we asked before.”

Kubernetes Deep Dive training

Seoul

07

“The format is great, training customization content is appreciated too. The trainer was accommodative and adaptive, he was good at going around and helping everyone to work through exercise.”

Lead Platform Architect at Nestle

Kubernetes Deep Dive training in San Francisco

Brand
Brand
Brand
Brand
Brand
Brand
Brand
Brand
Brand
Brand
Brand
Brand
Brand
Brand
Brand

What trainees say about Altoros courses

/
01
Kubernetes Deep Dive Training in San Jose
02
Kubernetes Deep Dive Training in San Jose
03
Kubernetes Deep Dive Training, Washington DC
04
Kubernetes Deep Dive Training, Washington DC
05
Cloud Foundry for DevOps Training
06
Cloud Foundry Training at Cloud Foundry Summit, 2017
07
Kubernetes Deep Dive Training, Los Angeles

Frequently asked questions

Did not find the answer to your question? Drop us a line at training@altoros.com

  • Will I get a certificate after completion?

    Yes! Once you have completed our training, you will be issued a certificate that you can print or add to your LinkedIn profile for others to see.

    Note: the certificate does not represent official academic credit.

  • What are the available payment options?

    We accept all major credit cards including Visa, American Express, MasterCard, Discovery, and more. You can pay by credit card, bank transfer, PayPal or check.

    If you would like to get an invoice for your company to pay for this training, please email to training@altoros.com and provide us with the following info:

    • Name of your Company/Division which you would like to be invoiced
    • Name of the person the invoice should be addressed to
    • Billing Address
    • Purchase order # to put on the invoice (if required by your company)
  • Do you offer discounts?

    Yes, we offer discounts of up to 20% off for early birds who register for the training in advance. Each discount tier has a limited number of seats and all of our discounts are available in limited quantities. Once we sell all of our discounted seats, we move to full price.

  • Do you offer group discounts?

    Yes, we also offer a discount for groups of 3 or more people who register together.

  • What size are the groups?

    The standard group size is 7-10 people. Small class sizes provide students unparalleled access to instructors. This way each student can have enough attention and assistance from the instructor.

    Note: The class is contingent upon having 7 attendees. If there aren’t enough students, we will offer you to attend the class in a different location or make a full refund. That is also the reason why we ask not to buy flight tickets before the class is confirmed.

  • I need to travel to participate in training. Do you help with visa?

    We do not participate in the process of application for visa. However, we can provide a confirmation that you have registered for our class and bought a ticket for it. This should support your visa application.

    If your application is declined, we will refund the ticket, except for a small administrative fee.

  • What services do you offer after the training?

    Advanced training options or classes on different domain to widen your expertise and technical skill set (Kubernetes, Cloud Foundry, Microservices)

  • Why should I trust Altoros Training?

    We have 19 years of experience in the delivery of various projects with wide range of technologies.

    Our trainers are first of all engineers and developers who build Kubernetes solutions for our clients on daily basis

    We’ve already trained 500+ people all over the world.

Contact us

Preloader
Ryan Meharg

Ryan Meharg

Technical Director

ryan.m@altoros.com650 265-2266

4900 Hopyard Rd. Suite 100 Pleasanton, CA 94588