3.25 out of 5
3.25
2 reviews on Udemy

Design, Implement and Deploy Kubernetes Cluster from Scratch

Manage applications in a productionized Kubernetes to orchestrate and automate deployment with Kubernetes services
Instructor:
Packt Publishing
32 students enrolled
English [Auto-generated]
Monitor Kubernetes clusters and run a highly available Kubernetes.
Manage your applications with large-scale container orchestration.
Secure Kubernetes using an access and identity management server.
Deploy an automation server and create a Pipeline as a Code solution to build and deploy an application.
Deploy and manage highly scalable, containerized applications with Kubernetes.
Adopt secure and high-performance best practices with Kubernetes.
Track metrics and logs for every container running in your cluster.
Streamline the way you deploy and manage your applications with large-scale container orchestration.
Monitor and troubleshoot Kubernetes clusters and run highly available Kubernetes.

Kubernetes is a powerful tool developed by Google for managing containerized applications in a clustered environment. Kubernetes helps you automate, deploy, scale, and manage containerized applications. It gives you the freedom to take advantage of on-premise cloud infrastructures. It also helps you write better cloud-native applications. Kubernetes is a core tool in DevOps; it gives you the ability to schedule and manage containers (Docker or otherwise) at scale. If you’re looking to use Kubernetes in production and have a better understanding of how to manage your containers using Kubernetes. then this Course is perfect for you!

This comprehensive 2-in-1 course is a fast-paced guide offering hands-on and practical guidance with step-by-step instructions to design, implement and deploy Kubernetes Cluster for production grid environment. You’ll initially get up and running with fundamentals of Kubernetes and container orchestration. You’ll build your own container cluster and manage it as well as secure the cluster and handle service discovery. Moving further, you’ll streamline the way you deploy and manage your applications with large-scale container orchestration. Also, monitor and troubleshoot Kubernetes clusters and run highly available Kubernetes. Finally, you’ll be able to use Kubernetes in production and will have a better understanding of how to manage your containers using Kubernetes.

By the end of this course, you’ll containerize your applications to build a production-class container infrastructure in the ‘Kubernetes way’.

Contents and Overview

This training program includes 2 complete courses, carefully chosen to give you the most comprehensive training possible.

The first course, Kubernetes in 7 Days, covers managing applications in a productionised Kubernetes. This course will help you to unravel the potential of Kubernetes in the shortest amount of time. You will begin by creating your first Kubernetes cluster using Minikube. Then move on to exploring Kubernetes in some more detail and build a complex cluster. By the 4th Day, you will learn to enhance your cluster with a Grafana based monitoring dashboard in your application. Once you’ve acquired knowledge on dashboards, explore how a Kubernetes cluster provisions storage to its applications and learn how to secure them. Finally, learn to create a CI/CD pipeline to build and deploy your applications.

The second course, Kubernetes Recipes, covers how to orchestrate and automate deployment with Kubernetes services. You will first learn how Kubernetes works with containers and will work through an overview of the main Kubernetes features such as pods, replication controllers, and more. Next, you will learn how to create Kubernetes clusters and how to run programs on Kubernetes. Then you will be introduced to features such as high availability, setting up Kubernetes masters, using Kubernetes with Docker, and orchestration with Kubernetes using AWS. Later, you will explore how to use Kubernetes-UI and how to set up and manage Kubernetes clusters on the cloud and bare-metal. You will also work through recipes on microservice management with Kubernetes. Upon completion of this course, you will be able to use Kubernetes in production and will have a better understanding of how to manage your containers using Kubernetes.

By the end of this course, you’ll containerize your applications to build a production-class container infrastructure in the ‘Kubernetes way’.

About the Authors

Des Drury is a passionate technologist with many years’ experience in all aspects of data center infrastructure, automation, programming languages, and developer workflows. He is:
– Co-organizer of the Melbourne Kubernetes Meetup
– Author of Open Datacentre, a Kubernetes distribution with numerous datacenter workloads;
– A Kubernetes evangelist from the early days of its release;
– Passionate about helping teams to understand complex technology
– Teaches the skills required for team members to solve their own problems
– An excellent communicator and enjoys helping people, passing on knowledge, and improving processes
He has also built numerous tools that have been adopted as enterprise solutions and has received a number of awards.

Subhankar Sengupta has vast experience in DevOps, Kubernetes and Microservices domains. He is a senior architect, working for Red Hat, Emerging Technologies and is responsible for architecting containerization strategy via enterprise Kubernetes adoption for large BFSI and Government sectors. He has the practitioner’s view of the day-to-day challenges and could talk from an insider’s perspective. The target audience will be able to leverage his experience and could learn complex topics with relative ease.

