Community Blog

ThinkstockPhotos-468005219.jpg

Zero Touch Provisioning of Infoblox Grid on OpenStack using Ansible

 

Introduction

Over last couple of years, Ansible has become one of the most sought out configuration management tool. Ansible uses a simple syntax written in YAML called playbooks. YAML is a human-readable data serialization language. It is also extraordinarily simple. As such, no special coding skills are required and even people in your IT organization otherwise unfamiliar with Ansible can likely read a playbook and have a basic understand what is happening. Ansible always executes tasks in order and is simple to install, too.

Deploying Infoblox Grid on OpenStack though Ansible

Deploying Infoblox Grid on OpenStack using horizon dashboard or OpenStack CLI could be a time-consuming task. After initial deployment of NIOS user must go through multiple options such as license and network initialization to set the grid. Thereafter, a user must start services like DNS, DHCP etc in NIOS to leverage them.

Deploying Infoblox Grid though Ansible automates these steps. It addresses, for example the following use cases:

  • Deploying Grid Master
    • Deployment
    • License and network initialization using cloud-init
  • Deploying a Member
    • Deployment
    • License and network initialization using cloud-init
  • Adding the Member to the Grid.
  • Starting DNS and DHCP services

So basically, using ansible users can deploy Infoblox Grid with zero-day configuration. The entire work flow can be divided into 4 major steps as illustrated in the following diagram.

Image-1-workflow.png

Ansible-Playbooks used to deploy Infoblox Grid leverages various OpenStack modules. For example, in the following snippet we can see that os_server module is used to deploy NIOS on OpenStack. Further we use os_floating_ip to attach a floating ip to the NIOS.

Image-2-OS_Server.png

For pre-provisioning NIOS in the Grid-Master and for adding pre-provisioned NIOS to the Grid-Master we use uri module

Image-3-uri.png

Image-4-uri-2.png

Starting Services

To start services in Infoblox Grid (DNS and DHCP), we use Infoblox Web Application Programming Interface or most commonly known as WAPIs. Infoblox WAPIs are called using curl command in shell script.

Image-5-shell_script.png

Ansible Playbooks

All these playbooks are available on git and can be downloaded from here: https://github.com/infobloxopen/nios-ztp-anisble.git

 

Demo Video

You can watch this video for a quick demo of the zero touch provisioning of the Infoblox Grid using Ansible

 

For deploying it in your environment, you can refer to this document.

Conclusion

Ansible is amongst the most popular tools for application service automation and deployment. Using Ansible to deploy Infoblox Grid, users can automate mundane task of setting up the Grid.

 

Showing results for 
Search instead for 
Do you mean