Interview with Samer Bahri
Welcome back, stranger! This is part two of this interview series where we talk to participants of the #100DaysOfHomelab challenge, explore the projects they worked on, their motivation for participating in the challenge, and what they gained from the experience.
In Part I of the series, we talked to Aleksandra Todorovska about her project. Aleksandra shared with us how she created an affordable lab using the VMware ESXi for ARMthe and Raspberry Pis.
For Part II, we caught up with Samer Bahri, and he walked us through how he built his personal hybrid cloud!
“I created my personal hybrid cloud in 100 days”
During the #100DaysOfHomelab challenge, there were countless interesting projects shared, and it’s a shame that we cannot highlight every single one of them. But the truth is, some stars shine brighter than others! Samer Bahri is one such star. Samer created an entire platform using Infrastructure as Code (IaC). At Traefik Labs, we see production environments every day that aren’t half as elaborate as Samer’s homelab, so we decided to reach out to him and learn more about his project.
“For my main project, I worked on setting up a Kubernetes cluster, a KVM cluster, and NAS. The Kubernetes cluster was set up in the public cloud and handled all the services that can be containerized, while the KVM cluster, set up on-premise, handled the workload that required virtual machines. The small NAS — also set up on-premise — was used for storage and data access, using an open media vault.
There were also smaller projects that I had to do in order to progress with the main one, like building my own custom VPN application with WireGuard and Ansible — a vagrant virtual machine that accesses all my resources — setting up a GitHub repository for my Ansible roles and playbooks, and creating a CI/CD pipeline to test my IaC files in GitHub Actions.”
Samer is my name, automation is my game!
“I think I am privileged enough to be an intern working in an infrastructure team that values automation. And I adopted those values and principles almost immediately. I watched a lot of InfoQ and CNCF talks on YouTube, and I've been essentially learning from success stories and failure lessons. Having a solid grasp on IaC, automation, and fault tolerance seemed to be the focal point of these talks.
While working on my #100DaysOfHomelab project. I really enjoyed automating everything I could. I faced a lot of chicken-and-egg situations — automating different parts that depend on each other. They were a fun puzzle, and they were different each time I encountered them. I also liked trying new services and pieces of software.
But I did encounter some bumps and obstacles. There are tasks that I couldn't automate — for example, bare metal and networking — because I do not have knowledge in these fields, and as a result, there were tasks that I couldn’t figure out how to do. There were also challenges that came with having any piece of hardware in a homelab — dealing with the noise, heat, storage, size, dust, cable management, etc. — that are hard to handle even for a small lab. And while I paid around the amount that I was expecting to pay in the span of three months, it was still an expensive journey due to the global economic situation.”
…community accountability and knowledge-sharing…
Samer also talked to us about the reason he decided to join the #100DaysOfHomelab challenge and everything he gained from the experience. “I am very passionate about open source projects and self-hosting services. I had a single VPS for a year now that I used as a "homelab" (even though technically it's not at home). I had some savings lying around, and I was planning on doing a lot of homelab work — privately and silently! — during this summer.
But then the #100DaysOfHomelab challenge was announced, and participating seemed to be the natural decision to make. This challenge gave me community accountability and knowledge-sharing opportunities. It was also amazing how participants pushed each other into the 100-day milestone. I was hoping to provide a private 3-node vanilla Kubernetes cluster, fully automated with GitOps and infrastructure as code practices, with some services on top of it going into the challenge. At least that's what I initially planned. I took different decisions midway through the challenge and ended up with more than just that!
I learned about almost all forms of automation and IaC (Ansible, Jenkins, Terraform, GitHub Actions, Apache Airflow, n8n, etc.) and gained hands-on experience with all of them. I learned a lot recently about Kubernetes, virtual machines, observability, cloud technologies (Vultr, BackBlaze, and GCP were my cloud of choice), and much, much more. I also learned about commitment to projects, time management, budgeting, looking for good deals and good equipment, and evaluating which gear I need for my IT-related tasks in general.
Not only did I learn and acquire new skills, but I also sharpened my pre-existing skills and put them to practice — for example, Linux administration, cybersecurity, scripting, containers, and databases.”
Who is Samer Bahri?
Samer is a 24-year-old Tunisian who lives in Hungary. He is a software engineering student at the Budapest University of Technology and Economics, and a Software Engineering Intern at Continental AI Development Center in Budapest. He is currently working on his Bachelor thesis in the DevOps, MLOps, and CI/CD fields. He has a lot of hobbies, and almost all of them are related to technology.
One more to go!
Samer’s endgame for the #100DaysOfHomelab challenge was to provide a private 3-node vanilla Kubernetes cluster, applying GitOps principles and using IaC. But the passion of the community and his dedication to automation pushed Samer’s project even further.
Are you hyped for one more? In the third and final part of this interview series, we talk to Jerod Moore and how tinkering with his homelab turned into building a mini datacenter! Read the full interview here.