Kubernetes in 7 Days

1
Course overview

This video will give you an overview about the course.

2
Installing the Pre-reqs

This video describes how to install the pre-requisite software for the course.

  • Install kubectl and Virtual box

  • Install Minikube and Helm and Visual Studio

  • Install kubectx and kubens and kubetail

3
Creating a Cluster with Minikube

This video describes the steps to create a local development cluster using Minikube.

  • Get to know how to install a number of the Kubernetes add-ons

4
Exploring Your Cluster

This video provides a quick exploration of some of the important aspects of the Minikube cluster.

  • Learn how to work on the Kubernetes dashboard and the CLI.

5
Deploying an Application

This video describes how to build an application with Docker.

  • Describe the application in a Kubernetes native way

  • Deploy the application to Kubernetes

  • Finally test it in Kubernetes.

6
Homework

This video is your homework for day one.

  • Take a look at the Question and try solving it on your own before the next lecture

7
Kubernetes Architecture

This video does a quick whistle stop tour of the Kubernetes architecture.

  • Explore Kubernetes processes.

  • Understand Kubernetes concepts.

  • Learn important Kubernetes resource types

8
Kubernetes Manifests

This video describes the Kubernetes manifests

  • Explore in detail Kubernetes resources.

  • Create Kubernetes resources.

9
Kubectl Config

This video describes the kubeconfig file.

  • Configure kubectl CLI using the kubeconfig file

10
Helm for Package Management

This video describes the need for package management in Kubernetes.

  • Describe Kubernetes package called Helm.

  • Install Helm to Clusters.

  • Re-deploy first-app using Helm.

11
Deploying a Complex Application

This video describes how to deploy a more complex application using Helm.

  • Explore the Helm chart

  • Install Helm

  • Deploy MediaWiki

12
Homework

This video is your homework for day two.

  • Deploy the first-app application to Minikube.

13
Install a Multi-Node Cluster

This video describes how to install a multi-node Kubernetes cluster with kubeadm using a project called k8s-vagrant-multi-node.

  • Explore about kubeadm from the documentation

  • Install Vagrant

  • Install the cluster

14
Explore the Cluster

This video explores some the features of a multi-node Kubernetes cluster.

  • Check the nodes present

  • Explore in detail about all the nodes

15
Deploy Initial Workloads

This video demonstrates how to deploy some of the first workloads you will need on your cluster.

  • Deploy Helm

  • Deploy Ingress Controller and Heapster

  • Install Kubernetes Dashboard

16
Deploy First-App with Ingress

This video describes how to redeploy the first-app using Helm, but this time with an Ingress resource

  • Take a look at the Ingress resource template

  • Deploy into the cluster

  • Test the application

17
Homework

This video is your homework for day three.

  • Install the multi-node cluster onto your own machine and deploy the initial workloads to it.

18
Probes and Self Healing

This video describes how Kubernetes uses probes to facilitate self healing of workloads in the cluster.

  • Explore types of Probe

  • Learn about Probe actions

  • Implement Probes in code

19
Prometheus

This video describes Prometheus, a very popular monitoring solution and timeseries database (TSDB).

  • Explore Prometheus architecture

  • Install Prometheus into the cluster

  • Explore some of the available metrics

20
Grafana

This video provides a quick overview of Grafana.

  • Learn about Grafana

  • Deploy Grafana into the cluster

  • Log in to the Grafana web UI

21
Grafana Dashboards

This video describes how to find pre-built Grafana dashboards

  • Explore the dashboard

  • Understand the different areas of the dashboard

  • Deploy the 2nd dashboard

22
Homework

This video is your homework for day four.

  • Install Prometheus and Grafana into the cluster

23
PVs and PVCs

This video describes how Kubernetes uses PersistentVolumes (PVs) and PersistentVolumentClaims (PVCs) to manage storage for an application.

  • Explore types of Persistent volumes

  • Learn about Access Modes

  • Discuss how storage classes are used to enable the dynamic provision of persistent volumes

24
Install Rook

This video provides an overview of Rook, a Kubernetes operator to manage storage clusters like Ceph.

  • Explore Rook architecture

  • Install Rook into the cluster.

  • Deploy an example to test the block storage

25
Explore Rook

This video describes how you can use the Rook Toolbox to get a deeper understanding of the Ceph components.

  • Explore in detail about the Rook toolbox

  • Deploy Rook in an example

26
Deploy a HA Database

This video describes how to deploy a HA MariaDB database that makes use of the persistent storage provided by Rook.

  • Install MariaDB

  • Deploy a HA version of the MariaDB database

  • Clean up the rook sample workloads

27
Homework

