Philippe Pepiot

DNS expert

Recent Posts

    May 5, 2020

    Manage debian VMs on LVM with cloud-init

    My daily work include managing Debian virtual machines on bare-metal servers. I only use stable CLI tools available in Debian: obviously qemu/kvm lvm volumes, thinly provisioned. libvirt provide CLI utilities to run multiple VMs. hugepages a virtual network bridge and a dhcp server, either dnsmasq or isc-dhcp-server, with static leases The installation of a new VM should be fully automated, i.e. not using the Debian installer. I used to have my own scripts to create a new VM disk on LVM volume, it was based on grml-debootstrap and some xml templates. Read More…
    June 17, 2019

    Single disk to raid1 with LVM on Debian stretch

    Recently, I remembered that I have a second disk on my server and missed to use it when installing the system… So I decided to migrate to raid 1 on a single LVM volume group. The best guide I found was, like often, on the ArchLinux wiki. Here’s my guide for Debian stretch. First create a partition on the second disk using fdisk and make it bootable: % fdisk /dev/sdb Welcome to fdisk (util-linux 2. Read More…
    May 13, 2019

    Kubernetes the self-hosted single node way

    For more than ten years, I have a self-hosted server providing common services including mail, dns and http. One of the first architecture of the server was amazing because it was a FreeBSD server with jails on top of zfs. It was the same idea than cgroups, docker and overlayfs before they even exists ! This setup was very fun to maintain, but I had less time to do it, so in 2012 I switched the server to Debian GNU/Linux first with LXC and then to qemu/kvm. Read More…
    August 20, 2018

    A Makefile for your dockerfiles

    I have a git repository containing multiples Dockerfile for images I use in my Kubernetes cluster and I wanted to have a simple way to build, rebuild, run, test and push my images without needing to type weird docker invocations. Also my requirements for the build system where: Able to handle dependencies: if image B depends on image A, build A first. Able to parallelize build when possible: two independent images can be built concurrently Able to rebuild image with --no-cache when packages updates are available. Read More…
    August 18, 2015

    Infrastructure testing with Testinfra

    Nowadays infrastructure tools like Puppet, Chef, Salt and Ansible are widely used. Part of sysadmin work consist to code with these tools. I use the word “code” because it is more than just configuring a tool. Before being a sysadmin, I am a true developer, I code in python and I love to work in Test driven development. When I work on infrastructure code, it is not easy to test, and when there are no tests the development becomes longer, there are regressions and anger. Read More…