Building a lab environment in Proxmox VE with Ansible and Terraform

Introduction

Recently I started experimenting with Proxmox Virtual Environment, while also evaluating it as a replacement for VMWare ESXi. This post discusses some of my experiences with configuring a Proxmox VE “lab environment” of virtual machines on a separate network segment, using Ansible and Terraform. For me at least, trying this stuff out and blogging about it helps motivate me to learn the stuff and document what I have learned. Like a lot of my posts, this one will delve into different topics and is not meant as a how-to guide (there are better examples of this out there); it is mainly to document what I’ve been working on. I do hope, however, that this provides ideas for someone else and perhaps they can improve on what I’ve done here.

Continue reading

Configuring Ubuntu and Debian as a router

Recently, for my home network, I transitioned from using a standard home router running DD-WRT to a setup with a separate managed switch, wireless access point, and a combination router/server running Ubuntu 24.04. The “router” is a basic x86-64 mini-PC with two network interfaces, purchased for about $100. The internal interface hosts three VLANs (internal, lab, and guest) and provides DHCP, DNS, and LDAP services. I prefer this setup to something like OPNsense, because I can manage everything with the command line and Ansible. If the cheap PC dies an early death or I want to switch to something newer, I can simply install Ubuntu on the replacement system, configure the NICs, and run the Ansible project to configure everything else. It also gives me a low-power-usage PC that I can run other services on in containers or even virtual machines. In this blog post I run through the steps for configuring a router like this, with both Ubuntu and Debian.

Continue reading