Skip to content

anveshmuppeda/kubernetes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿš€ Kubernetes Complete Handsโ€‘On Guides ๐ŸŒŸ

Typing SVG
Forks Stars Watchers Last Commit Commit Activity Repo Size Star Badge Awesome GitHub License GitHub contributors Open Issues Open PRs PRs Welcome

Cloud Engineer | Kubernetes Developer | Open Source Contributor

LinkedIn Twitter Medium Email DockerHub

๐Ÿš€ Community-Driven Knowledge Hub
We welcome contributions to build the most comprehensive Kubernetes hands-on resource!

๐Ÿ“ข How You Can Help:

Open Issues Good First Issues Open PRs


Table of Contents

Why These Guides? ๐Ÿ’ก

โœ… Battle-Tested Content - Lessons from managing 1000+ pods in production
โœ… Cloud-Agnostic - Works on AWS EKS, GCP GKE, Azure AKS, and bare metal
โœ… Version Current - Updated for Kubernetes 1.32+ features
โœ… Zero Fluff - Direct executable examples with explanations

Introduction

Kubernetes, also known as K8s, is an open-source container orchestration platform designed to automate the deployment, scaling, and management of containerized applications. It groups containers into logical units for easy management and discovery, ensuring high availability and scalability.

My Blogs On Kubernetes

Here is a List of My Blog Posts on Kubernetes

No. Date Title
1 N/A A Hands-on Guide to Kubernetes Custom Resource Definitions (CRDs) with a Practical Example
2 N/A A Hands-on Guide to Vault in Kubernetes
3 N/A A Hands-on Guide to Kubernetes Resource Quotas & Limit Ranges
4 N/A Rolling Update & Recreate Deployment Strategies in Kubernetes
5 N/A Blue-Green Deployment in Kubernetes
6 N/A A Hands-on Guide to Kubernetes Volumes
7 N/A A Hands-on Guide to Kubernetes RBAC with a User Creation
8 N/A Implementing Canary Deployment in Kubernetes
9 N/A A Hands-on Guide to Kubernetes Pod Disruption Budget (PDB)
10 N/A A Hands-on Guide to Kubernetes CronJobs
11 N/A A Hands-on Guide to Kubernetes Jobs
12 N/A Mastering Kubernetes Backups with Velero
13 N/A Kubernetes Ingress: Transitioning to HTTPS with Self-Signed Certificates
14 N/A Mastering Kubernetes ConfigMaps
15 N/A Secure Your Kubernetes Apps: Hands-On Basic Authentication with Ingress
16 N/A Migrating Angular .NET Docker Environment to Kubernetes
17 N/A Exploring Types of Routing-Based Ingresses in Kubernetes
18 N/A A Hands-On Guide to Kubernetes Ingress Nginx
19 N/A Mastering Kubernetes Ingress
20 N/A From Docker to Kubernetes: Elevating Our Login App
21 N/A Kubernetes Taints & Tolerations
22 N/A Azure DevOps Self-Hosted Agents on Kubernetes: Part 3
23 N/A Azure DevOps Self-Hosted Agents on Kubernetes: Part 2
24 N/A Azure DevOps Self-Hosted Agents on Kubernetes: Part 1
25 N/A Understanding Kubernetes Pod Fields
26 N/A kubectl Helper: Your Ultimate Kubernetes Command Companion
27 N/A Exploring Container Types in Kubernetes: Beyond Init and Sidecar Containers
28 N/A Deploying NGINX on Kubernetes: A Quick Guide
29 N/A Setting Up an Amazon EKS Cluster and Node Group Using eksctl
30 N/A Jump Box Setup on EKS Cluster
31 N/A โŽˆ A Hands-On Guide to Kubernetes External Secrets Operator ๐Ÿ› ๏ธ
32 N/A โŽˆ A Hands-On Guide to Kubernetes Priority Classes ๐Ÿ› ๏ธ
33 N/A โŽˆ A Hands-On Guide to Kubernetes Horizontal & Vertical Pod Autoscalers ๐Ÿ› ๏ธ
34 N/A โŽˆ A Hands-On Guide to Kubernetes QoS Classes๐Ÿ› ๏ธ
35 N/A โŽˆ A Hands-On Guide to Kubernetes Endpoints & EndpointSlices ๐Ÿ› ๏ธ
36 2025-04-14 โŽˆ AWS EKS Pod Identity vs IRSA ๏ธ
37 2025-04-14 โŽˆ Karpenter + EKS: The Smart Way to Scale ๏ธ
38 2025-04-08 โŽˆ A Hands-On Guide to AWS EKS IAM Roles for Service Accounts (IRSA) ๏ธ
39 2025-04-07 โŽˆ A Hands-On Guide to AWS EKS Pod Identity ๏ธ
40 2025-03-31 EKS Debug with AI Assistant ๏ธ
41 2025-02-24 โŽˆ A Hands-On Guide to AWS EKS Fargate Cluster ๏ธ
42 2025-02-24 โŽˆ Hands-On Guide to Creating an Amazon EKS Cluster with Managed Node GroupsโŽˆ
43 2025-02-23 โŽˆ Hands-On Guide to Creating an Amazon EKS Cluster with Self-Managed Worker Nodes โŽˆ
44 2025-04-21 โŽˆ Hands-On FluxCD: GitOps for Kubernetes at Scale ๏ธ

Architecture

Kubernetes Architecture

Master Node Components

The master node is responsible for managing the Kubernetes cluster. It oversees the nodes and the pods running within the cluster. Key components of the master node include:

  • API Server: Exposes the Kubernetes API, acting as the front end for the Kubernetes control plane.
  • Etcd: A consistent and highly-available key-value store used for all cluster data.
  • Scheduler: Assigns workloads to the worker nodes based on resource availability.
  • Controller Manager: Runs controller processes to regulate the state of the cluster, handling tasks like node failures and endpoint management.
  • Cloud Controller Manager: Manages cloud-specific controller processes.

Worker Node Components

Worker nodes run the applications and handle the containerized workloads. Each worker node has its own set of components:

  • Kubelet: Ensures that containers are running in a pod by communicating with the master node.
  • Kube-proxy: Maintains network rules and handles network communication within and outside the cluster.
  • Container Runtime: Runs the containers. Common runtimes include Docker, containerd, and CRI-O.

Basic Concepts

Pods

Pods are the smallest deployable units in Kubernetes, representing a single instance of a running process. They encapsulate one or more containers, storage resources, a unique network IP, and options for how the containers should run.

Services

Services provide stable endpoints for accessing the running pods. They enable communication between different parts of an application and can expose the application to external traffic.

Volumes

Volumes offer persistent storage that pods can use. Unlike containers, which are ephemeral, volumes retain data even after a pod is terminated.

Namespaces

Namespaces are a way to divide cluster resources between multiple users. They provide scope for names, allowing for resource management and access control.

Deployments

Deployments define the desired state for application deployment, specifying the number of replicas, the container image to use, and update strategies. They enable declarative updates to applications and rollbacks if necessary.

Conclusion

Kubernetes provides a robust platform for managing containerized applications, offering powerful abstractions to ensure applications are scalable, resilient, and easy to manage. Understanding the basic architecture and concepts is essential for effectively leveraging Kubernetes in your projects.

References

Project Maintainers & Contributors


Anvesh Muppeda

Sai Manasa Kota

Rohini Gundala

License

This project is licensed under the GNU License - see the LICENSE file for details.

Stargazers over time

Stargazers over time