This video is your homework for day five.

  • Install Rook on your cluster and then redeploy Prometheus and Grafana to use persistent storage.

28
RBAC

This video describes how Role Based Access Control (RBAC) is used within Kubernetes to secure components of the cluster.

  • Explore RBAC resources and implement it

  • Learn about cluster roles and implement it

  • Explore cluster role bindings and implement it

29
Keycloak

This video describes how to install Keycloak, an open source access management and identity server, into the cluster.

  • Install Keycloak

  • Configure Keycloak to help protect Kubernetes

30
Configuring Kubernetes to Use OIDC

This video describes how to configure Kubernetes to use OIDC to secure cluster components.

  • Get the ca.crt file

  • Restart the API server

31
Securing the Kubernetes Dashboard

This video describes how to extend the Kubernetes Dashboard deployment so that it is now protected by an OIDC proxy that authenticates with Keycloak.

  • Deploy the Kubernetes manifests

  • Connect to Ingress

  • Log in to the Kubernetes dashboard

32
Securing Kubectl

This video describes how to configure kubectl so that a user authenticated by Keycloak is used to access the cluster.

  • Authenticate Keycloak

  • Update the kube config file

  • Map the user against cluster and access the cluster

33
Homework

This video is your homework for day six.

  • Secure the Kubernetes cluster using Keycloak

34
Overview of CI/CD

This video provides a quick overview of Continuous Integration (CI) / Continuous Deployment (CD) concepts.

  • Explore Typical CI workflow

  • Learn about Continuous Delivery and Continuous Deployment

35
Jenkins

This video describes how to install Jenkins, a very popular automation server often used to implement CI/CD.

  • Install Jenkins

  • Deploy a Docker in Docker (DIND) service to build containers in the cluster.

36
Pipeline as Code

This video describes how Jenkins implements the Pipeline as Code concept using a Jenkinsfile.

  • Learn the types of Jenkinsfile

  • Explore Kubernetes plugin for Jenkins

  • Take a look at the Jenkinsfile to build the first-app

37
Create a Pipeline

This video describes how to create a Jenkinsfile to build and deploy the first-app we saw in earlier Sections of the course.

  • Create a fork

  • Navigate to the Jenkinsfile and modify the repository name

  • Build the Pipeline created

38
Homework

This video is your homework for day seven

  • Install Jenkins and setup a pipeline to build and deploy the first-app

Kubernetes Recipes

1
The Course Overview

This video provides an overview of the entire course.

2
Introduction to Containers

In this video, we will learn about containers—the building blocks of Kubernetes.

  • Understand what a container is and why we use it

  • Learn the advantages of Docker container

  • Input commands to get familiar with the Docker container

3
Kubernetes Cluster Architecture Overview

In this video, we will study the key components that make up the architecture of a Kubernetes cluster.

  • Define what Kubernetes is

  • Understand the architecture of the Kubernetes cluster

  • Discuss the flow of data in the Kubernetes cluster

4
Single-Node Kubernetes Deployment (Minikube)

This video will cover the deployment of Minikube, which is a one node deployment of Kubernetes cluster.

  • Understand what Minikube is

  • Understand the deployment of Minikube

  • Ensure the service of Minikube

5
Understanding YAML File

This video elaborates the structure of YAML file and the common objects used in it.

  • Understand the YAML file and its formatting structure

  • Discuss the common Kubernetes object used in YAML file

6
Building our First Pod

This video will cover the deployment of our first pod in our Minikube cluster.

  • Create a YAML file for the deployment of pod

  • Discuss each component in the pod YAML file

  • Ensure the creation of the pod and its services using kubectl and Docker command utilities

7
Planning a Kubernetes Cluster

This video elaborates about the planning of Kubernetes cluster and the major components that you need to consider when deploying the Kubernetes cluster.

  • Understand why we need the Kubernetes cluster-based architecture with use cases

  • Discuss the major components that are required or can be optional as per your organization needs

  • Define helm and how we can make the internal repo in order to get our previous projects

8
Overview of the Environment Setup

In this video, you will learn about the environment setup of Kubernetes cluster and what are the minimum requirements that you need in order to follow along with this course.

  • Understand the lab environment resources

  • Get an overview of the service ports for cluster communication in Kubernetes cluster

  • Elaborate the steps required in order the deploy Kubernetes cluster

9
Installation of Kubernetes Cluster

This video focus on the installation and configuration of Kubernetes cluster.

  • Understand how to install and configure the Kubernetes cluster

  • Join the worker nodes with the master node

  • Check the nodes status and all system pods

10
Verification of Kubernetes Services

