Top 50 new lightweight kubernetes tools

6 min. read

In this post I filtered out a big collection about new useful tools to work with Kubernetes. I used the following criteria to select them:

  • Open source projects hosted in Github.
  • More than 50 stars but less than 10000 to exclude very popular tools like: helm, kustomize, loki, lens, kind, etc.
  • Last commit not old than 3 months.

The motivation to create this list was feeling overwhelmed with the amount of new Kubernetes tools you can see every day so making a sorted list managing this knowledge can be done easily.
So, this is the final list without any particular sorting except the name of the categories:

Alerting

Backup

  • k8s-snapshots: Automatic Volume Snapshots on Kubernetes.
  • stash: Backup Kubernetes Stateful Applications.

Best practices

  • polaris: Validation of best practices in your Kubernetes clusters.

Chaos engineering

  • litmus: It helps Kubernetes SREs and developers practice chaos engineering in a Kubernetes native way.

CLI tools

  • kubectx: Faster way to switch between clusters and namespaces in kubectl
  • kube-ps1: Kubernetes prompt info for bash and zsh
  • yh: YAML syntax highlighter to bring colours where only jq could.
  • chart-testing: CLI tool for linting and testing Helm charts.
  • pluto: A cli tool to help discover deprecated apiVersions in Kubernetes.
  • kubeletctl: It’s a CLI tool that implement kubelet’s API.
  • podtnl: CLI tool that makes your pod available online without exposing a Kubernetes service.
  • kubie: A more powerful alternative to kubectx and kubens.
  • kubectl-fuzzy: This tool uses fzf(1)-like fuzzy-finder to do partial or fuzzy search of Kubernetes Resources.

Cluster management

  • arktos: It’s an open source cluster management system designed for large scale clouds addressing key challenges of large scale clouds, including system scalability, resource efficiency, multitenancy, etc.
  • cluster-turndown: Automated turndown of Kubernetes clusters on specific schedules.
  • kubermatic: Kubermatic Kubernetes Platform - the Central Kubernetes Management Platform for any infrastructure.
  • KubeCarrier: It’s a system for managing applications and services across multiple Kubernetes Clusters; providing a framework to centralize the management of services and provide these services with external users in a self service catalog.
  • wksctl: Allows simple creation of a Kubernetes cluster given a set of IP addresses and an SSH key. It can be run in a standalone environment but is best used via a GitOps approach in which cluster and machine descriptions are stored in Git.

Container registry

  • sinker: A tool to sync images from one container registry to another.

Costs

  • cost-model: Cross-cloud cost allocation models for workloads running on Kubernetes.

Deployment

  • k8s-worker-pod-autoscaler: It scales the replicas in a deployment based on observed queue length.
  • pangolin: It’s an enhanced Horizontal Pod Autoscaler for Kubernetes. Pangolin scales deployments based on their Prometheus metrics, using a variety of highly configurable control strategies.
  • beetle: Kubernetes multi-cluster deployment automation service.

Documentation

  • helm-docs: A tool for automatically generating markdown documentation for helm charts.
  • chart-doc-gen: Helm Chart documentation generator.

GitOps

  • flux: The GitOps Kubernetes operator.

Kubernetes as a service

  • oneinfra: Tool designed to orchestrate fleet of Kubernetes clusters. You can control cloud as well as on-prem clusters.

Kubernetes API

  • Deprek8ion: Rego policies to monitor Kubernetes APIs deprecations.

Logging

Monitoring

  • botkube: It helps you monitor your Kubernetes cluster, debug critical deployments & gives recommendations for standard practices.
  • kube-prometheus: Use Prometheus to monitor Kubernetes and applications running on Kubernetes

Networking

  • ktunnel: A cli that exposes your local resources to kubernetes. It’s convenient replacement for ngrok.
  • kubetap: Kubectl plugin to interactively proxy Kubernetes Services with ease.

Operator

  • capsule: It’s a Kubernetes multi-tenant Operator. It can workaround the flat structure of namespaces in Kubernetes by introducing an abstraction called Tenant. Within each tenant, users are free to create their namespaces and share all the assigned resources.
  • operator-lifecycle-manager: A management framework for extending Kubernetes with Operators.
  • registry-creds: Automate Kubernetes registry credentials, to extend Docker Hub limits.

Secrets

  • Secrets Store CSI: Secrets Store CSI driver for Kubernetes secrets - Integrates secrets stores with Kubernetes via a CSI volume.

Security

  • krane: It’s a Kubernetes RBAC static analysis tool. It identifies potential security risks in K8s RBAC design and makes suggestions on how to mitigate them. Krane dashboard presents current RBAC security posture and lets you navigate through its definition.
  • kubiscan: A tool to scan Kubernetes cluster for risky permissions (RBAC).
  • ThreatMapper: It identifies vulnerabilities in running containers, images, hosts and repositories.
  • dast-operator: Dynamic Application and API Security Testing.
  • mkit: MKIT is a Managed Kubernetes Inspection Tool that validates several common security-related configuration settings of managed Kubernetes cluster objects and the workloads/resources running inside the cluster.
  • k-rail: Kubernetes security tool for policy enforcement.

Sign-on

  • authelia: The Single Sign-On Multi-Factor portal for web apps.

Storage

  • kubefs: Mount kubernetes metadata storage as a filesystem.
  • dynamic-pv-scaler: It’s a golang based Kubernetes application which has been created to overcome the scaling issue of Persistent Volume in Kubernetes. This can scale the Persistent Volume on the basis of threshold which you have set.

Testing

  • kconmon: It’s a Kubernetes node connectivity tool that performs frequent tests (tcp, udp and dns), and exposes Prometheus metrics.

Visualization

  • k1s: It’s the world’s simplest Kubernetes dashboard with only 30 lines of bash code.
  • allok8: It’s a dynamic, conventional, and uncomplicated web-based UI Kubernetes visualization tool.

I hope you can find something new and interesting in this list to help you to manage in a more efficient way anything related with Kubernetes. If you have any comments or suggestions please leave a comment.