Building Perl DBD::Oracle RPM packages for Enterprise Linux

Introduction

One of the many “hats” I wear in my job is an Oracle database administrator. In this role I write a number of Perl scripts that interact with the Oracle DB, and are used for purposes such as updating data and automating maintenance tasks. Over the years I’ve built up a fairly large library of scripts that I can clone off of when I need something new. With Perl and Oracle, one uses the DBI module for Oracle, DBD::Oracle. I’ve mostly used this on Red Hat systems—Enterprise Linux or EL, as I will refer to it here—distributed with an RPM package (instead of being installed using CPAN). Perhaps because it requires the installation of closed-source Oracle software, there aren’t pre-built RPMs of DBD::Oracle; I’ve always had to build these myself, using an RPM spec file I inherited from a colleague. However, I’ve wanted to revisit this and find a spec file from a source outside of work, one that I could use for experimentation in personal projects, as well as providing an improved version for my work. I was able to find a spec file from a public source, make some improvements, and build the packages for Enterprise Linux versions 7 through 10. This post documents those steps.

Continue reading

Running Proxmox VE inside KVM (nested virtualization)

Introduction

This will be a shorter post and somewhat of an extension of my last post on building a lab environment in Proxmox VE. Here I’ll explore running Proxmox VE inside of KVM virtual machines using nested virtualization, instead of on bare metal systems. This is useful if you want to experiment with Proxmox VE, but don’t have any extra PCs laying around to run it on. The performance is not as good when compared to running it on physical hardware, but at the same time it has the advantage of being to spin a cluster up and down without having to reinstall the OS on an actual computer. In this post, I will spin up the same Terraform lab environment in Proxmox VE, but with nested virtualization instead of running it on physical hardware. A “bonus” section will involve swapping out Bind and isc-dhcp-server for Dnsmasq in the lab environment.

Continue reading

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