Tools I use in my day-to-day DevOps JobDevOps
Hi, I'm a full time DevOps, I'll try to share some tools that I use on my day to day workflow.
Every Days #
This one is open every single day, multiple instances of it. VSCode handle yaml nicely, and as you know YAML is everywhere in the DevOps world.
- CI/CD when I need to open a project and edit the
- For editing Dockerfile, VSCode has some plugin for that.
- Helm, Kubernetes. If I need to update some Helm, VSCode does the job.
- Ansible playbook are another use case for VSCode.
- Terraform for some Infrastructure as Code (IaC)
- SSH remote plugin is also a good way to edit file in a server.
You get the point, DevOps as well as Devs spend a fair amount of time editing files.
I still use Vim daily, it's ain't much, but it's honest work! Here some use case.
- Quick edit on my laptop.
- File configuration on servers when I'm not using Ansible.
- Parse logs.
- Test inside a Docker container.
Docker, docker-compose, Dockerfile #
Docker is everywhere. I often does the Dockerfile for projects, even if it could be done by Developers, I guess it depends where you are. In my case, I deal with Docker every day. Dockerfile every week or every month, depends what's on my workbench. I don't deal with docker-compose that often, when I used to run docker Swarm the syntax is so close. I still have a cluster running in production. Yeap, even in 2022. If you wander about Docker Swarm, you might want read Should You Still Use Docker Swarm in 2021.
- Docker: every day
- Dockerfile: every month
- docker-compose: sometime, when a dev has some trouble with is stack.
Kubernetes, Kubectl, Krew, Helm #
I use Kubernetes in production, this mean I spend a fair amount of time with at least one of those tools. Kubectl is the command line used to interact with Kubernetes. Krew a plugin manager, I use to switch namespace and context (cluster) all the time, this come very helpful. Last, Helm is in every deployment I got. I might not use all of them every single day, but certainly one of them.
Note taking app #
This one is not DevOps per say. more like a soft skill to master. I have my note ready at all time. I even blog about my note app.
- Obsidian as Note Taking App for Technical People
- Sync Obsidian Between Laptop and Android
- After Obsidian and Logseq, I give Dendron a try
SSH, cat, grep, env, screen, tmux #
I do administration task via a bastion host that I connect with SSH, every single day. Make it feel like home. I used to have an Archlinux with nerdy look, all apps with ncurses (I even write a terminal twitter client). The idea is to move around your terminal as fluently if you were on your desktop.
VMWare / Kali #
This could surprise you in a DevOps list, but for security reasons, I use Kali in a VM. Choose yours between VirtualBox or VMWare and get comfortable in it.
Checkmk, moniroring #
SRE is a big area. But to know what going on in your system, you need dashboard and monitoring. Use the one provided with your cloud provider or something else like Prometheus or CheckMK.
Every Week #
I might not use them all day long, but they still in my workflow.
Gitlab CI #
CI/CD is a big part of the job. You might use Jenkins or Github Action or others famous.
This little tool allows to send http request in command line. Like
curl but with a nice output. Can be handy.
This one or any alternative is important, help to create reproductible architecture, it can help with disaster recovery plan as well. I'm not using it every day but often enough.
Provider CLI tool for Google Cloud Platform, depending on the platform you use, it still useful.
Every Month #
This could surprise you, but I’m not use that much ansible. I haven't written much playbook, but it's useful.
Small tool to parse json, always useful when needed for a script.
Hope it help. I'll make sure to update the list if other come in mind.