Awesome Kubernetes Resources
A curated list of awesome Kubernetes tools and resources.
Inspired by awesome list and donnemartin/awesome-aws.
The Fiery Meter of Awesomeness
- Repo with 0050+ Stars: :fire:
- Repo with 0200+ Stars: :fire::fire:
- Repo with 0500+ Stars: :fire::fire::fire:
- Repo with 1000+ Stars: :fire::fire::fire::fire:
- Repo with 2000+ Stars: :fire::fire::fire::fire::fire:
Idea taken from donnemartin/awesome-aws.
Contents
- Tools and Libraries
- Command Line Tools
- Cluster Provisioning
- Automation and CI/CD
- Cluster Resources Management
- Secrets Management
- Networking
- Storage
- Testing and Troubleshooting
- Monitoring, Alerts, and Visualization
- Backup and Restore
- Security and Compliance
- Service Mesh
- Development Tools
- Data Processing and Machine Learning
- Data Management
- Miscellaneous
- Guides, Documentations, Blogs, and Learnings
- Contribute
- License
Tools and Libraries
Items with :green_heart: indicate open source projects.
Command Line Tools
- :green_heart:Helm :fire::fire::fire::fire::fire: - Helm is a tool for managing Charts. Charts are packages of pre-configured Kubernetes resources.
- :green_heart:Helmfile :fire::fire::fire::fire::fire: - Helmfile is a declarative spec for deploying helm charts.
- :green_heart:Helmwave :fire::fire::fire: - Helmwave is helm3-native tool for deploy your Helm Charts. It is like Docker-Compose, but for Helm.
- :green_heart:Infra :fire::fire::fire: - Infra enables you to discover and access infrastructure (e.g. Kubernetes, databases). We help you connect an identity provider such as Okta or Azure active directory, and map users/groups with the permissions you set to your infrastructure.
- :green_heart:K9s :fire::fire::fire::fire::fire: - K9s provides a terminal UI to interact with your Kubernetes clusters.
- :green_heart:kapp :fire::fire::fire: - kapp is a simple deployment tool focused on the concept of "Kubernetes application" — a set of resources with the same label
- :green_heart:kconnect :fire::fire: - kconnect is a CLI utility that can be used to discover and securely access Kubernetes clusters across multiple operating environments.
- :green_heart:Ktunnel :fire::fire: - Ktunnel is a CLI tool that establishes a reverse tunnel between a kubernetes cluster and your local machine.
- :green_heart:Kubebox :fire::fire::fire::fire: - Terminal and Web console for Kubernetes
- :green_heart:Kubetail :fire::fire::fire::fire::fire: - Bash script that enables you to aggregate (tail/follow) logs from multiple pods into one stream.
- :green_heart:kube-shell :fire::fire::fire::fire: - Kube-shell: An integrated shell for working with the Kubernetes CLI.
- 💚kubecolor 🔥🔥🔥 - colorizes kubectl output
- :green_heart:kubectl tree :fire::fire::fire::fire: - A kubectl plugin to explore ownership relationships between Kubernetes objects through owners.
- :green_heart:kubectl-aliases :fire::fire::fire::fire::fire: - This repository contains a script to generate hundreds of convenient shell aliases for kubectl.
- :green_heart:kubectx + kubens :fire::fire::fire::fire::fire: -
kubectx
helps you switch between clusters back and forth, andkubens
helps you switch between Kubernetes namespaces smoothly. - :green_heart:kube-ps1 :fire::fire::fire::fire::fire: - kube-ps1: A script that lets you add the current Kubernetes context and namespace configured on kubectl to your Bash/Zsh prompt strings (i.e. the $PS1).
- :green_heart:kubediff :fire::fire::fire: - Kubediff is a tool for Kubernetes to show you the differences between your running configuration and your version controlled configuration.
- :green_heart:kubeprompt :fire: - Isolates KUBECONFIG in each shell and shows the current Kubernetes context/namespace in your prompt
- :green_heart:Kubevela :fire::fire::fire::fire::fire: - KubeVela is an easy-to-use yet extensible platform that enables them to design and ship applications with minimal effort.
- :green_heart:Move2Kube :fire::fire: - A tool to help users migrate their apps from legacy platforms like Cloud Foundry to Kubernetes and Openshift. Analyses the application source code and generates Kubernetes YAMLs, Helm Charts, Tekton Pipelines, etc. The analysis and generation can be heavily customized to produce the exact output that you want.
- :green_heart:nova :fire::fire: - Nova scans your cluster for installed Helm charts, then cross-checks them against all known Helm repositories.
- :green_heart:Plural :fire::fire: - Plural is a CLI tool and holistic DevOps management platform for rapidly deploying, managing, and monitoring open-source applications on Kubernetes.
- :green_heart:RBAC Lookup :fire::fire::fire: - RBAC Lookup is a CLI that allows you to easily find Kubernetes roles and cluster roles bound to any user, service account, or group name.
- :green_heart:stern :fire::fire::fire::fire::fire: - Stern allows you to tail multiple pods on Kubernetes and multiple containers within the pod.
Cluster Provisioning
- :green_heart:Bootkube :fire::fire::fire::fire: - Bootkube is a tool for launching self-hosted Kubernetes clusters.
- :green_heart:Claudie :fire: - Multi-cloud clusters with each nodepool in a different cloud provider.
- :green_heart:Cluster API :fire::fire::fire::fire::fire: - Cluster API is a Kubernetes sub-project focused on providing declarative APIs and tooling to simplify provisioning, upgrading, and operating multiple Kubernetes clusters.
- :green_heart:eksctl :fire::fire::fire::fire::fire: -
eksctl
is a simple CLI tool for creating clusters on EKS - Amazon's new managed Kubernetes service for EC2. - :green_heart:k0s :fire::fire::fire::fire::fire: - k0s - Zero Friction Kubernetes (The Simple, Solid & Certified Kubernetes Distribution)
- :green_heart:k3d :fire::fire::fire::fire::fire: - k3d,and Windows.,destroy,half the memory,highly available,is a tool for running local k3s clusters in docker. It's a single binary about 20 MB. You need to have docker installed.
- :green_heart:k3s :fire::fire::fire::fire::fire: - Lightweight Kubernetes. Easy to install,Kubernetes clusters from the command line.
- :green_heart:kind :fire::fire::fire::fire::fire: - kind is a tool for running local Kubernetes clusters using Docker container "nodes".
- :green_heart:kops :fire::fire::fire::fire::fire: -
kops
helps you create,like kind,upgrade and maintain production-grade - :green_heart:kube-aws :fire::fire::fire::fire: -
kube-aws
is a command-line tool to create/update/destroy Kubernetes clusters on AWS. - :green_heart:kubespray :fire::fire::fire::fire::fire: - Deploy a production ready Kubernetes cluster
- :green_heart:microK8s :fire::fire::fire::fire::fire: - The smallest, fastest Kubernetes
- :green_heart:Minikube :fire::fire::fire::fire::fire: - minikube implements a local Kubernetes cluster on macOS,Linux,all in a binary less than 100 MB.
- :green_heart:Talos Linux :fire::fire::fire::fire::fire: - Talos Linux is a minimal, immutable, secure OS that installs vanilla Kubernetes - for production datacenters, K8s@home, and Edge.
- Kubeadm - kubeadm performs the actions necessary to get a minimum viable cluster up and running.
Automation and CI/CD
- :green_heart:Argo CD :fire::fire::fire::fire::fire: - Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes.
- :green_heart:Argo Events :fire::fire::fire::fire: - Argo Events is an event-driven workflow automation framework for Kubernetes which helps you trigger K8s objects, Argo Workflows, Serverless workloads, etc.
- :green_heart:Argo Rollouts :fire::fire::fire::fire: - Argo Rollouts controller, uses the Rollout custom resource to provide additional deployment strategies such as Blue Green and Canary to Kubernetes.
- :green_heart:Argo Workflows :fire::fire::fire::fire::fire: - Argo Workflows is an open source container-native workflow engine for orchestrating parallel jobs on Kubernetes.
- :green_heart:Argocd autopilot :fire::fire::fire: - The Argo-CD Autopilot is a tool which offers an opinionated way of installing Argo-CD and managing GitOps repositories.
- :green_heart:Flagger :fire::fire::fire::fire::fire: - Flagger is a progressive delivery tool that automates the release process for applications running on Kubernetes.
- :green_heart:Flux2 :fire::fire::fire::fire::fire: - Flux version 2 is built from the ground up to use Kubernetes' API extension system, and to integrate with Prometheus and other core components of the Kubernetes ecosystem.
- :green_heart:k8s-image-swapper :fire::fire: -
k8s-image-swapper
is a mutating webhook for Kubernetes, downloading images into your own registry and pointing the images to that new location. - :green_heart:Kubero :fire::fire::fire::fire::fire: - A free and self-hosted Heroku PaaS alternative for Kubernetes that implements GitOps
- :green_heart:KubeSphere :fire::fire::fire::fire::fire: - KubeSphere is a distributed operating system providing cloud native stack with Kubernetes as its kernel, and aims to be plug-and-play architecture for third-party applications seamless integration to boost its ecosystem.
- :green_heart:Reloader :fire::fire::fire::fire::fire: - Reloader can watch changes in
ConfigMap
andSecret
and do rolling upgrades on Pods with their associatedDeploymentConfigs
,Deployments
,Daemonsets
andStatefulsets
. - :green_heart:terranetes-controller :fire: - Terranetes controller enables the platform team to deliver self-service capabilities around cloud resources.
- :green_heart:Skaffold :fire::fire::fire::fire::fire: - Skaffold is a command line tool that facilitates continuous development for Kubernetes applications.
- :green_heart:Spinnaker :fire::fire::fire::fire::fire: - Spinnaker is an open-source continuous delivery platform for releasing software changes with high velocity and confidence.
- :green_heart:TF-controller :fire: - TF-controller is an experimental controller for Flux to reconcile Terraform resources in the GitOps way.
- :green_heart:werf :fire::fire::fire::fire::fire: - werf is a CLI tool glueing Git, Docker, Helm & Kubernetes with any CI system to implement CI/CD and GitOps.
- :green_heart:Weave GitOps :fire::fire: - Weave GitOps is a simple open source developer platform for people who want cloud native applications, without needing Kubernetes expertise.
- :green_heart:Otomi - Self-hosted PaaS for K8s :fire::fire::fire::fire: - Otomi adds developer- and operations-centric tools, automation, and developer self-service on top of Kubernetes in any infrastructure or cloud, to code, build, release, deploy, secure, operate and monitor containerized applications.
Cluster Resources Management
- :green_heart:Clusterpedia :fire: - Clusterpedia is used for complex resource searches across multiple clusters, support simultaneous search of a single kind of resource or multiple kinds of resources existing in multiple clusters.
- :green_heart:Grafana Tanka :fire::fire::fire::fire: - The clean, concise and super flexible alternative to YAML for your Kubernetes cluster.
- :green_heart:KEDA :fire::fire::fire::fire::fire: - KEDA allows for fine grained autoscaling (including to/from zero) for event driven Kubernetes workloads.
- :green_heart:Kruise :fire::fire::fire::fire::fire: - Kruise consists of several controllers which extend and complement the Kubernetes core controllers for workload management.
- :green_heart:KubeDirector :fire::fire: - KubeDirector uses standard Kubernetes (K8s) facilities of custom resources and API extensions to implement stateful scaleout application clusters.
- :green_heart:Kubenav :fire::fire::fire::fire: - kubenav is the navigator for your Kubernetes clusters right in your pocket.
- :green_heart:Liqo :fire::fire: -