9 Tools To Develop Software For Cloud
Each ecosystem requires a different tool set, and your belt must be well prepared. Developing applications for a Kubernetes environment is no exception
On this occasion, I would like to share with you a set of tools I find useful when I work developing software that will be delivered in a cloud. More concretely, and because in recent times I more focused on Kubernetes, Kafka, Microservices, and Event-Driven architectures, my list below will be oriented to that.
So, if you are working with those technologies and architectures, or you are curious, this is for you.
There we go!
k9s. This is the tool I use the most. I use it to manage the resources of the Kubernetes clusters among the different regions. Love the shortcuts available for jumping between namespaces, viewing or editing resources, port-forwarding, and the autocomplete for accessing different kinds of objects.
Kafka Shell via Docker. I use this to be deployed in Kubernetes, within a Pod, together with other utilities
AKHQ. This is the tool I use to access data in Kafka outside of the command line. It has some nice features, like the capability to search records by key and content.
Nektos Act. To validate my GitHub Actions in my local environment. Recently I became a big fan of this tool. Allows me to validate my GitHub Actions before pushing them to the remote repository.
ArgoCD. To deliver my software to the Kubernetes clusters. Long time since I used the `kubectl` tool to deploy to dev, pre-production, and production. This UI tool is really useful to manage the lifecycle of Kubernetes applications in the different clusters. Nowadays, I see FluxCD having momentum too, but I haven’t try it yet; I know my friends from CERN are using it, so pretty sure it’s a good tool.
Docker CLI. Working in my local environment, and during the development of my microservices, I have to “SSH” into my containers, and for that, I use the docker command line directly.
Lens. Same idea as k9s, but this is a UI tool. Great evolution since the initial versions. I don’t use it very frequently, I tend to use the command line in general but might want to have this installed as well.
Postman. Great UI tool to perform API calls. Normally, I use it in combination with k9s, opening a port-forwarding, and then performing calls with Postman to the API that I exposed. It has plenty of features and, to be honest, I just use the most basic ones: Collections of API calls and not much.
BloomRPC. I work quite often with data in Protobuf format and with gRPC APIs. Same as I use Postman. This tool does not have the best UI experience, but it’s effective. I know about Protoman, but I did not use it yet.
Thanks for your support of my work here, really appreciate it!
If you enjoyed this article, then click the 💜. It helps!
If you know someone else will benefit from this, ♻️ share this post.
Great list. About Postman I may suggest using "Bruno"