A Curated List of Awesome Kubernetes Tools and Resources
A Curated List of Awesome Kubernetes Tools and Resources
Resources
A curated list of awesome Kubernetes tools
and resources.
Contents
1
4 Guides
Guides, Documentations, Blogs,
5 Blogs and Videos
and Learnings
5 Certification Guides
2
8 Command Line Tools
Tools and Libraries
9 Cluster Provisioning
10 Secrets Management
11 Networking
11 Storage
14 Service Mesh
15 Development Tools
16 Miscellaneous
1 | Guides, Documentations, Blogs, and Learnings
Guides, Documentations,
Blogs, and Learnings
3
1 | Guides, Documentations, Blogs, and Learnings
GUIDES
Amazon EKS Best Practices Guide for Security Kubernetes Working Group for Multi-Tenancy
This guide provides advice about protecting information, This is a working place for multi-tenancy related proposals
systems, and assets that are reliant on EKS while and prototypes.
delivering business value through risk assessments and
mitigation strategies. Production grade Kubernetes Monitoring using
Prometheus
Amazon EKS Node Drainer A in-depth guide to deploy Prometheus monitoring
A guide and an example to cordon and evict all evictable solution.
pods from an EC2 node being terminated.
The Illustrated Children’s Guide to Kubernetes
Comparison of Kubernetes Ingress controllers Graphical explanations of Kubernetes.
This research compares the capabilities of 14 different
Kubernetes Ingress controllers. Troubleshooting Kubernetes deployments
A flow chart to troubleshoot a kubernetes deployment in
Configuring HA Kubernetes cluster on bare metal case of issues.
servers with kubeadm
A guide to standing up a HA Kubernetes cluster on bare Writing Your First Kubernetes Operator
metal servers with kubeadm. In this article, we’ll see how to build and deploy your first
Kubernetes Operator using the Operator SDK.
Introduction to Using Google Kubernetes Engine; Explain
Like I’m Five!
Creating your first managed Kubernetes cluster on Google
Kubernetes Engine using Terraform.
4
1 | Guides, Documentations, Blogs, and Learnings
CERTIFICATION GUIDES
Certified Kubernetes Security Specialist - CKSS The ultimate CKA “Certfified Kuberenetes Administator”
This repository is a collection of resources to prepare for resource since exam inception
the Certified Kubernetes Security Specialist (CKSS) exam. An updated repo of offical resources to help you master
the CKA exam as well some extra resources to consolidate
CKS “Certified Kubernetes security specialist your kubernetes administration knowledge.
certification
Kubernetes security resources primarly from material Kubernetes Exam Simulator
allowed during the exam, and extra optional items to CKS/CKA/CKAD exams scenarios and environment.
help you advance your container and kubernetes security
journey.
5
1 | Guides, Documentations, Blogs, and Learnings
6
1 | Guides, Documentations, Blogs, and Learnings
7
1 | Tools
2 Guides,
and
Documentations,
Libraries Blogs, and Learnings
Helm kubectl-aliases
Helm is a tool for managing Charts. Charts are packages This repository contains a script to generate hundreds of
of pre-configured Kubernetes resources. convenient shell aliases for kubectl.
8
1 | Tools
2 Guides,
and
Documentations,
Libraries Blogs, and Learnings
CLUSTER PROVISIONING
Bootkube Kops
Bootkube is a tool for launching self-hosted Kubernetes Kops helps you create,like kind,upgrade and maintain
clusters. production-grade.
eksctl kube-aws
Is a simple CLI tool for creating clusters on EKS - Amazon’s kube-aws is a command-line tool to create/update/destroy
new managed Kubernetes service for EC2. Kubernetes clusters on AWS.
k3d Kubespray
k3d,and Windows.,destroy,half the memory,highly Deploy a production ready Kubernetes cluster.
available,is a tool for running local k3s clusters in docker.
It’s a single binary about 20 MB. You need to have docker Minikube
installed. Minikube implements a local Kubernetes cluster on
macOS,Linux,all in a binary less than 100 MB.
k3s
Lightweight Kubernetes. Easy to install,Kubernetes clusters Kubeadm
from the command line. kubeadm performs the actions necessary to get a
minimum viable cluster up and running.
kind
kind is a tool for running local Kubernetes clusters using
Docker container “nodes”.
Kruise Liqo
Kruise consists of several controllers which extend and Liqo implements Dynamic resource sharing across different
complement the Kubernetes core controllers for workload Kubernetes clusters (e.g.; offloading pods and services),
management. supporting decentralized governance.scaleout application
clusters.
KubeDirector
KubeDirector uses standard Kubernetes (K8s) facilities of The Hierarchical Namespace Controller
custom resources and API extensions to implement stateful Hierarchical namespaces make it easier to share your
scaleout application clusters. cluster by making namespaces more powerful.
9
1 | Tools
2 Guides,
and
Documentations,
Libraries Blogs, and Learnings
SECRETS MANAGEMENT
Apollo Flux2
Apollo is a simple, lightweight, Continuous Deployment Flux version 2 is built from the ground up to use
(CD) solution on top of Kubernetes. Kubernetes’ API extension system, and to integrate with
Prometheus and other core components of the Kubernetes
Argo CD ecosystem.
Argo CD is a declarative, GitOps continuous delivery tool .
for Kubernetes. Helm Operator
The Helm Operator is a Kubernetes operator, allowing one
Argo Events to declaratively manage Helm chart releases.
Argo Events is an event-driven workflow automation
framework for Kubernetes which helps you trigger K8s KEDA
objects, Argo Workflows, Serverless workloads, etc. KEDA allows for fine grained autoscaling (including to/from
zero) for event driven Kubernetes workloads.
Argo Rollouts
Argo Rollouts controller, uses the Rollout custom resource KubeSphere
to provide additional deployment strategies such as Blue KubeSphere is a distributed operating system providing
Green and Canary to Kubernetes. cloud native stack with Kubernetes as its kernel, and
aims to be plug-and-play architecture for third-party
Argo Workflows applications seamless integration to boost its ecosystem.
Argo Workflows is an open source container-native
workflow engine for orchestrating parallel jobs on Reloader
Kubernetes. Reloader can watch changes in ConfigMap and Secret
and do rolling upgrades on Pods with their associated
Codefresh DeploymentConfigs, Deployments, Daemonsets and
Codefresh is a Docker-native CI/CD platform. Instantly Statefulsets.
build, test and deploy Docker images to Kubernetes.
Skaffold
Flagger Skaffold is a command line tool that facilitates continuous
Flagger is a progressive delivery tool that automates the development for Kubernetes applications.
release process for applications running on Kubernetes.
Spinnaker
Flux Spinnaker is an open-source continuous delivery platform
Flux is a tool that automatically ensures that the state of a for releasing software changes with high velocity and
cluster matches the config in git. confidence.
10
1 | Tools
2 Guides,
and
Documentations,
Libraries Blogs, and Learnings
NETWORKING
ingress-nginx kubernetes-ingress
ingress-nginx is an Ingress controller for Kubernetes using An implementation of an Ingress controller for NGINX and
NGINX as a reverse proxy and load balancer. NGINX Plus (commercial).
STORAGE
11
1 | Tools
2 Guides,
and
Documentations,
Libraries Blogs, and Learnings
Conftest KubeInvaders
Conftest helps you write tests against structured Through KubeInvaders you can stress Kubernetes cluster in
configuration data. a fun way and check how it is resilient.
Cooper Kubetest
A configuration file validator for Kubernetes. This is Kubetest is a pytest plugin that makes it easier to manage
specifically useful with Kubernetes configuration files to a Kubernetes cluster within your integration tests.
enforce best practices, apply policies and compliance
requirements. Litmus
Litmus provides tools to orchestrate chaos on Kubernetes
k6 to help SREs find weaknesses in their deployments.
k6 is a modern load testing tool, building on Load Impact’s
years of experience in the load and performance testing popeye
industry. Popeye is a utility that scans live Kubernetes cluster and
reports potential issues with deployed resources and
ksniff configurations.
A kubectl plugin that utilize tcpdump and Wireshark to
start a remote capture on any pod in your Kubernetes PowerfulSeal
cluster. PowerfulSeal injects failure into your Kubernetes clusters,
so that you can detect problems as early as possible.
Kube DOOM
The next level of chaos engineering is here! Kill pods inside
your Kubernetes cluster by shooting them in Doom!
kube-monkey
It randomly deletes Kubernetes (k8s) pods in the cluster
encouraging and validating the development of failure-
resilient services.
katafygio Velero
katafygio discovers Kubernetes objects (deployments, Velero (formerly Heptio Ark) gives you tools to back up and
services, ...), and continuously save them as yaml files in a restore your Kubernetes cluster resources and persistent
git repository. volumes.
12
1 | Tools
2 Guides,
and
Documentations,
Libraries Blogs, and Learnings
13
1 | Tools
2 Guides,
and
Documentations,
Libraries Blogs, and Learnings
Datree kube-hunter
Automated policy enforcement for Kubernetes kube-hunter hunts for security weaknesses in Kubernetes
configurations. clusters.
Falco KubeLinter
Falco is a behavioral activity monitor designed to detect KubeLinter is a static analysis tool that checks Kubernetes
anomalous activity in your applications. You can use YAML files and Helm charts to ensure the applications
Falco to monitor run-time security of your Kubernetes represented in them adhere to best practices.
applications and internal components.
Permission manager
Gatekeeper Permission Manager is an application developed by
Policy controller for Kubernetes. SIGHUP that enables a super-easy and user-friendly RBAC
management for Kubernetes.
k-rail
k-rail is a workload policy enforcement tool for Kubernetes. rakkess
It can help you secure a multi tenant cluster with minimal kubectl plugin to show an access matrix for server
disruption and maximum velocity. resources.
Konstraint Kube-Scan
Konstraint is a CLI tool to assist with the creation and Kube-Scan gives a risk score, from 0 (no risk) to 10 (high
management of constraints when using Gatekeeper. risk) for each workload.
kube-bench Teleport
kube-bench is a Go application that checks whether Teleport allows you to implement industry-best practices
Kubernetes is deployed securely by running the checks for SSH and Kubernetes access, meet compliance
documented in the CIS Kubernetes Benchmark. requirements, and have complete visibility into access and
behavior.
SERVICE MESH
Linkerd Consul
Linkerd is a transparent service mesh, designed to make HashiCorp’s service mesh service that is infrastructure
modern applications safe and sane. agnostic.
14
1 | Tools
2 Guides,
and
Documentations,
Libraries Blogs, and Learnings
DEVELOPMENT TOOLS
garden kubernix
Garden provides production-like Kubernetes testing This project aims to provide single dependency Kubernetes
environments for integration tests, QA, and development. clusters for local testing, experimenting and development
purposes.
ko
ko is a tool for building and deploying Golang applications Makisu
to Kubernetes. Makisu is a fast and flexible Docker image build tool
designed for unprivileged containerized environments such
Konfig as Mesos or Kubernetes.
Konfig is a Kubernetes friendly Rails gem. It can load
configuration and secrets from both YAML or folders with Okteto
individual files and present them to your application the Okteto accelerates the development workflow of
same way. Kubernetes applications.
kubevious Telepresence
Kubevious renders all configurations relevant to the Telepresence provides fast, realistic local development for
application in one place. That saves a lot of time from Kubernetes microservices.
operators, eliminating the need for looking up settings and
digging within selectors and labels. Tilt
Tilt powers multi-service development and makes sure they
kubectl-warp behave.
Kubernetes CLI plugin for syncing and executing local files
in Pod on Kubernetes. Tye
Tye is a developer tool that makes developing, testing, and
deploying microservices and distributed applications easier.
Kubeflow Volcano
Kubeflow is a Cloud Native platform for machine learning Volcano is a batch system built on Kubernetes.
based on Google’s internal machine learning pipelines.
Strimzi
Strimzi provides a way to run an Apache Kafka cluster
on Kubernetes or OpenShift in various deployment
configurations.
15
1 | Tools
2 Guides,
and
Documentations,
Libraries Blogs, and Learnings
MISCELLANEOUS
Agones Kubecost
Agones is a library for hosting, running and scaling Kubecost models give teams visibility into current and
dedicated game servers on Kubernetes. historical Kubernetes spend and resource allocation.
16