DEV Community

Jonatas Baldin
Jonatas Baldin

Posted on

Tools of the Week #1

Originally posted at Deploy Everyday.

Tools of the week is a top of my head idea to write a tiny little bit about the tools and libraries I discovered every week. I love tools. I now you love them too ❤️

wharfee

A shell for Docker with auto complete and highlight. I love this niche shells with asteroids, like saws.

If you use Docker a lot, it makes life soooo much easier. You know when you are trying to nailed down that set of flags to get a specific behavior? Having a tool that basically tells you what's available without you even need to ask it's just amazing.

Screenshot showing the usage of wharfee


kubebox

A nice tool to have a quick overview of your pods with their metrics and logs AND by pressing r to remote login into them 🤯 You can run it locally, from inside or cluster or even in their webpage. Way better than doing a bunch of kubectl commands to navigate your environment. Also, there are a lot of interesting open issues, a good start for Hacktoberfest!

GIF showing the usage of kubebox


kubespy

Have you ever wondered what actually happens when you create a Service in K8S? I just discovered that for a ClusterIP one it also creates an Endpoint which lead me to go and understand what an Endpoint actually is.

Kubespy displays real time changes to complex structures in Kubernetes. Crazy cool.

You issue a command like:

$ kubespy trace service mysvc
Waiting for Service 'default/mysvc'
Enter fullscreen mode Exit fullscreen mode

Then deploy a Service in another console:

apiVersion: v1
kind: Service
metadata:
  name: mysvc
spec:
  selector:
    app: myapp
  ports:
  - port: 80
Enter fullscreen mode Exit fullscreen mode

And your previous terminal will look like this:

[MODIFIED v1/Service]  default/mysvc
    ✅ Successfully created Endpoints object 'mysvc' to direct traffic to Pods
    ✅ Successfully allocated a cluster-internal IP: mysvc

[MODIFIED v1/Endpoints]  default/mysvc
    ✅ Directs traffic to the following live Pods:
       - [Ready] myapp @ 10.28.0.12
Enter fullscreen mode Exit fullscreen mode

Awesome, right? You can also inspect status and changes for complex objects, getting some nice JSON diffs.


octant

A web-based, highly extensible platform for developers to better understand the complexity of Kubernetes clusters.

Having an overview of your entire cluster can't be easier! Just install the binary and:

$ octant
Enter fullscreen mode Exit fullscreen mode

Boom!

Octant allows you to take a quick look on your resources, like Services and Pods, including their events, logs and configurations. You can also change your cluster by deleting specific objects.

For me, the best feature is the Resource Viewer, showing the relationship between stuff:

Screenshot with the Resource Viewer page from octant

It also has a plugin system, but I didn't find any quick-and-use plugin out there :(

Discussion (2)

Collapse
zchtodd profile image
zchtodd

Cool! Docker is definitely something where I know enough to be dangerous but have a lot of gaps. I think a tool like Wharfee could be pretty useful to fill in the gaps. Thanks!

Collapse
jonatasbaldin profile image
Jonatas Baldin Author

yessss! I love it!