This is a Third-Party IPAM Provider for VMware Aria Automation (formerly VMware Realize Automation) that integrates with the Netbox DCIM/IPAM platform.
This first iteration is pretty rudimentary, but it is reliable. Feel free to add or request features. See the README_sdk.md for original SDK docs, troubleshooting, and developer info.
Special thanks to @jbowdre's blog about his phpIPAM integration: https://runtimeterror.dev/integrating-phpipam-with-vrealize-automation-8. He helped fill in some gaps where other docs could not.
- Support for
prefixesorip-rangesNetBox objects. - Provision IP Addresses via Cloud Assembly templates.
- Configure IP Ranges for imported cloud account networks.
- (Optional) Prevent IP Conflicts with addresses not tracked in NetBox.
- Docker
- Apache Maven
- Java 8
- Python 3
- NetBox 3.6.X+ Installation
- VMware Aria Automation 8.14+
Per VMware (README_vmw.md), the provider can be packaged via:
sudo mvn package -PcollectDependenciesNote: If you're on linux you should add the -Duser.id=${UID} parameter.
Building the package for the first time should include the -PcollectDependencies parameter, but subsequent runs should only require this flag if new Python packages were added.
- Navigate to
Assembler>Infrastructure>Connections>Integrations - Select
+ Add Integration - Select
IPAM - Select
Manage IPAM Providers>Import Provider Package - Upload the
netbox.zipfile - Select
Complete - Click in
Search for IPAM Providersand selectNetBox - Enter the following details:
NetBox Username- vRA requires the
privateKeyIdfield to be populated - The IPAM provider is not actually using this for anything
- vRA requires the
NetBox API Key- Service account is recommended.
NetBox URL- ex.
https://netbox.domain.com
- ex.
Netbox Tag- NetBox tag to track vRA managed objects.
NetBox Object- Select either
prefixesorip-ranges - These correspond to the
/api/ipam/API endpoints.
- Select either
NetBox Site- Enter site
nameorID.
- Enter site
Ignore SSL- Sets
verifyPythonrequestsparameter - Disables the
urllib3.exceptions.InsecureRequestWarning- (but seriously, it's 2024, get a cert)
- Sets
- For cloud assembly builds to work, vRA requires that you have a lookup domain condfigured in the IP Range.
- This can done via a custom field in NetBox and editing the
network_rangedictionary in/src/main/python/get_ip_ranges/source.py - An easier solution for now is add a non-required field to the
/src/main/resources/endpoint-schema.jsonfile and editing theget_ip_rangesmodule. - Doc coming soon on this.
- This can done via a custom field in NetBox and editing the
- Docs
- Implement
- Reduce Integration Validation requirements
- Dynamic tagging/site inputs