{"id":5050,"date":"2020-04-08T14:05:00","date_gmt":"2020-04-08T14:05:00","guid":{"rendered":"http:\/\/www.scmgalaxy.com\/tutorials\/?p=5050"},"modified":"2021-11-12T06:00:03","modified_gmt":"2021-11-12T06:00:03","slug":"understanding-the-tools-sets-in-kubernetes-ecosystem","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/understanding-the-tools-sets-in-kubernetes-ecosystem\/","title":{"rendered":"List of Popular Tools and Applications in Kubernetes ecosystem"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\" id=\"k8s-cluster-management\">K8s Cluster Management<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>kubespray &#8211;&nbsp;<a href=\"https:\/\/github.com\/kubernetes-sigs\/kubespray\" target=\"_blank\" rel=\"noopener\">Deploy a Production Ready Kubernetes Cluster<\/a><\/li><li>kops &#8211;&nbsp;<a href=\"https:\/\/github.com\/kubernetes\/kops\" target=\"_blank\" rel=\"noopener\">kops helps you create, destroy, upgrade and maintain production-grade, highly available, Kubernetes clusters from the command line. AWS is currently officially supported, with GCE in beta support , and VMware vSphere in alpha, and other platforms planned.<\/a><\/li><li>Kube-ops-view &#8211;&nbsp;<a href=\"https:\/\/github.com\/hjacobs\/kube-ops-view\" target=\"_blank\" rel=\"noopener\">Kubernetes Operational View &#8211; read-only system dashboard for multiple K8s clusters<\/a><\/li><li>Kubeprompt &#8211;&nbsp;<a href=\"https:\/\/github.com\/jlesquembre\/kubeprompt\" target=\"_blank\" rel=\"noopener\">Kubernetes prompt info<\/a><\/li><li>Metalk8s &#8211;&nbsp;<a href=\"https:\/\/github.com\/scality\/metalk8s\" target=\"_blank\" rel=\"noopener\">An opinionated Kubernetes distribution with a focus on long-term on-prem deployments<\/a><\/li><li>kind &#8211;&nbsp;<a href=\"https:\/\/github.com\/kubernetes-sigs\/kind\" target=\"_blank\" rel=\"noopener\">Kubernetes IN Docker &#8211; local clusters for testing Kubernetes<\/a><\/li><li>Clusterman &#8211; Autoscale and Manage your compute clusters &#8211;&nbsp;<a href=\"https:\/\/github.com\/Yelp\/clusterman\" target=\"_blank\" rel=\"noopener\">Cluster Autoscaler for Kubernetes and Mesos<\/a><\/li><li>Cert-manager &#8211;&nbsp;<a href=\"https:\/\/github.com\/jetstack\/cert-manager\" target=\"_blank\" rel=\"noopener\">Automatically provision and manage TLS certificates<\/a><\/li><li>Goldilocks &#8211;&nbsp;<a href=\"https:\/\/github.com\/FairwindsOps\/goldilocks\" target=\"_blank\" rel=\"noopener\">Get your resource requests \u201cJust Right\u201d<\/a><\/li><li>katafygio &#8211;&nbsp;<a href=\"https:\/\/github.com\/bpineau\/katafygio\" target=\"_blank\" rel=\"noopener\">Dump, or continuously backup Kubernetes objets as yaml files in git<\/a><\/li><li>Sealed Secrets &#8211;&nbsp;<a href=\"https:\/\/github.com\/bitnami-labs\/sealed-secrets\" target=\"_blank\" rel=\"noopener\">A Kubernetes controller and tool for one-way encrypted Secrets<\/a><br>OpenKruise\/Kruise &#8211;&nbsp;<a href=\"https:\/\/github.com\/openkruise\/kruise\" target=\"_blank\" rel=\"noopener\">Automate application workloads management on Kubernetes https:\/\/openkruise.io<\/a><br>kubectl snapshot &#8211;&nbsp;<a href=\"https:\/\/github.com\/fbrubbo\/kubectl-snapshot\" target=\"_blank\" rel=\"noopener\">Take Cluster Snapshots<\/a><br>Kubernetes Job\/CronJob Notifier &#8211;&nbsp;<a href=\"https:\/\/github.com\/sukeesh\/k8s-job-notify\" target=\"_blank\" rel=\"noopener\">Kuberenets Job\/CronJob Notifier<\/a><br>Kubernetes Janitor &#8211;&nbsp;<a href=\"https:\/\/github.com\/hjacobs\/kube-janitor\" target=\"_blank\" rel=\"noopener\">Clean up (delete) Kubernetes resources after a configured TTL<\/a><br>Grafana Tanka &#8211;&nbsp;<a href=\"https:\/\/tanka.dev\/\" target=\"_blank\" rel=\"noopener\">Tanka is a composable configuration utility for Kubernetes. It leverages the Jsonnet language to realize flexible, reusable and concise configuration<\/a><br>KubeDirector &#8211;&nbsp;<a href=\"https:\/\/github.com\/bluek8s\/kubedirector\" target=\"_blank\" rel=\"noopener\">Kubernetes Director (aka KubeDirector) for deploying and managing stateful applications on Kubernetes<\/a><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Cluster control plane (AKA master) and Worker components<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>kubelet &#8211; The primary node agent that runs on each node. The kubelet takes a set of PodSpecs and ensures that the described containers are running and healthy.<\/li><li>Container runtime &#8211; Container runtime is Docker engine which resides in each node<\/li><li>kube-proxy &#8211; Can do simple TCP\/UDP stream forwarding or round-robin TCP\/UDP forwarding across a set of back-ends.<\/li><li>kube-apiserver &#8211; REST API that validates and configures data for API objects such as pods, services, replication controllers.<\/li><li>Cluster state store &#8211; All persistent cluster state is stored in an instance of etcd. This provides a way to store configuration data reliably.<\/li><li>kube-controller-manager &#8211; Daemon that embeds the core control loops shipped with Kubernetes.<\/li><li>kube-scheduler &#8211; Scheduler that manages availability, performance, and capacity.<\/li><li>Federation &#8211; A single Kubernetes cluster may span multiple availability zones.<\/li><li>federation-apiserver &#8211; API server for federated clusters.<\/li><li>federation-controller-manager &#8211; Daemon that embeds the core control loops shipped with Kubernetes federation<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Managed Kubernetes Service and Platform in Cloud<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Google Container Engine &#8211; Google Kubernetes Engine is a powerful cluster manager and orchestration system for running your Docker containers.<\/li><li>Amazon Elastic Kubernetes Service (Amazon EKS) &#8211; Amazon Elastic Container Service for Kubernetes (Amazon EKS) makes it easy to deploy, manage, and scale containerized applications using Kubernetes on AWS.<\/li><li>Azure Kubernetes Service (AKS) &#8211; The fully managed Azure Kubernetes Service (AKS) makes deploying and managing containerised applications easy. It offers serverless Kubernetes, an integrated continuous integration and continuous delivery (CI\/CD) experience and enterprise-grade security and governance.<\/li><li>DigitalOcean Kubernetes &#8211; DigitalOcean Kubernetes includes a master server instance for free. Pricing for Kubernetes workloads is based on actual usage by the applications you deploy to your cluster. This includes Droplets, and may include persistent Block Storage, and Load Balancers.<\/li><li>IBM Cloud Kubernetes service &#8211; IBM Cloud\u2122 Kubernetes Service is a managed container service for the rapid delivery of applications that can bind to advanced services like IBM Watson\u00ae and blockchain. As a certified K8s provider, IBM Cloud Kubernetes Service provides intelligent scheduling, self-healing, horizontal scaling, service discovery and load balancing, automated rollouts and rollbacks, and secret and configuration management.<\/li><li>Alibaba Cloud Kubernetes (ACK))- Container Service for Kubernetes (ACK) is a fully managed service. ACK is integrated with services such as virtualization, storage, network and security, providing user a high performance and scalable Kubernetes environments for containerized applications. Alibaba Cloud is a Kubernetes Certified Service Provider\uff08KCSP\uff09and ACK is certified by Certified Kubernetes Conformance Program which ensures consistent experience of Kubernetes and workload portability.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"k8s-cluster-with-core-cli-tools\">K8s Cluster with core CLI tools<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Bootkube &#8211;&nbsp;<a href=\"https:\/\/github.com\/kubernetes-sigs\/bootkube\" target=\"_blank\" rel=\"noopener\">bootkube &#8211; Launch a self-hosted Kubernetes cluster<\/a><\/li><li>kubectx + kubens &#8211;&nbsp;<a href=\"https:\/\/github.com\/ahmetb\/kubectx\" target=\"_blank\" rel=\"noopener\">Switch faster between clusters and namespaces in kubectl<\/a><\/li><li>kube-shell &#8211;&nbsp;<a href=\"https:\/\/github.com\/cloudnativelabs\/kube-shell\" target=\"_blank\" rel=\"noopener\">Kubernetes shell: An integrated shell for working with the Kubernetes<\/a><\/li><li>kuttle: kubectl wrapper for sshuttle without SSH &#8211;&nbsp;<a href=\"https:\/\/github.com\/kayrus\/kuttle\" target=\"_blank\" rel=\"noopener\">Kubernetes wrapper for sshuttle<\/a><\/li><li>kubectl sudo &#8211;&nbsp;<a href=\"https:\/\/github.com\/postfinance\/kubectl-sudo\" target=\"_blank\" rel=\"noopener\">Run kubernetes commands with the security privileges of another user<\/a><\/li><li>K9s &#8211;&nbsp;<a href=\"https:\/\/github.com\/derailed\/k9s\" target=\"_blank\" rel=\"noopener\">Kubernetes CLI To Manage Your Clusters In Style!<\/a><\/li><li>Ktunnel &#8211;&nbsp;<a href=\"https:\/\/github.com\/omrikiei\/ktunnel\" target=\"_blank\" rel=\"noopener\">A cli that exposes your local resources to kubernetes<\/a><\/li><li>Kubemqctl &#8211;&nbsp;<a href=\"https:\/\/github.com\/kubemq-io\/kubemqctl\" target=\"_blank\" rel=\"noopener\">Kubemqctl is a command line interface (CLI) for KubeMQ , Kubernetes Message Broker https:\/\/kubemq.io<\/a><\/li><li>kubectl-aliases &#8211;&nbsp;<a href=\"https:\/\/github.com\/ahmetb\/kubectl-aliases\" target=\"_blank\" rel=\"noopener\">Programmatically generated handy kubectl aliases. https:\/\/ahmet.im\/blog\/kubectl-aliases\/<\/a><\/li><li>go-kubectx &#8211;&nbsp;<a href=\"https:\/\/github.com\/aca\/go-kubectx\" target=\"_blank\" rel=\"noopener\">5x-10x faster alternative to kubectx. Uses client-go<\/a><\/li><li>kubectl &#8211; Main CLI tool for running commands and managing Kubernetes clusters.<\/li><li>JSONPath &#8211; Syntax guide for using JSONPath expressions with kubectl.<\/li><li>kubeadm &#8211; CLI tool to easily provision a secure Kubernetes cluster.<\/li><li>kubefed &#8211; CLI tool to help you administrate your federated clusters.<\/li><li>Minikube &#8211; This is the simplest way to get a Kubernetes cluster on your Mac or Windows machine.<\/li><li>kubectl completion bash: Autocompletion for kubectl. The kubectl completion script for Bash can be generated with the command kubectl completion bash. Sourcing the completion script in your shell enables kubectl &#8211; autocompletion. However, the completion script depends on bash-completion<\/li><li>kube-ps1: Kubernetes prompt for bash and zsh: context\/namespace info to your shell prompt<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Kubernetes official Add ons<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>DNS<\/li><li>Ingress controller<\/li><li>Heapster (resource monitoring)<\/li><li>Dashboard (GUI)<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"k8s-alert-and-monitoring\">K8s Alert and Monitoring<\/h2>\n\n\n\n<p>Kiali &#8211;&nbsp;<a href=\"https:\/\/github.com\/kiali\/kiali\" target=\"_blank\" rel=\"noopener\">Kiali project, observability for the Istio service mesh<\/a><br>Prometheus &#8211;&nbsp;<a href=\"https:\/\/github.com\/prometheus\/prometheus\" target=\"_blank\" rel=\"noopener\">The Prometheus monitoring system and time series database.<\/a><br>Grafana &#8211;&nbsp;<a href=\"https:\/\/github.com\/grafana\/grafana\" target=\"_blank\" rel=\"noopener\">The tool for beautiful monitoring and metric analytics &amp; dashboards for Graphite, InfluxDB &amp; Prometheus &amp; More<\/a><br>Kubetail &#8211;&nbsp;<a href=\"https:\/\/github.com\/johanhaleby\/kubetail\" target=\"_blank\" rel=\"noopener\">Bash script to tail Kubernetes logs from multiple pods at the same time<\/a><br>Searchlight &#8211;&nbsp;<a href=\"https:\/\/github.com\/searchlight\/searchlight\" target=\"_blank\" rel=\"noopener\">Alerts for Kubernetes<\/a><br>linkerd2 Monitoring Mixin for Grafana &#8211;&nbsp;<a href=\"https:\/\/github.com\/andrew-waters\/linkerd2-mixin\" target=\"_blank\" rel=\"noopener\">Grafana dashboards for linkerd2 monitoring and can work in standalone (default) or in multi cluster setup<\/a><br>kuberhaus &#8211;&nbsp;<a href=\"https:\/\/github.com\/stevelacy\/kuberhaus\" target=\"_blank\" rel=\"noopener\">Kubernetes resource dashboard with node\/pod layout and resource requests<\/a><br>Kubernetes Job\/CronJob Notifier &#8211;&nbsp;<a href=\"https:\/\/github.com\/sukeesh\/k8s-job-notify\" target=\"_blank\" rel=\"noopener\">This tool sends an alert to slack whenever there is a Kubernetes cronJob\/Job failure\/success<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"k8s-troubleshooting\">K8s Troubleshooting<\/h2>\n\n\n\n<p>PowerfulSeal &#8211;&nbsp;<a href=\"https:\/\/github.com\/bloomberg\/powerfulseal\" target=\"_blank\" rel=\"noopener\">A powerful testing tool for Kubernetes clusters<\/a><br>Crash-diagnostic &#8211;&nbsp;<a href=\"https:\/\/github.com\/vmware-tanzu\/crash-diagnostics\" target=\"_blank\" rel=\"noopener\">Crash-Diagnostics is a tool to help investigate, analyze, and troubleshoot unresponsive or crashed Kubernetes clusters<\/a><br>K9s &#8211;&nbsp;<a href=\"https:\/\/github.com\/derailed\/k9s\" target=\"_blank\" rel=\"noopener\">Kubernetes CLI To Manage Your Clusters In Style!<\/a><br>Kubernetes CLI Plugin &#8211; Doctor &#8211;&nbsp;<a href=\"https:\/\/github.com\/emirozer\/kubectl-doctor\" target=\"_blank\" rel=\"noopener\">kubectl cluster triage plugin for k8s &#8211; ? (brew doctor equivalent)<\/a><br>Knative Inspect &#8211;&nbsp;<a href=\"https:\/\/github.com\/nimakaviani\/knative-inspect\" target=\"_blank\" rel=\"noopener\">A light-weight debugging tool for Knative\u2019s system components<\/a><br>Kubeman &#8211;&nbsp;<a href=\"https:\/\/github.com\/walmartlabs\/kubeman\" target=\"_blank\" rel=\"noopener\">To find information from Kubernetes clusters, and to investigate issues related to Kubernetes and Istio<\/a><br>Kubectl-debug &#8211;&nbsp;<a href=\"https:\/\/github.com\/aylei\/kubectl-debug\" target=\"_blank\" rel=\"noopener\">Debug your pod by a new container with every troubleshooting tools pre-installed<\/a><br>ksniff &#8211;&nbsp;<a href=\"https:\/\/github.com\/eldadru\/ksniff\" target=\"_blank\" rel=\"noopener\">Kubectl plugin to ease sniffing on kubernetes pods using tcpdump and wireshark<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"k8s-developement-tools\">K8s Developement Tools<\/h2>\n\n\n\n<p>Okteto: A Tool for Cloud Native Developers &#8211;&nbsp;<a href=\"https:\/\/github.com\/okteto\/okteto\" target=\"_blank\" rel=\"noopener\">Build better applications by developing and testing your code directly in Kubernetes<\/a><br>Tilt: Tilt manages local development instances for teams that deploy to Kubernetes &#8211;&nbsp;<a href=\"https:\/\/github.com\/windmilleng\/tilt\" target=\"_blank\" rel=\"noopener\">Local Kubernetes development with no stress<\/a><br>Garden: Kubernetes from source to finish &#8211;&nbsp;<a href=\"https:\/\/github.com\/garden-io\/garden\" target=\"_blank\" rel=\"noopener\">Development orchestrator for Kubernetes, containers and functions.<\/a><br>KuberNix &#8211;&nbsp;<a href=\"https:\/\/github.com\/saschagrunert\/kubernix\" target=\"_blank\" rel=\"noopener\">Single dependency Kubernetes clusters for local testing, experimenting and development<\/a><br>Copper &#8211;&nbsp;<a href=\"https:\/\/github.com\/cloud66-oss\/copper?utm_sq=g93mop70o8\" target=\"_blank\" rel=\"noopener\">A configuration file validator for Kubernetes<\/a><br>ko &#8211;&nbsp;<a href=\"https:\/\/github.com\/google\/ko\" target=\"_blank\" rel=\"noopener\">Build and deploy Go applications on Kubernetes<\/a><br>Makisu &#8211;&nbsp;<a href=\"https:\/\/github.com\/uber\/makisu\" target=\"_blank\" rel=\"noopener\">Fast and flexible Docker image building tool, works in unprivileged containerized environments like Mesos and Kubernetes<\/a><br>KUDO&nbsp;<a href=\"https:\/\/kudo.dev\/docs\/\" target=\"_blank\" rel=\"noopener\">Kubernetes Universal Declarative Operator (KUDO) provides a declarative approach to building production-grade Kubernetes operators<\/a><br>Aegir &#8211;&nbsp;<a href=\"https:\/\/github.com\/grupozap\/aegir\" target=\"_blank\" rel=\"noopener\">Validation Webhook for Kubernetes based on LIVR rules (https:\/\/livr-spec.org)<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"k8s-alternative-tools-for-developement\">K8s Alternative Tools for Developement<\/h2>\n\n\n\n<p>KubeSphere &#8211;&nbsp;<a href=\"https:\/\/github.com\/kubesphere\/kubesphere\" target=\"_blank\" rel=\"noopener\">Easy-to-use Production Ready Container Platform https:\/\/kubesphere.io<\/a><br>skippbox &#8211;&nbsp;<a href=\"https:\/\/github.com\/skippbox\/skippbox\" target=\"_blank\" rel=\"noopener\">A Desktop application for k8s<\/a><br>Micronetes &#8211;&nbsp;<a href=\"https:\/\/github.com\/davidfowl\/Micronetes\" target=\"_blank\" rel=\"noopener\">Micronetes is a local orchestrator inspired by kubernetes that makes developing and testing microservices and distributed applications easier<\/a><br>k3c &#8211; Classic Docker for a Kubernetes world &#8211;&nbsp;<a href=\"https:\/\/github.com\/rancher\/k3c\" target=\"_blank\" rel=\"noopener\">Lightweight local container engine for container development<\/a><br>Tilt &#8211;&nbsp;<a href=\"https:\/\/github.com\/windmilleng\/tilt\" target=\"_blank\" rel=\"noopener\">Local Kubernetes development with no stress https:\/\/tilt.dev\/<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"k8s-cicd-integration-automation-tools\">K8s CI\/CD integration Automation Tools<\/h2>\n\n\n\n<p>Skaffold &#8211;&nbsp;<a href=\"https:\/\/github.com\/GoogleContainerTools\/skaffold\" target=\"_blank\" rel=\"noopener\">Easy and Repeatable Kubernetes Development<\/a><br>Apollo &#8211;&nbsp;<a href=\"https:\/\/github.com\/logzio\/apollo\" target=\"_blank\" rel=\"noopener\">Apollo &#8211; The logz.io continuous deployment solution over kubernetes<\/a><br>Helm Cabin &#8211;&nbsp;<a href=\"https:\/\/github.com\/Nick-Triller\/helm-cabin\" target=\"_blank\" rel=\"noopener\">Web UI that visualizes Helm releases in a Kubernetes cluster<\/a><br>flagger &#8211;&nbsp;<a href=\"https:\/\/github.com\/weaveworks\/flagger\" target=\"_blank\" rel=\"noopener\">Progressive delivery Kubernetes operator (Canary, A\/B Testing and Blue\/Green deployments)<\/a><br>Kubeform &#8211;&nbsp;<a href=\"https:\/\/github.com\/kubeform\/kubeform\" target=\"_blank\" rel=\"noopener\">Kubernetes CRDs for Terraform providers https:\/\/kubeform.com<\/a><br>Spinnaker &#8211;&nbsp;<a href=\"https:\/\/github.com\/spinnaker\/spinnaker\" target=\"_blank\" rel=\"noopener\">Spinnaker is an open source, multi-cloud continuous delivery platform for releasing software changes with high velocity and confidence. http:\/\/www.spinnaker.io\/<\/a><br>Helmsman &#8211;&nbsp;<a href=\"https:\/\/github.com\/Praqma\/helmsman\/\" target=\"_blank\" rel=\"noopener\">Helm Charts as Code<\/a><br>Argo &#8211;&nbsp;<a href=\"https:\/\/github.com\/argoproj\/argo\" target=\"_blank\" rel=\"noopener\">Argo Workflows: Get stuff done with Kubernetes<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"network-policies\">Network Policies<\/h2>\n\n\n\n<p>trireme-kubernetes &#8211;&nbsp;<a href=\"https:\/\/github.com\/aporeto-inc\/trireme-kubernetes\" target=\"_blank\" rel=\"noopener\">Aporeto integration with Kubernetes Network Policies<\/a><br>Calico &#8211;&nbsp;<a href=\"https:\/\/github.com\/projectcalico\/calico\" target=\"_blank\" rel=\"noopener\">Cloud native connectivity and network policy<\/a><br>kubepox &#8211;&nbsp;<a href=\"https:\/\/github.com\/aporeto-inc\/kubepox\" target=\"_blank\" rel=\"noopener\">Kubernetes network Policy eXploration tool<\/a><br>kokotap &#8211;&nbsp;<a href=\"https:\/\/github.com\/redhat-nfvpe\/kokotap\" target=\"_blank\" rel=\"noopener\">Tools for kubernetes pod network tapping<\/a><br>Submariner &#8211;&nbsp;<a href=\"https:\/\/github.com\/submariner-io\/submariner\" target=\"_blank\" rel=\"noopener\">Connect all your Kubernetes clusters, no matter where they are in the world<\/a><br>egress-operator &#8211;&nbsp;<a href=\"https:\/\/github.com\/monzo\/egress-operator\" target=\"_blank\" rel=\"noopener\">An operator to produce egress gateway pods and control access to them with network policies<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"k8s-testing-tools\">K8s Testing Tools<\/h2>\n\n\n\n<p>k6 &#8211;&nbsp;<a href=\"https:\/\/github.com\/loadimpact\/k6\" target=\"_blank\" rel=\"noopener\">A modern load testing tool, using Go and JavaScript<\/a><br>Network bandwith and load testing &#8211;&nbsp;<a href=\"https:\/\/github.com\/mrahbar\/k8s-testsuite\" target=\"_blank\" rel=\"noopener\">Test suite for Kubernetes<\/a><br>test-infra &#8211;&nbsp;<a href=\"https:\/\/github.com\/kubernetes\/test-infra\" target=\"_blank\" rel=\"noopener\">Test infrastructure for the Kubernetes project<\/a><br>kube-score &#8211;&nbsp;<a href=\"https:\/\/github.com\/zegl\/kube-score\" target=\"_blank\" rel=\"noopener\">Kubernetes object analysis with recommendations for improved reliability and security<\/a><br>Litmus &#8211;&nbsp;<a href=\"https:\/\/github.com\/litmuschaos\/litmus\" target=\"_blank\" rel=\"noopener\">Cloud-Native Chaos Engineering; Kubernetes-Native Chaos Engineering; Chaos Engineering for Kubernetes<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"service-mesh--ingress\">Service Mesh \/ Ingress<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Traefik <\/strong>&#8211;&nbsp;<a href=\"https:\/\/github.com\/containous\/traefik\" target=\"_blank\" rel=\"noopener\">The Cloud Native Edge Router<\/a><\/li><li><strong>NGINX Ingress Controller <\/strong>&#8211;&nbsp;<a href=\"https:\/\/github.com\/nginxinc\/kubernetes-ingress\" target=\"_blank\" rel=\"noopener\">NGINX and NGINX Plus Ingress Controllers for Kubernetes<\/a><\/li><li><strong>Autopilot <\/strong>&#8211;&nbsp;<a href=\"https:\/\/docs.solo.io\/autopilot\/latest\" target=\"_blank\" rel=\"noopener\">THE SERVICE MESH SDK<\/a><\/li><li><strong>linkerd-config<\/strong> &#8211;&nbsp;<a href=\"https:\/\/github.com\/ihcsim\/linkerd-config\" target=\"_blank\" rel=\"noopener\">A Kubernetes controller that knows how to reconcile the Linkerd configuration<\/a><\/li><li><strong>Kong for Kubernetes <\/strong>&#8211;&nbsp;<a href=\"https:\/\/github.com\/Kong\/kubernetes-ingress-controller\" target=\"_blank\" rel=\"noopener\">Use Kong for Kubernetes Ingress<\/a><\/li><li><strong>istio<\/strong> &#8211; At a high level, Istio helps reduce the complexity of these deployments, and eases the strain on your development teams. It is a completely open source service mesh that layers transparently onto existing distributed applications. It is also a platform, including APIs that let it integrate into any logging platform, or telemetry or policy system.<\/li><li><strong>envoy <\/strong>&#8211; Envoy is an open source edge and service proxy, designed for cloud-native applications. Envoy is an L7 proxy and communication bus designed for large modern service oriented architectures.<\/li><li><strong>linkerd <\/strong>&#8211; Linkerd is a transparent service mesh, designed to make modern applications safe and sane by transparently adding service discovery, load balancing, failure handling, instrumentation, and routing to all inter-service communication.<\/li><li><strong>consul <\/strong>&#8211; Consul is a service mesh solution providing a full featured control plane with service discovery, configuration, and segmentation functionality.<\/li><li><strong>Ambassador Edge Stack-<\/strong> The Ambassador Edge Stack gives platform engineers a comprehensive, self-service edge stack for managing the boundary between end-users and Kubernetes. Built on the Envoy Proxy and fully Kubernetes-native, the Ambassador Edge Stack is made to support multiple, independent teams that need to rapidly publish, monitor, and update services for end-users.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"observability\">Observability<\/h2>\n\n\n\n<p>Kubespy &#8211;&nbsp;<a href=\"https:\/\/github.com\/pulumi\/kubespy\" target=\"_blank\" rel=\"noopener\">Tools for observing Kubernetes resources in real time<\/a><br>Popeye &#8211;&nbsp;<a href=\"https:\/\/github.com\/derailed\/popeye\" target=\"_blank\" rel=\"noopener\">A Kubernetes cluster resource sanitizer<\/a><br>Stern &#8211;&nbsp;<a href=\"https:\/\/github.com\/wercker\/stern\" target=\"_blank\" rel=\"noopener\">Multi pod and container log tailing for Kubernetes<\/a><br>Cri-tools &#8211;&nbsp;<a href=\"https:\/\/github.com\/kubernetes-sigs\/cri-tools\" target=\"_blank\" rel=\"noopener\">CLI and validation tools for Kubelet Container Runtime Interface (CRI)<\/a><br>Kubebox &#8211;&nbsp;<a href=\"https:\/\/github.com\/astefanutti\/kubebox\" target=\"_blank\" rel=\"noopener\">Terminal and Web console for Kubernetes<\/a><br>Kubewatch &#8211;&nbsp;<a href=\"https:\/\/github.com\/bitnami-labs\/kubewatch\" target=\"_blank\" rel=\"noopener\">Watch k8s events and trigger Handlers<\/a><br>kube-state-metrics &#8211;&nbsp;<a href=\"https:\/\/github.com\/kubernetes\/kube-state-metrics\" target=\"_blank\" rel=\"noopener\">Add-on agent to generate and expose cluster-level metrics<\/a><br>Sloop &#8211;&nbsp;<a href=\"https:\/\/github.com\/salesforce\/sloop\" target=\"_blank\" rel=\"noopener\">Kubernetes History Visualization<\/a><br>kubectl tree ? &#8211;&nbsp;<a href=\"https:\/\/github.com\/ahmetb\/kubectl-tree\" target=\"_blank\" rel=\"noopener\">Kubectl plugin to observe object hierarchies through ownerReferences<\/a><br>chaoskube &#8211;&nbsp;<a href=\"https:\/\/github.com\/linki\/chaoskube\" target=\"_blank\" rel=\"noopener\">chaoskube periodically kills random pods in your Kubernetes cluster<\/a><br>BotKube &#8211;&nbsp;<a href=\"https:\/\/www.botkube.io\/\" target=\"_blank\" rel=\"noopener\">Helps you monitor your Kubernetes cluster(s), debug critical deployments and gives recommendations for standard practices<\/a><br>Kubestone &#8211;&nbsp;<a href=\"https:\/\/kubestone.io\/en\/latest\" target=\"_blank\" rel=\"noopener\">Kubestone is a benchmarking Operator that can evaluate the performance of Kubernetes installations<\/a><br>Chaos Mesh &#8211;&nbsp;<a href=\"https:\/\/github.com\/pingcap\/chaos-mesh\" target=\"_blank\" rel=\"noopener\">A Chaos Engineering Platform for Kubernetes<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"machine-learningdeep-learning\">Machine Learning\/Deep Learning<\/h2>\n\n\n\n<p>Kubeflow &#8211;&nbsp;<a href=\"https:\/\/github.com\/kubeflow\/kubeflow\" target=\"_blank\" rel=\"noopener\">Machine Learning Toolkit for Kubernetes<\/a><br>Volcano &#8211;&nbsp;<a href=\"https:\/\/github.com\/volcano-sh\/volcano\" target=\"_blank\" rel=\"noopener\">A Kubernetes Native Batch System<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"compute-edge-tools\">Compute Edge Tools<\/h2>\n\n\n\n<p>KubeEdge &#8211;&nbsp;<a href=\"https:\/\/github.com\/kubeedge\/kubeedge\" target=\"_blank\" rel=\"noopener\">Kubernetes Native Edge Computing Framework<\/a><br>Kubeless &#8211;&nbsp;<a href=\"https:\/\/github.com\/kubeless\/kubeless\" target=\"_blank\" rel=\"noopener\">Kubernetes Native Serverless Framework<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"kubernetes-tools-for-specific-cloud\">Kubernetes Tools for Specific Cloud<\/h2>\n\n\n\n<p>Kubernetes on AWS (kube-aws) &#8211;&nbsp;<a href=\"https:\/\/github.com\/kubernetes-incubator\/kube-aws\" target=\"_blank\" rel=\"noopener\">A command-line tool to declaratively manage Kubernetes clusters on AWS<\/a><br>Draft: Streamlined Kubernetes Development &#8211;&nbsp;<a href=\"https:\/\/github.com\/azure\/draft\" target=\"_blank\" rel=\"noopener\">A tool for developers to create cloud-native applications on Kubernetes<\/a><br>helm-ssm &#8211;&nbsp;<a href=\"https:\/\/github.com\/totango\/helm-ssm\" target=\"_blank\" rel=\"noopener\">A low dependency tool for retrieving and injecting secrets from AWS SSM into Helm<\/a><br>Skupper &#8211;&nbsp;<a href=\"https:\/\/skupper.io\/\" target=\"_blank\" rel=\"noopener\">Multicloud communication for Kubernetes<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"kubernetes-storage-providers\">Kubernetes Storage Providers<\/h2>\n\n\n\n<p>ChubaoFS &#8211;&nbsp;<a href=\"https:\/\/github.com\/chubaofs\/chubaofs\" target=\"_blank\" rel=\"noopener\">distributed file system and object storage<\/a><br>Longhorn &#8211;&nbsp;<a href=\"https:\/\/github.com\/longhorn\/longhorn\" target=\"_blank\" rel=\"noopener\">Cloud-Native distributed block storage built on and for Kubernetes<\/a><br>OpenEBS &#8211;&nbsp;<a href=\"https:\/\/github.com\/openebs\/openebs\" target=\"_blank\" rel=\"noopener\">Kubernetes native &#8211; hyperconverged block storage with multiple storage engines<\/a><br>Rook &#8211;&nbsp;<a href=\"https:\/\/github.com\/rook\/rook\" target=\"_blank\" rel=\"noopener\">Storage Orchestration for Kubernetes<\/a><br>TiKV &#8211;&nbsp;<a href=\"https:\/\/github.com\/tikv\/tikv\" target=\"_blank\" rel=\"noopener\">Distributed transactional key-value database<\/a><br>velero &#8211;&nbsp;<a href=\"https:\/\/github.com\/vmware-tanzu\/velero\" target=\"_blank\" rel=\"noopener\">Backup and migrate Kubernetes applications and their persistent volumes<\/a><br>Vitess &#8211;&nbsp;<a href=\"https:\/\/github.com\/vitessio\/vitess\" target=\"_blank\" rel=\"noopener\">Vitess is a database clustering system for horizontal scaling of MySQL<\/a><br>Ubiquity &#8211;&nbsp;<a href=\"https:\/\/github.com\/IBM\/ubiquity\" target=\"_blank\" rel=\"noopener\">Ubiquity Storage Service for Container Ecosystems<\/a><br>kubectl-unbound-pvc &#8211;&nbsp;<a href=\"https:\/\/github.com\/ishantanu\/kubectl-unbound-pvc\" target=\"_blank\" rel=\"noopener\">A kubectl plugint to see PVCs which are not in \u201cBound\u201d state<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"kubernetes-security-tools\">Kubernetes Security tools<\/h2>\n\n\n\n<p>kube-hunter &#8211;&nbsp;<a href=\"https:\/\/github.com\/aquasecurity\/kube-hunter\" target=\"_blank\" rel=\"noopener\">Hunt for security weaknesses in Kubernetes clusters<\/a><br>kube-bench &#8211;&nbsp;<a href=\"https:\/\/github.com\/aquasecurity\/kube-bench\" target=\"_blank\" rel=\"noopener\">Checks whether Kubernetes is deployed according to security best practices as defined in the CIS Kubernetes Benchmark<\/a><br>Kube-Scan &#8211;&nbsp;<a href=\"https:\/\/github.com\/octarinesec\/kube-scan\" target=\"_blank\" rel=\"noopener\">kube-scan: Octarine k8s cluster risk assessment tool https:\/\/www.octarinesec.com\/<\/a><br>Permission manager &#8211;&nbsp;<a href=\"https:\/\/github.com\/sighupio\/permission-manager\" target=\"_blank\" rel=\"noopener\">Permission Manager is a project that brings sanity to Kubernetes RBAC and Users management, Web UI FTW https:\/\/sighup.io\/<\/a><br>Kubernetes Common Configuration Scoring System (KCCSS) &#8211;&nbsp;<a href=\"https:\/\/github.com\/octarinesec\/kccss\" target=\"_blank\" rel=\"noopener\">Kubernetes Common Configuration Scoring System https:\/\/www.octarinesec.com\/<\/a><br>Sysdig Inspect &#8211;&nbsp;<a href=\"https:\/\/github.com\/draios\/sysdig-inspect\" target=\"_blank\" rel=\"noopener\">Sysdig Inspect &#8211; A powerful opensource interface for container troubleshooting and security investigation https:\/\/www.sysdig.org\/<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"kubernetes-on-mobile\">Kubernetes On Mobile<\/h2>\n\n\n\n<p>Cabin, the mobile app for Kubernetes &#8211;&nbsp;<a href=\"https:\/\/github.com\/bitnami-labs\/cabin\" target=\"_blank\" rel=\"noopener\">The Mobile Dashboard for Kubernetes<\/a><br>kubenav &#8211;&nbsp;<a href=\"https:\/\/github.com\/kubenav\/kubenav\" target=\"_blank\" rel=\"noopener\">kubenav is the navigator for your Kubernetes clusters right in your pocket. https:\/\/kubenav.io<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"non-categorize\">Non-categorize<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Rudr &#8211;&nbsp;<a href=\"https:\/\/github.com\/oam-dev\/rudr\" target=\"_blank\" rel=\"noopener\">A Kubernetes implementation of the Open Application Model specification<\/a><\/li><li>Funktion &#8211;&nbsp;<a href=\"https:\/\/github.com\/funktionio\/funktion\" target=\"_blank\" rel=\"noopener\">CLI tool for working with funktion<\/a><\/li><li>Alterant &#8211;&nbsp;<a href=\"https:\/\/github.com\/cloud66-oss\/alterant\" target=\"_blank\" rel=\"noopener\">A simple Kubernetes configuration modifier<\/a><\/li><li>BUCK &#8211;&nbsp;<a href=\"https:\/\/github.com\/brigadecore\/buck\" target=\"_blank\" rel=\"noopener\">Brigade Universal Controller for Kubernetes<\/a><\/li><li>Chaos Toolkit Kubernetes Support &#8211;&nbsp;<a href=\"https:\/\/github.com\/chaostoolkit\/chaostoolkit-kubernetes\" target=\"_blank\" rel=\"noopener\">Kubernetes driver extension of the Chaos Toolkit probes and actions API<\/a><\/li><li>kube-fledged &#8211;&nbsp;<a href=\"https:\/\/github.com\/senthilrch\/kube-fledged\" target=\"_blank\" rel=\"noopener\">A kubernetes add-on for creating and managing a cache of container images directly on the cluster worker nodes, so application pods start almost instantly<\/a><\/li><li>CoreDNS &#8211; CoreDNS is a DNS server. It is written in Go.<\/li><li>containerd &#8211; An industry-standard container runtime with an emphasis on simplicity, robustness, and portability.<\/li><li>The Update Framework (TUF) &#8211; The Update Framework (TUF) helps developers maintain the security of software update systems, providing protection even against attackers<\/li><li>Jaeger &#8211; Monitor and troubleshoot transactions in complex distributed systems.<\/li><li>Fluentd &#8211; Fluentd is an open source data collector for unified logging layer. Fluentd allows you to unify data collection and consumption for a better use and understanding<\/li><li>OpenTracing &#8211; Ideas about distributed tracing and monitoring across multiple systems have certainly generated quite a buzz.<\/li><li>gRPC &#8211; gRPC is a modern open source high performance RPC framework that can run in any environment.<\/li><li>CNI &#8211; CNI (Container Network Interface), a Cloud Native Computing Foundation project, consists of a specification and libraries for writing plugins to configure network<\/li><li>Notary &#8211; Notary is a core piece of plumbing in Docker&#8217;s approach to the secure supply chain whereby security is seamlessly and uniformly embedded into a workflow from development all the way through to operations. Notary is an implementation of The Update Framework (TUF) written in Go.<\/li><li>NATS &#8211; NATS was built to meet the distributed computing needs of today and tomorrow. NATS is simple and secure messaging made for developers and operators who want to spend more time developing modern applications and services than worrying about a distributed communication system.<\/li><li>Helm &#8211; Helm helps you manage Kubernetes applications \u2014 Helm Charts help you define, install, and upgrade even the most complex Kubernetes application.<\/li><li>Harbor &#8211; Our mission is to be the trusted cloud native repository for Kubernetes.<\/li><li>etcd &#8211; etcd is a distributed reliable key-value store for the most critical data of a distributed system, with a focus on being: etcd is written in Go and uses the Raft consensus algorithm to manage a highly-available replicated log.<ul><li>Simple: well-defined, user-facing API (gRPC)<\/li><li>Secure: automatic TLS with optional client cert authentication<\/li><li>Fast: benchmarked 10,000 writes\/sec<\/li><li>Reliable: properly distributed using Raft<\/li><\/ul><\/li><li>Open Policy Agent &#8211; The Open Policy Agent (OPA, pronounced \u201coh-pa\u201d) is an open source, general-purpose policy engine that unifies policy enforcement across the stack.<\/li><li>CRI-O &#8211; CRI-O supports OCI container images and can pull from any container registry. It is a lightweight alternative to using Docker, Moby or rkt as the runtime<\/li><li>CloudEvents &#8211; CloudEvents is a specification for describing event data in common formats to provide interoperability across services, platforms and systems.<\/li><li>Falco &#8211; Falco, the open source cloud-native runtime security project, is the defacto Kubernetes threat detection engine. Falco detects unexpected application behavior and alerts on threats at runtime.<\/li><\/ul>\n\n\n<div class=\"epyt-gallery\" data-currpage=\"1\" id=\"epyt_gallery_96838\"><figure class=\"wp-block-embed wp-block-embed-youtube is-type-video is-provider-youtube epyt-figure\"><div class=\"wp-block-embed__wrapper\"><iframe loading=\"lazy\"  id=\"_ytid_86342\"  width=\"760\" height=\"427\"  data-origwidth=\"760\" data-origheight=\"427\" src=\"https:\/\/www.youtube.com\/embed\/?enablejsapi=1&#038;autoplay=0&#038;cc_load_policy=0&#038;cc_lang_pref=&#038;iv_load_policy=1&#038;loop=0&#038;rel=1&#038;fs=1&#038;playsinline=0&#038;autohide=2&#038;theme=dark&#038;color=red&#038;controls=1&#038;disablekb=0&#038;\" class=\"__youtube_prefs__  no-lazyload\" title=\"YouTube player\"  data-epytgalleryid=\"epyt_gallery_96838\"  allow=\"fullscreen; accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen data-no-lazy=\"1\" data-skipgform_ajax_framebjll=\"\"><\/iframe><\/div><\/figure><div class=\"epyt-gallery-list\"><div>Sorry, there was a YouTube error.<\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>K8s Cluster Management kubespray &#8211;&nbsp;Deploy a Production Ready Kubernetes Cluster kops &#8211;&nbsp;kops helps you create, destroy, upgrade and maintain production-grade, highly available, Kubernetes clusters from the command line. AWS is currently officially supported, with GCE in beta support , and VMware vSphere in alpha, and other platforms planned. Kube-ops-view &#8211;&nbsp;Kubernetes Operational View &#8211; read-only system&#8230;<\/p>\n","protected":false},"author":1,"featured_media":5058,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","_joinchat":[],"footnotes":""},"categories":[4859],"tags":[1194,4955,4956,4946,4949,4951,4952,4953,4954,4947,4945,4948,4950,4860,4861,311],"class_list":["post-5050","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-kubernetes","tag-container","tag-federation","tag-heapster","tag-jsonpath","tag-kops","tag-kube-proxy","tag-kube-apiserver","tag-kube-controller-manager","tag-kube-scheduler","tag-kubeadm","tag-kubectl","tag-kubefed","tag-kubelet","tag-kubernetes","tag-minikube","tag-tools"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/5050","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=5050"}],"version-history":[{"count":12,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/5050\/revisions"}],"predecessor-version":[{"id":24876,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/5050\/revisions\/24876"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media\/5058"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=5050"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=5050"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=5050"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}