<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Devops on Luiz Felipe F M Costa</title><link>https://thenets.org/tags/devops/</link><description>Recent content in Devops on Luiz Felipe F M Costa</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Tue, 10 Jun 2025 17:11:05 +0000</lastBuildDate><atom:link href="https://thenets.org/tags/devops/index.xml" rel="self" type="application/rss+xml"/><item><title>podman + docker compose and daemon on Linux</title><link>https://thenets.org/posts/podman-docker-compose-and-daemon-on-linux/</link><pubDate>Tue, 10 Jun 2025 17:11:05 +0000</pubDate><guid>https://thenets.org/posts/podman-docker-compose-and-daemon-on-linux/</guid><description>&lt;p&gt;I&amp;rsquo;m setting up my developer machine and this is a common situation I face working on some opensource projects. Podman itself already is a great replacement for all container needs I have but &lt;code&gt;docker compose&lt;/code&gt; still is an important component. In this post, I want to go through the process to setup a Fedora machine using Podman with support for &lt;code&gt;docker compose&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id="requirements"&gt;Requirements&lt;/h2&gt;
&lt;p&gt;Some new Linux distro. Even Debian Testing will have the necessary packages. Here, I&amp;rsquo;m using Fedora 42.&lt;/p&gt;</description></item><item><title>How to forward a TCP port using systemd + socat</title><link>https://thenets.org/posts/how-to-forward-a-tcp-port-using-systemd-socat/</link><pubDate>Wed, 04 Jun 2025 05:17:47 +0000</pubDate><guid>https://thenets.org/posts/how-to-forward-a-tcp-port-using-systemd-socat/</guid><description>&lt;p&gt;A common problem I need to solve with my web servers are simple TCP port forwarding. This allows you to redirect an application traffic, from a HTTP server for example, to another port or even server. There are many ways of achieving this goal and this post will guide you to solve this problem using &lt;code&gt;systemd&lt;/code&gt; and &lt;code&gt;socat&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id="requirements"&gt;Requirements&lt;/h2&gt;
&lt;p&gt;You need to have a Linux distribution using &lt;code&gt;systemd&lt;/code&gt; and you must have &lt;code&gt;socat&lt;/code&gt; installed.&lt;/p&gt;</description></item><item><title>How to resize Ubuntu server LVM disk to all available disk space</title><link>https://thenets.org/posts/resize-ubuntu-server-lvm-disk-to-all-available-disk-space/</link><pubDate>Tue, 03 Jun 2025 23:06:42 +0000</pubDate><guid>https://thenets.org/posts/resize-ubuntu-server-lvm-disk-to-all-available-disk-space/</guid><description>&lt;p&gt;I need to resize a virtual machine disks multiple times a year. Most of the time, I&amp;rsquo;m lazy enough to just jump into the &lt;a href="https://cockpit-project.org"&gt;Cockpit&lt;/a&gt; web interface and change things there. But in Ubuntu, I need to use command line and I always forget how to resize a Logical Volume Manager (LVM) disk in an Ubuntu server to utilize all available disk space. So, this is my personal notes to remember how to do that next time.&lt;/p&gt;</description></item><item><title>Backup is not Disaster Recovery</title><link>https://thenets.org/posts/backup-is-not-disaster-recovery/</link><pubDate>Tue, 27 May 2025 13:57:19 +0000</pubDate><guid>https://thenets.org/posts/backup-is-not-disaster-recovery/</guid><description>&lt;p&gt;You probably already heard that RAID is not a backup. When world is ending and everything is burning, we also discover that a backup is not a Disaster Recovery plan. In this blog post I want to discuss why is so important to have an unplugged and reliable Disaster Recovery strategy.&lt;/p&gt;
&lt;h2 id="common-scenario-for-backup-plus-disaster-recovery"&gt;Common scenario for Backup plus Disaster Recovery&lt;/h2&gt;
&lt;p&gt;Let&amp;rsquo;s start talking about the common differences between snapshots, backups, and Disaster Recovery strategies.&lt;/p&gt;</description></item><item><title>Running Vagrant + libvirt on Bluefin or Aurora</title><link>https://thenets.org/posts/running-vagrant-libvirt-on-bluefin-or-aurora/</link><pubDate>Tue, 28 Jan 2025 03:22:43 +0000</pubDate><guid>https://thenets.org/posts/running-vagrant-libvirt-on-bluefin-or-aurora/</guid><description>&lt;p&gt;Vagrant is one of the greatest way to develop solutions using virtual machines, with all the isolation that a container can&amp;rsquo;t provide. Unfortunately, Vagrant doesn&amp;rsquo;t support &lt;code&gt;libvirt&lt;/code&gt; out-of-the-box and the existing plugin must be built using your distro libraries. This post will guide you how to install the &lt;code&gt;libvirt&lt;/code&gt; plugin on Bluefin or Aurora but it should also work on Fedora Silverblue.&lt;/p&gt;
&lt;h2 id="requirements"&gt;Requirements&lt;/h2&gt;
&lt;p&gt;I&amp;rsquo;m assuming you are running an &lt;a href="https://www.youtube.com/shorts/SoDCrnvKv9A"&gt;ostree-based distro&lt;/a&gt;. It works with a filesystem in the same fashion as containers images, with immutable layers overlaying each other and mount-points to mutable areas of the system.&lt;/p&gt;</description></item><item><title>Managing multiple Kubernetes clusters with kubectl</title><link>https://thenets.org/posts/managing-multiples-kubernetes-clusters-with-kubectl/</link><pubDate>Wed, 18 Jan 2023 09:01:08 +0000</pubDate><guid>https://thenets.org/posts/managing-multiples-kubernetes-clusters-with-kubectl/</guid><description>&lt;p&gt;Learn how to use &lt;code&gt;kubectl&lt;/code&gt; CLI to manage multiple Kubernetes clusters. Import new config, add cluster, user, and context. Switch between contexts to manage different clusters.&lt;/p&gt;
&lt;p&gt;Kubernetes is an open-source platform for managing containerized workloads and services, allowing you to easily deploy and run applications in a cloud-native environment. The &lt;code&gt;kubectl&lt;/code&gt; command-line interface (CLI) is a key component of Kubernetes, providing a powerful and flexible way to manage clusters and deploy applications.&lt;/p&gt;</description></item><item><title>How to create a database and user for your new app on PostgreSQL</title><link>https://thenets.org/posts/how-to-create-a-database-and-user-for-your-new-app-on-postgresql/</link><pubDate>Sat, 07 Jan 2023 23:40:21 +0000</pubDate><guid>https://thenets.org/posts/how-to-create-a-database-and-user-for-your-new-app-on-postgresql/</guid><description>&lt;p&gt;Creating a database and user for a single application is a common task for developers and database administrators in small and medium environments. In this tutorial, we will walk through the steps to create a new database and user on a Postgres server using the command line.&lt;/p&gt;
&lt;p&gt;Here are the steps you can follow to create a database and user on Postgres:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Connect to the Postgres server by typing the following command:&lt;/li&gt;
&lt;/ol&gt;
&lt;pre&gt;&lt;code class="language-bash"&gt;# Connect to your PostgreSQL server using the `psql` CLI
psql -h &amp;lt;hostname&amp;gt; -p &amp;lt;port&amp;gt; -U &amp;lt;username&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;figcaption class="code-caption"&gt;Replace `hostname` with the name of the server where the Postgres service is running, the `port` if you have a custom one, and `username` with the name of a user who has permission to create databases and users.&lt;/figcaption&gt;
&lt;ol&gt;
&lt;li&gt;Enter the password for the user when prompted.&lt;/li&gt;
&lt;li&gt;Once connected, you can create a new database by typing the following command:&lt;/li&gt;
&lt;/ol&gt;
&lt;pre&gt;&lt;code class="language-bash"&gt;CREATE DATABASE databasename;
&lt;/code&gt;&lt;/pre&gt;
&lt;figcaption class="code-caption"&gt;Replace `databasename` with the desired name for the new database.&lt;/figcaption&gt;
&lt;ol&gt;
&lt;li&gt;To create a new user, type the following command:&lt;/li&gt;
&lt;/ol&gt;
&lt;pre&gt;&lt;code class="language-bash"&gt;CREATE USER username WITH PASSWORD 'password';
&lt;/code&gt;&lt;/pre&gt;
&lt;figcaption class="code-caption"&gt;Replace `username` with the desired name for the new user, and `password` with the desired password for the user.&lt;/figcaption&gt;
&lt;ol&gt;
&lt;li&gt;To grant the new user full privileges on the new database, type the following command:&lt;/li&gt;
&lt;/ol&gt;
&lt;pre&gt;&lt;code class="language-bash"&gt;GRANT ALL PRIVILEGES ON DATABASE databasename TO username;
&lt;/code&gt;&lt;/pre&gt;
&lt;figcaption class="code-caption"&gt;Replace `databasename` with the name of the database, and `username` with the name of the user.&lt;/figcaption&gt;
&lt;ol&gt;
&lt;li&gt;Exit the &lt;code&gt;psql&lt;/code&gt; prompt by typing &lt;code&gt;\q&lt;/code&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;You should now have a new database and user on the Postgres server, and the user should have full privileges on the database.&lt;/p&gt;</description></item><item><title>How to commit encrypted files to Git with Mozilla SOPS</title><link>https://thenets.org/posts/how-to-commit-encrypted-files-to-git-with-mozilla-sops/</link><pubDate>Sun, 22 Aug 2021 10:11:09 +0000</pubDate><guid>https://thenets.org/posts/how-to-commit-encrypted-files-to-git-with-mozilla-sops/</guid><description>&lt;p&gt;It&amp;rsquo;s a common scenario where it&amp;rsquo;s needed to share some keys/secrets with other members of the project team and it&amp;rsquo;s also common that those keys are closely attached to some source code. SOPS allows you to do that securely using Git or other VCS.&lt;/p&gt;
&lt;p&gt;A Git repository would be a perfect solution, but Git works in plain text, like any other VCS (Version Control Service) for source code, even when the communication channels and storage system are encrypted. That means, if someone has access to the source code, it&amp;rsquo;ll also have access to all keys inside of the code.&lt;/p&gt;</description></item><item><title>About me and my career so far...</title><link>https://thenets.org/posts/about-me-and-my-career-so-far/</link><pubDate>Sun, 08 Nov 2020 19:26:53 +0000</pubDate><guid>https://thenets.org/posts/about-me-and-my-career-so-far/</guid><description>&lt;p&gt;I am a Software Quality Engineer at Red Hat, on the Ansible Automation Platform. The product I&amp;rsquo;m working on empowers multiple industries, like financial, oil, logistics, and even autonomous vehicles.&lt;/p&gt;
&lt;p&gt;I previously worked on projects for multinational companies, fintech, and banks. But everything began with an old and offline computer.&lt;/p&gt;
&lt;h2 id="my-childhood-2005-2008"&gt;My childhood (2005-2008)&lt;/h2&gt;
&lt;p&gt;I was born in 1993 in São Paulo state in Brazil, five years before Google exists. I was a child that enjoyed biking with my few friends, playing video games, breaking my computer, and setting fire to papers and wood. My sister gave me my first computer in 2005, an Acer Aspire (Intel MMX, 64 MB RAM, Windows 98), an old machine for the time being.&lt;br&gt;
I had a friend called Paulinho and we always broke things trying to improve them. One of those &amp;ldquo;improvements&amp;rdquo; was installing Linux Kurumin, a Brazillian Linux distribution based on Debian, and using KDE, as the desktop environment. We had no idea of what we were doing, with no sound, no internet, and no idea of how to install the drivers, soon we rollback to Windows 98 with Chinese drivers for the dial-up internet cards.&lt;br&gt;
Breaking and fixing my computer many times per month was my first experience with the area that would become my career in the future.&lt;br&gt;
Oh, I loved my Super Nintendo.&lt;/p&gt;</description></item><item><title>Create a Linux Server for VM and manage through the web with KVM + Kimchi + Wok</title><link>https://thenets.org/posts/create-a-linux-server-for-vm-and-manage-through-web-with-kvm-kimchi-wok/</link><pubDate>Thu, 17 May 2018 21:20:04 +0000</pubDate><guid>https://thenets.org/posts/create-a-linux-server-for-vm-and-manage-through-web-with-kvm-kimchi-wok/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Kimchi is an HTML5 based management tool for KVM. It is designed to make it as easy as possible to get started with KVM and create your first guest. - &lt;a href="https://github.com/kimchi-project/kimchi"&gt;Kimchi project&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;In this tutorial, I&amp;rsquo;ll show you how to create a Linux Server to manage VMs (Virtual Machines) through the web.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;About the girl in the cover image, she is using a red hat&amp;hellip; Red Hat&amp;hellip; RedHat&amp;hellip; Do you got it?&lt;/em&gt;&lt;/p&gt;</description></item></channel></rss>