Skip to main content

phpIPAM integration for VMware VCF Automation 8.x

·3 mins
VCF Automation VMware vExpert Homelab phpIPAM
You know when you’re looking for something that you’re sure must exist out there on the internet somewhere? Sometimes you can’t find it, sometimes you find something like it, and sometimes you find it but it’s not quite right. Maybe it doesn’t work how you want it to, hasn’t been updated or maintained, perhaps it doesn’t have any documentation (which is all too common). That’s what this brief article is about!

I have been kind of quiet lately, but that doesn’t mean that I haven’t been busy. Quite the opposite in fact! After my summer holiday (vacation) I was working on another project for which I needed to test with machines created with static IP addresses. If you’re at all familiar with VMware VCF Automation (formerly VMware Aria Automation) then you know that you can use its built-in IPAM provider to hand out static IP addresses to provisioned VMs fairly easily. Since I have phpIPAM running in my homelab though, I thought that it’s be nicer to integrate with that.

A bit of searching later and I had found a couple of older implementations that hadn’t been updated for some time. One didn’t seem to install or work properly and documentation was very thin on the ground. Inevitably I got a little sidetracked from my original work and started looking at the IPAM SDK for VCF Automation and the API Guide for phpIPAM. Could I do better and brush up on my Python programming skills at the same time?

The answer was yes, and I made sure to write some slighty more comprehensive documentation too!

Screenshot showing the selection of the phpIPAM provider.
Figure 1: Selecting the phpIPAM provider for use as a new IPM integration in VCF Automation 8.x.

Once I had a basic version working, I wanted to make sure that it was possible to filter networks as well as enable on-demand networking in conjunction with VMware NSX as well. In the end there are a number of customisable options available.

Screenshot showing the customisable integration options.
Figure 2: The integration configuration page showing examples for subnet filtering and on-demand network configuration.

Overall I’m very pleased with the finished solution. I’ve been meaning to write about it for a couple of months now, but then I got sidetracked by what I was originally trying to do again! So now I’m presenting it as an end of year gift to anyone that uses VCF Automation 8.x and would like to use phpIPAM as well. Just head to the repository below to get started.

mpoore/phpipam-vcf-automation

This integration allows VMware VCF Automation 8.x to use phpIPAM for assigning static IP addresses to provisioned virtual machines and on-demand networks.

Python
0
0

Related

Profile function for authenticating to VMware CCI
·2 mins
VCF Automation vExpert VMware Script Kubernetes Homelab vSphere CCI LazyOps
If you thought that using the vSphere plugin for kubectl required some typing, the CCI plugin requires more! Let’s simplify that process…
Coming Soon - My plans for 2026
·3 mins
Personal VMware vExpert VCF Homelab Packer HashiCorp Certification Kubernetes
I’ve done a few retrospectives over the years, but I haven’t often written about my plans for the coming year. It’s time that I changed my approach. Besides, one of my plans is already in the oven and should be baked soon!
Deploying Argo CD as a vSphere Supervisor Service
·6 mins
ArgoCD VMware vExpert Homelab Supervisor VKS Kubernetes
How to deploy Argo CD into a vSphere Supervisor namespace using the Argo CD operator Supervisor Service.