This video focus on the validation services of Kubernetes cluster. You will also learn the troubleshooting steps for the deployment of Kubernetes cluster.

  • Check the system pods status and swap partition

  • Check the services on the worker nodes

  • Check the logs of pods or use the journal system for looking into logs

11
Cluster Communication Details

This video focus on the communication details inside the Kubernetes cluster.

  • Understand the flow of Kubernetes cluster communication

  • Learn the primary communication paths used in the Kubernetes cluster

  • Get a summary of the section

12
Deployments, Rolling Updates and Rollbacks

In this video, you will learn what deployment is and roll your updates back when needed.

  • Prepare the YAML file for deployment

  • Update the deployment

  • Learn how to roll back the deployment

13
Service Networking

This video focuses on the service networking in Kubernetes, specifically kube-proxy.

  • Understand how to expose the services

  • Configure and expose the service of an application inside the Kubernetes cluster

  • Define the kube-proxy and other networking methods used in Kubernetes

14
Ingress

This video focuses on how the ingress feature works in Kubernetes cluster. Furthermore, we have configured the ingress for a use case.

  • Install ingress controller in Kubernetes cluster

  • Deploy a pod and create a service for the ingress

  • Create a rule for the ingress and access the application outside the Kubernetes cluster

15
Deploying a Load Balancer

In this video, you will learn how to deploy a load balancer in Kubernetes cluster.

  • Define load balancers in the Kubernetes cluster

  • Understand how to deploy a load balancer

  • Discuss the YAML file to deploy a load balancer

16
Configure and Use Cluster DNS

In this video, you will learn about the cluster DNS and service discovery inside the Kubernetes cluster. You will also learn about the troubleshooting steps if the cluster DNS is not working.

  • Discuss the service discovery in Kubernetes cluster

  • Check the cluster DNS services

  • Troubleshoot the cluster DNS problems

17
Persistent Storage

In this video, you will learn to configure and deploy a NFS-based storage application in which the mount point for the storage of POD will be the same.

  • Configure the NFS storage server

  • Configure the persistent volume and claim the storage

  • Create our pod to check whether the NFS storage is working or not

18
Kubernetes Self-Healing

In this video, you will understand the self-healing concept in Kubernetes.

  • Check the response of the pod if it is removed from deployment kind

  • Shut down one of the nodes in the Kubernetes cluster to see how it responds

19
Liveness Probes in Kubernetes

In this video, you will learn how to create a trigger if the application fails in the container.

  • Grasp the concept of liveness probes in Kubernetes

  • Define the use cases and benefits of liveness probe in Kubernetes

  • Demonstrate and test how to implement the liveness probe

20
Auto-Scaling

This video elaborates the auto-scaling concepts in Kubernetes.

  • Understand what auto-scaling is

  • Explain a cost effectiveness use case

  • Define how auto-scaling is driven by metrics

21
Horizontal Pod Auto-Scaling

In this video, you will learn how to deploy the auto-scaling feature in Kubernetes using Horizontal Pod Auto-scaling (HPA).

  • Understand the steps to perform auto-scaling using HPA

  • Deploy the pod and learn how to auto-scale it

  • Understand the configuration of HPA and how our configuration will impact our application

22
Monitoring

In this video, you will get an overview in monitoring in the Kubernetes cluster.

  • Understand what monitoring is

  • Learn the different types of monitoring

  • Get an overview of Prometheus and Grafana

23
Configuring Prometheus and Grafana

In this video, you will learn about technical configurations and installation of Prometheus and Grafana.

  • Understand the installation method

  • Discuss the steps for installation and configuration

  • Install Prometheus and Grafana verify their services

24
Cluster Monitoring

In this you will learn about monitoring the Kubernetes infrastructure using Grafana.

  • Discuss Kubernetes monitoring using the Grafana community Dashboard

  • Import a community dashboard using Grafana

  • Explore the features of the Grafana community Dashboard

25
Application Monitoring

In this video, you will learn about application monitoring and how you can collect the monitoring data from an application.

  • Discuss the way to collect the monitoring data from an application

  • Plan a framework or language when creating an application to get the monitoring data

  • Implement the service so it can automatically collect the data from application

26
Alerting

In this video, you learn how to configure alerting in the Grafana dashboard.

  • Understand what alerting is and how it is significant in an organization environment

  • Set up alerts

  • Set the notification channel

27
Test your knowledge
You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
3.3
3.3 out of 5
2 Ratings

Detailed Rating

Stars 5
0
Stars 4
1
Stars 3
0
Stars 2
1
Stars 1
0
01907f4035d0d285b8246ecc801f55b4
30-Day Money-Back Guarantee

Includes

5 hours on-demand video
Full lifetime access
Access on mobile and TV
Certificate of Completion