Kubernetes

Learn via : Virtual Classroom / Online
Duration : 3 Days
  1. Home
  2. /
  3. Kubernetes

Description

    The objective of this training is to provide knowledge to the participants how Container technologies, which increasingly becoming popular, can be managed modernly in a production environment with high availability, fault tolerance, minimum human intervention, self-management and scaling characteristics.

    First of all, the topics that will be discussed conceptually during the training are going to be covered with examples through the existing problems, the answers given to these problems and the alternative ones. The subjects that are conceptually explained and exemplified by utilizing different means will be put flesh on the bones through the open-source Kubernetes platform which is generally accepted in the industry. Thus, the participants will have the opportunity to master on the Kubernetes platform as well along with modern Cluster management and Container orchestration.

     

    Training Benefits

    • You will become acquainted with current Cluster management problems and inefficiencies.
    • You will see how Containers are used in a production environment, which has been frequently used in the development environment.
    • You will be familiar with modern Cluster management tools and techniques
    • You will overcome the first learning barrier by getting to know the Kubernetes platform and will be able to cope better with the problems you may confront in the future.
    • You will see how you can apply these modern tools introduced to your existing workflows. Additionally, you will have the knowledge that you will be able to adapt easily.

     

    Audience

    Developers, operators, quality/test engineers, and software and system architects who wish to have strong fundamentals and best practices on Kubernetes and Container orchestration technologies

     

    Topics:

     

    Motivation

    In this section, the problems that cause us to need Cluster management and Container orchestration, the solutions to these problems and the advantages and disadvantages of these solutions will be discussed.

     

    Modern Cluster and Application Management

    Participants will gain information on how clusters and applications are managed in modern architectures. This information will be reinforced through sample scenarios. The concepts conceptually explained and sampled with different tools in this section will help in understanding the structure of Kubernetes in the following sections.

     

    Kubernetes – Basic Concepts

    In this section, the basic concepts of Kubernetes (Pod, Replication Controller Deployment, Service, Labels, Namespace, Volumes, Config Map, Stateful Sets, Daemon Sets, Secrets, etc.) will be exemplified on an existing Kubernetes cluster.

    Participants who will be familiar with the Kubernetes CLI and its basic notions will be deploying their first applications to Kubernetes in pairwise groups in an environment prepared for them.

     

    Kubernetes – Architecture

    The main components (kubelet, kube-apiserver, kube-proxy, kube-scheduler, etc.) of the Kubernetes platform familiarized by the user will be explained with their basic functions, and the roles of Kubernetes in their life cycle will be conveyed to the participants for problem-solving purposes.

     

    Installations of Simple Kubernetes Clusters

    Studies will be carried out on how to build both the development environment and the test environments with `Minikube` and` kubeadm` tools.

     

    Kubernetes Networking

    Studies will be carried out on how to build both the development environment and the test environments with `Minikube` and` kubeadm` tools.

     

    Techniques, Tools and Tricks

    The tools in the rich Kubernetes ecosystem will be introduced to the participants who have already become familiar with Kubernetes, information about the most optimized techniques will be provided, and the tricky parts of these techniques will be mentioned. At the end of this section, the participants will be able to comprehend all aspects of the introduced technology and to save time in doing researches themselves.

     

    End to End Transformation

    Participants getting familiar with the Container orchestration via simple examples will reinforce the acquired theoretical and practical knowledge by working in pair groups and making a classic application stack run on Kubernetes. The application stack will be provided by the instructor.

     

    Problem Solving

    The problems frequently encountered in Kubernetes will be introduced to the participants. Participants in groups will be expected to solve various problems in different types.


Outline

Day 1:

  • Docker ve Container Teknolojilerinin Kısa Tanıtımı
  • Docker ile Uygulamalı Olarak Container Özelliklerinin Kısa Tanıtımı
  • Container Orkestrasyona Giriş, Terminoloji ve Tarihçe
  • Kubernetes’e Giriş
  • Workshop 1: Windows/macOS Kubernetes Kurulum Alternatifleri (Minikube, Docker for Windows)
  • Workshop 2: Linux Sunucuda kubeadm ile Kubernetes Cluster’ı kurulması
  • Kubernetes Bileşenlerinin ve Mimarisinin İncelenmesi
  • Kubernetes Temel Objelerinin (pod, deployment, servis, vb) İncelenmesi
  • Workshop 3: Katılımcıların Temel Objeleri Kullanabilmesine Yönelik Alıştırmalar
  • Containerize Edilmiş bir Uygulamanın Kubernetes ile Ayağa Kaldırılması
  • Workshop 4: Katılımcıların İkili Gruplar Halinde Basit bir Uygulamayı Kubernetes’e Geçirmeleri

Day 2:

  • Kubernetes ile Service Discovery
  • Kubernetes Servis Tipleri (Cluster IP, NodePort ve Load Balancer)
  • Ingress Controller
  • Kubernetes Networking Altyapısı
  • Workshop 1: Katılımcıların İkili Gruplar Halinde Kubernetes Networking’i Daha İyi Anlamalarını Sağlayacak Alıştırmalar Yapması
  • Yüksek Erişilebilirlik Senaryoları (Affinity, Anti-Affinity Filtreleri)
  • Horizontal Pod Autoscaling
  • Workshop 2: Katılımcıların İkili Gruplar Halinde Otomatik Farklı Parametrelere Bağlı Olacak Şekilde Otomatik Scale Olacak bir Uygulamayı Yapılandırması
  • Enterprise Kullanım Senaryoları – RBAC

Day 3:

  • Kubernetes’in Bütün Objelerinin (job, statefulset, vb) İncelenmesi
  • Workshop 1: Katılımcıların Stateful bir Uygulamayı Deploy Etmesi
  • Kubernetes Mimarisinin Hata Ayıklamaya Yetecek Kadar İncelenmesi
  • Cluster Bakımı ve Hata Ayıklama
  • Workshop 2: Katılımcıların İkili Gruplar Halinde Kendilerine Verilen Çeşitli Problemleri Çözmeleri
  • Helm Chart
  • Kubernetes Operator
  • Metrik Toplama (Prometheus) ve Gösterme (Grafana)
  • Kubernetes Ekosistemindeki Çeşitli Araçların İncelenmesi (Istio, vb)
  • Katılımcılardan Gelen Senaryoları Üzerinden Alıştırmalar Yapılması
  • Katılımcıların Sorularının Cevaplandırılması

Prerequisites

Docker Fundamentals