This is a provider plug-in for Terraform to manage Infoblox NIOS (Network Identity Operating System) resources using Terraform infrastructure as code solutions. The plug-in enables lifecycle management of Infoblox NIOS DDI resources.
The latest version of Infoblox provider is v2.8.0
The provider plug-in has NIOS DDI resources represented as Terraform resources and data sources. The consolidated list of supported resources and data sources is as follows:
infoblox_network_view
)infoblox_ipv4_network_container
, infoblox_ipv6_network_container
)infoblox_ipv4_network
, infoblox_ipv6_network
)infoblox_a_record
)infoblox_aaaa_record
)infoblox_dns_view
)infoblox_ptr_record
)infoblox_cname_record
)infoblox_mx_record
)infoblox_txt_record
)infoblox_srv_record
)infoblox_zone_auth
)infoblox_ip_allocation
)infoblox_ip_association
)infoblox_zone_forward
)infoblox_zone_delegated
)All of the above resources are supported with comment
and ext_attrs
fields.
DNS records and the infoblox_ip_allocation
resources are supported with ttl
field.
A resource can manage its drift state by using the extensible attribute Terraform Internal ID
when its Reference ID is changed by any manual intervention.
infoblox_network_view
)infoblox_ipv4_network
)infoblox_ipv4_network_container
)infoblox_a_record
)infoblox_aaaa_record
)infoblox_dns_view
)infoblox_cname_record
)infoblox_ptr_record
)infoblox_mx_record
)infoblox_txt_record
)infoblox_srv_record
)infoblox_zone_auth
)infoblox_zone_forward
)infoblox_ipv6_network
)infoblox_ipv6_network_container
)infoblox_host_record
)infoblox_zone_delegated
)All of the above data sources are supported with comment
and ext_attr
fields.
Data source of DNS records are supported with ttl
and zone
fields.
The comprehensive documentation of the plug-in is available at Terraform registry and on Infoblox internet site as well.
Whether you intend to use the published plug-in or the customized version that you have built by yourself, you must complete the following prerequisites:
Tenant ID
: String Type CMP Type
: String Type Cloud API Owned
: List Type (Values: True, False)Terraform Internal ID
in NIOS or use super user
to execute the below cmd. It will create the read only extensible attribute Terraform Internal ID
.
for more details refer to the Infoblox NIOS Documentation.
curl -k -u <SUPERUSER>:<PASSWORD> -H "Content-Type: application/json" -X POST https://<NIOS_GRID_IP>/wapi/<WAPI_VERSION>/extensibleattributedef -d '{"name": "Terraform Internal ID", "flags": "CR", "type": "STRING", "comment": "Internal ID for Terraform Resource"}'
The limitations of Infoblox IPAM Plug-In for Terraform are as follows:
infoblox_ip_allocation
and infoblox_ip_association
resources: creation of a host
record with multiple IP addresses of the same type is not supported.
But you can create a host record with a single IPv4 and IPv6 address (of both IP types at the same host record).infoblox_ipv4_network
and
infoblox_ipv6_network
resources display as "IPv4 Reservation" and "IPv6 Fixed Address" respectively.v2.5.0
, the fetch functionality in data sources returns output for only one matching
object even if it finds multiple objects matching the search criteria.import
block for a resource, a new Terraform internal ID is assigned to the resource when
the terraform plan
command is run for the first time. If a subsequent terraform apply
is aborted, the record will
still retain the Terraform Internal ID
though the resource is not managed by Terraform.