DevOps and Kubernetes

Kubernetes Fundamentals provides hands-on training, immersing participants in Kubernetes with precision and expertise.

Price

Application Deadline

March 1, 2024

Schedule

Monday, Wednesday, Saturday from 18:00 – 20:00
Course Duration

42 hours 

March 4, 2024 - April 20, 2024

Overview

Kubernetes Fundamentals is a meticulously crafted training designed to deliver a hands-on learning experience and immerse participants into the world of Kubernetes, the leading container orchestration platform. This training strips down to the essentials of Kubernetes, complemented by critical tools like Docker for container creation, Helm for package management, ArgoCD for GitOps-driven deployment, and GitHub for version control and CI/CD integration. This is the perfect place to start for anyone looking to get a solid foundation of Kubernetes. Through interactive labs, detailed home assignments, and comprehensive self-assessments, learners will gain a robust understanding of Kubernetes and its ecosystem. This immersive approach ensures that by the end of the course, participants will not only grasp theoretical concepts but also have the practical skills to apply Kubernetes best practices in their daily operations.

Target Audience

This training is intended for:

●      Newcomers to the DevOps world

●      Developers looking to upgrade their skills outside their conventional software development education/experience

●      Anyone deploying containerized applications

●      Site Reliability Engineers (SREs)

●      DevOps Engineers

●      Operations Engineers

Learning Objectives
  1. Understand the core concepts of Kubernetes and container orchestration
  2. Learn Docker containerization and how it integrates with Kubernetes
  3. Learn Helm for managing and deploying applications on Kubernetes
  4. Implement continuous deployment workflows with ArgoCD in a Kubernetes environment
  5. Utilize GitHub for source control and integrating CI/CD pipelines with Kubernetes
  6. Troubleshoot common issues and perform basic monitoring of applications running in Kubernetes
1. Introduction

●      Software delivery challenges

●      The microservices trend

●      Understanding containers

●      What problems do containers solve?

●      Understanding Kubernetes and its role in the cloud-native landscape

2. Installation and Configuration

      Installing Docker

      Installing and configuring kubectl for cluster management

      Deploying a local Kubernetes environment with minikube

      Learning essential kubectl commands

 

3. Getting Started with Docker

●      What is docker

●      The lifecycle of a container

●      Working with a Dockerfile

●      Creating a docker image for a basic application

●      What are docker image registers

●      Building Docker images

●      Publishing Docker images

●      Running Docker Containers

●      Multi-container orchestration

4. Introduction to Kubernetes

      The need and evolution of containerization

      Basics of Kubernetes

      Kubernetes Architecture

      Kubernetes Components

      Kubernetes tools

      Introduction to YAML

 

5. Kubernetes Architecture

●      Main components

●      Controlplane / Master Nodes

●      Worker Nodes

●      Kubelet

●      Controllers

●      Namespaces

●      Pods

●      Replication Controllers

●      ReplicaSets

●      Deployments

●      StatefulSets

●      Services

●      Ingresses

●      etc.

6. Kubernetes Volumes and Data

●      The need for storage

●      Ephemeral volumes

●      Volume Spec and Types

●      Shared Volumes

●      Persistent Volume and Claims

●      Dynamic Provisioning

●      Secrets

●      ConfigMaps

7. Service & Ingress

●      Introduction to Kubernetes Networking

●      The Kubernetes network model

●      What are Services?

●      Different Types of Services: NodePort, ClusterIp, LoadBalance

●      Kubernetes CNI

●      Network rules

●      Local Proxy for Development

●      Ingress API Resources

●      Deploying the Ingress Controller

●      Creating an Ingress Rule

●      Multiple Rules

8. Security

      Authentication & Authorization

      Role-Based Access Control (RBAC)

      Security Contexts

      Pod Security Policies

●      Network Security Policies

9. Helm

●      Introduction to Helm and its components (Charts, Repositories, Releases)

●      Managing dependencies and creating Helm charts for complex applications

●      Deploying and upgrading applications with Helm in a Kubernetes environment

●      Helm best practices and security considerations

10. GitHub and GitHub Actions

●      Introduction to GitHub

●      Understanding repositories, commits, branches, and pull requests

●      Introduction to GitHub Actions: benefits and use cases

●      Understanding workflows, events, jobs, steps, actions, and runners

●      Automating build and publish of docker images with GitHub Actions

11. Argo CD - Declarative GitOps CD for Kubernetes

●      Introduction to ArgoCD

●      GitOps and Continuous Delivery

●      Getting Started with Argo CD

●      Application Deployment with Argo CD

●      Advanced Argo CD Features

●      Argo CD Cluster Management and Multi-tenancy

●      CI/CD Pipelines with Argo CD

●      Monitoring, Logging, and Troubleshooting

12. Kubernetes Scaling

      Monitoring the Kubernetes cluster

      Setting up metric-server

      Horizontal Pod Autoscalers (HPA)

●      Vertical Pod Autoscalers

13. Logging and Troubleshooting

●      Basic Troubleshooting Steps

●      Working with pod logs

●      Understanding resource events

Certification / Completion

Minimum Criteria: 1. Course Attendance - 80% 2. Final Project / Exam - 20%

Instructor
Fisnik Selimi | Instructor

Fisnik is a seasoned Cloud & DevOps Engineer with a demonstrated history of working in the fintech and automotive industry. Experienced in cloud computing, networking, IaC, system administration, and DevOps.

Instructor
Mehmetali Shaqiri | Instructor

CTO/Founder of Appstellar

Mehmetali brings over 18 years of software development and infrastructure expertise. His current focus is helping businesses transition to and thrive in the cloud. Mehmetali is dedicated to developing the next generation of Cloud and DevOps Engineers in Kosovo through training and workshops

Facebook
Twitter
LinkedIn