Kubernetes is an open source container orchestration platform developed by Google for managing microservices or containerized applications across a distributed cluster of nodes. Kubernetes is highly resilient and supports zero downtime, rollback, scaling, and self-healing of containers. The main objective of Kubernetes is to hide the complexity of managing a fleet of containers. It can run on bare metal machines or on public or private cloud platforms such as AWS, Azure and OpenStack. Kubernetes architecture follows a client-server architecture.
Main Components of the Kubernetes Master Server
etcd cluster – a distributed key value storage that stores Kubernetes cluster data
kube-apiserver – the central management entity that receives all REST requests for modifications to cluster elements
kube-controller-manager – runs controller processes like replication controller (sets number of replicas in a pod) and endpoints controller (populates services, pods and other objects)
cloud-controller-manager – responsible for managing controller processes with dependencies on the underlying cloud provider
kube-scheduler – helps schedule the pods (a co-located group of containers inside which our application processes are running) on the cluster nodes based on resource utilization
Main components of the Kubernetes Node (Worker) Server
kubelet – the main service on a node, taking in new or modified pod specifications from kube-apiserver, and ensuring that pods and containers are healthy and running
kube-proxy – runs on each worker node to deal with individual host subnetting and expose services
kubectl is a command line tool that interacts with kube-apiserver and send commands to the master node. Each command is converted into an API call.
Kubernetes is a complex system, and learning step by step is the best way to gain expertise. In this page we’re compiled all the valuable Kubernetes tutorials from multiple sources – from the big players like Google, Amazon and Microsoft, to individual bloggers and community members. Tutorials are classified into the following categories:
The Kubernetes Bible for Beginners & Developers – Level Up
Kubernetes is a powerful open-source system that was developed by Google. It was developed for managing containerized applications in a clustered environment. Kubernetes has gained popularity and is becoming the new standard for deploying software in the cloud. Learn Kubernetes in a simplified way. The article covers Kubernetes’ basic concepts, architecture, how it solves the problems, etc. Read the article on level-up.one
Kubernetes Tutorial: Getting Started with Containers & Clusters | Codeship
Kubernetes is a highly popular open-source container management system. The goal of the Kubernetes project is to make management of containers across multiple nodes as simple as managing containers on a single system. In this tutorial, you’ll learn about Kubernetes by deploying a simple web application across a multinode Kubernetes cluster.
Learn Kubernetes in Under 3 Hours: A Detailed Guide to Orchestrating Containers
By the end of this article, you will be able to run a Microservice based application on a Kubernetes Cluster. You will learn how to run a Microservice based application on your computer, build container images for each service of the Microservice application and how to deploying a Microservice based application into a Kubernetes Managed Cluster.
Kubernetes Tutorial | An Introduction To Kubernetes | Edureka
Kubernetes Deployment Tutorial For Beginners
A Tutorial Introduction to Kubernetes
Learn Kubernetes Basics
What is Kubernetes – Learn Kubernetes from Basics
A Beginner’s Guide to Kubernetes
Deploying a containerized web application | Kubernetes Engine
Tutorial: Configuring a Kubernetes DevTest Cluster in DigitalOcean
The 3 Kubernetes Essentials: Cluster, Pipeline, and Registry
Kubernetes Tutorial For Beginner – Kubernetes Basics, Overview, Features
Kubernetes Basic Tutorials
Blazing-Fast Log Management and Observability for Modern Apps | Scalyr
This tutorial is going to explain the basics you need to know to get started with Kubernetes, including concepts and real code examples that will help you get a better idea of why you might need to use Kubernetes if you’re thinking about using containers.
Getting started with Cloud Endpoints for Kubernetes with ESP
How to Create, Delete, Scale, and Update the Pods of StatefulSets
Architecting Applications for Kubernetes | DigitalOcean
Using GPGPUs with Kubernetes | Ubuntu
Kubernetes Deployment | The Ultimate Guide | Platform9
Kubernetes Tutorial: How to pull a private docker image in a pod
How to quickly install Kubernetes on Ubuntu
Kubernetes AWS and Azure Tutorials
Kubernetes on AWS: Tutorial and Best Practices for Deployment
Set up a Production-Quality Kubernetes Cluster on AWS
How to move from single master to multi-master in an AWS kops kubernetes cluster
Kubernetes on Azure tutorial – Prepare an application – Azure Kubernetes Service
Tutorial: Run Kubernetes on Amazon Web Services (AWS) — Heptio Docs
Tutorial: Deploy Kubernetes on Hetzner Cloud + Ingress + OpenEBS Storage – stytex Blog
How to Deploy Node js App to Google Container Engine Using Kubernetes | blog.fossasia.org
Kubernetes Python/Django Tutorials
Running a Python application on Kubernetes
This step-by-step tutorial takes you through the process of deploying a simple Python application on Kubernetes.
Deploy a simple Python application with Kubernetes
Make sense of Kubernetes with these step-by-step instructions on how to deploy a Python Flask application to the IBM Cloud Kubernetes Service.
Running a Python Application on Kubernetes
Read our blog
Quickstart: Deploying a language-specific app
This page shows you how to do the following:
Page not found – Mitra Innovation
Kubernetes with Other Frameworks: Ruby/Rails, Spring, Neo4j
Kubernetes Tutorial: Running a Rails App in Kubernetes
How to Use Kubernetes to Quickly Deploy Neo4j Clusters – Neo4j Graph Database Platform
Migrating a Spring Boot service to Kubernetes in 5 steps
Kubernetes Monitoring and Prometheus Tutorials
Introduction to Kubernetes Monitoring
Monitoring a Kubernetes cluster allows engineers to observe its resource utilization and take action when something goes wrong. This article explores what you should be monitoring and how to go about it with Rancher, Prometheus, and Grafana.
How to Setup Prometheus Monitoring On Kubernetes Cluster
Logging & Monitoring of Kubernetes Applications: Requirements & Recommended Toolset
How to monitor Kubernetes + Docker with Datadog
Kubernetes monitoring with Prometheus in 15 minutes
Simple Kubernetes cluster metrics monitoring with Prometheus and Grafana
Monitoring Kubernetes Architecture – DZone DevOps
Kubernetes on Windows and Mac
Getting started with Docker and Kubernetes on Windows 10
How to set up Kubernetes on Windows 10 with Docker for Windows and run ASP.NET Core
Tutorial : Getting Started with Kubernetes with Docker on Mac
Kubernetes Tutorials in Other Environments
Getting started with IBM Cloud Kubernetes Service
Tutorial: Run a custom LAMP application on Kubernetes — Heptio Docs
How to run HA MongoDB on Kubernetes
Deploying Java Applications with Docker and Kubernetes
SAP Tutorial Navigator | SAP
Older Kubernetes Tutorials, But Still Worth a Look
Azure Kubernetes Service (AKS) | Microsoft Azure
Tutorial : Getting Started with Kubernetes on your Windows Laptop with Minikube
Just a Few Steps Away from Mastering Kubernetes…
Kubernetes is extremely powerful but has a steep learning curve. We hope this compilation of tutorials will help you make your next steps towards expertise in this important platform.
You can help us grow and improve this list:
Found a tutorial that should be removed?
Have a new tutorial we should add?
Let us know using the form at the bottom of this page.
Aqua Security is the largest pure-play cloud native security company, providing customers the freedom to innovate and accelerate their digital transformations. The Aqua Platform provides prevention, detection, and response automation across the entire application lifecycle to secure the build, secure cloud infrastructure and secure running workloads wherever they are deployed.
Aqua customers are among the world’s largest enterprises in financial services, software, media, manufacturing and retail, with implementations across a broad range of cloud providers and modern technology stacks spanning containers, serverless functions, and cloud VMs.