Introduction

In the last few years, Kubernetes has laid waste to its fellow competitors in the battlefield of container orchestration. Sadly, Docker Swarm hasn’t been a major contender since 2016 and, like AWS, admitted defeat by pledging K8s support and integration.

Since Kubernetes has skyrocketed to popularity as the container solution of choice, here’s a comprehensive list of all the tools that complement K8s to further enhance your development work.

Kube Cluster Deployment

#Kubespray

1. Kubespray

Kubespray provides a set of Ansible roles for Kubernetes deployment and configuration. Kubespray can use AWS, GCE, Azure, OpenStack or a bare metal Infrastructure as a Service (IaaS) platform. Kubespray is an open-source project with an open development model. The tool is a good choice for people who already know Ansible as there’s no need to use another tool for provisioning and orchestration. Kubespray uses kubeadm under the hood.

Link: https://github.com/kubernetes-incubator/kubespray

Cost: Free

#Minikube

2. Minikube

Minikube allows you to install and try out Kubernetes locally. The tool is a good starting point for Kubernetes exploration. Easily launch a single-node Kubernetes cluster inside a virtual machine (VM) on your laptop. Minikube is available on Windows, Linux, and OSX. In just 5 minutes you will be able to explore Kubernetes’ main features. Launch the Minikube dashboard straight-from-the-box with just one command.

Link: https://github.com/kubernetes/minikube

Cost: Free

3. Kubeadm

Kubeadm is a Kubernetes distribution tool since version 1.4. The tool helps to bootstrap best-practice Kubernetes clusters on existing infrastructure. Kubeadm cannot provision infrastructure for you though. Its main advantage is the ability to launch minimum viable Kubernetes clusters anywhere. Add-ons and networking setup are both out of Kubeadm’s scope though, so you will need to install this manually or using another tool.

Link: https://github.com/kubernetes/kubeadm

Cost: Free

4. Kops

Kops helps you create, destroy, upgrade, and maintain production-grade, highly available Kubernetes clusters from the command line. Amazon Web Services (AWS) is currently officially supported, with GCE in beta support, and VMware vSphere in alpha, and other platform support is planned. Kops allows you to control the full Kubernetes cluster lifecycle; from infrastructure provisioning to cluster deletion.

Link: https://github.com/kubernetes/kops

Cost: Free

5. Bootkube

Bootkube is a great tool for launching self-hosted Kubernetes clusters. It helps you set up a temporary Kubernetes control plane which will operate until the self-hosted control-plane is able to handle requests.

Link: https://github.com/kubernetes-incubator/bootkube

Cost: Free

Kubernetes on AWS (#KubeAWS)

6. Kubernetes on AWS (Kube-AWS)

Kube-AWS is a console tool provided by CoreOS which deploys a fully-functional Kubernetes cluster using AWS CloudFormation. Kube-AWS allows you to deploy a traditional Kubernetes cluster and automatically provision every K8s service with native AWS features (e.g., ELB, S3, and Auto Scaling, etc.).

Link: https://github.com/kubernetes-incubator/kube-aws

Cost: Free

#JAAS

7. JAAS

JAAS, is Juju as a service which simplifies how you configure, scale and operate today’s complex software. Juju deploys everywhere: to public or private clouds. JAAS deploys your workload to your cloud of choice.

Link: https://jaas.ai/

#conjure-up

8. Conjure-up

Conjure-up is another Canonical product which allows you to deploy “The Canonical Distribution of Kubernetes on Ubuntu” with a few simple commands. It supports AWS, GCE, Azure, Joyent, OpenStack, VMware, bare metal, and localhost deployments. Juju, MAAS, and LXD are the underlying technology for Conjure-up.

Link: https://conjure-up.io/

Cost: Free

#AmazonEKS

9. Amazon EKS

Amazon Elastic Container Service for Kubernetes (Amazon EKS) is a managed service which makes it simple to deploy, manage, and scale containerized applications using Kubernetes. Amazon EKS manages your Kubernetes infrastructure across multiple AWS Availability Zones, while automatically detecting and replacing unhealthy control plane nodes, and providing on-demand upgrades and patching. You simply provision worker nodes and connect them to the provided Amazon EKS endpoint.

Link: https://aws.amazon.com/eks/

Cost: Pay for the resources used

Monitoring Tools

10. Kubebox

Kubebox is a terminal console for Kubernetes cluster which allows you to manage and monitor your cluster-live status with a nice, old-school interface. Kubebox shows your pod resource usage, cluster monitoring, and container logs, etc. Additionally, you can easily navigate to the desired namespace and execute into the desired container for fast troubleshooting/recovery.

Link: https://github.com/astefanutti/kubebox

Cost: Free

11. Kubernetes Operational View (Kube-ops-view)

Kube-ops-view is a read-only system dashboard for multiple K8s clusters. With Kube-ops-view you can easily navigate between your cluster and monitor nodes as well as your pod’s healthiness. Kube-ops-view animates some Kubernetes processes such as pod creation and termination. It also uses Heapster as a source of data.

Link: https://github.com/hjacobs/kube-ops-view

Cost: Free

12. Kubetail

Kubetail is a small bash script which allows you to aggregate logs from multiple pods into one stream. The initial Kubetail version doesn’t have filtering or highlighting features, but there is an additional Kubetail fork on Github. This can form and perform logs coloring using multitail tools.

Link: https://github.com/johanhaleby/kubetail

Cost: Free

#kubernetes #devops

50+ Useful Kubernetes Tools
4.60 GEEK