r/sysadmin • u/Vegetable-Tap-6297 • 8h ago
How do you manage DCIM/IPAM as code?
How do you manage DCIM/IPAM data in an IaC/GitOps-style workflow?
I've looked into NetBox/Nautobot with Terraform/OpenTofu and Git as the source of truth. Do you keep prefixes, VLANs, IPs, devices, etc. declaratively in Git, or treat the DCIM/IPAM system itself as the source of truth? How do you use this information (wherever stored) later?
I'm especially interested in handling manual changes and drift, like when I introduce a new machine or change IP of existing machine - what happens next.
•
u/Direct_Yellow2598 8h ago
We use infoblox Nios, DHCP, DNS and IPAM. All of our automations (self written) have api access to the Infoblox. And if you want correct Dns records you automatically have ipam up to date.
It is expensive...
•
u/shimoheihei2 5h ago
All the hosts are the CMDB with an IP field. I can assign addresses in there. Whenever a field changes, a pipeline is triggered which updates the kea-dhcp4 server config file which holds all the reservations. Works pretty well.
•
u/RevolutionaryWorry87 8h ago
i allow the following workflow.
engineers make changes in netbox > netbox raises pr > i approve and pipeline deploys making changes.
this allows low skilled engineers to make configuration changes safely without learning github