Automating F5 configuration with Ansible

When we have lots of devices such as lots of firewalls, lots of load balancers or lots of switches, it’s really interesting and necessary the process automation. Automation and orchestration are increasingly used in large deployments and cloud infrastructures where there are lots of network devices around the world. For instance, we can automate initial configurations on BIG-IP such as DNS, NTP, etc. We can also automate deployments of HTTP and HTTPS applications or we can even manage Virtual Servers, Pools or Monitors.

Automating with Ansible

Ansible is one of the most known automation and orchestration tool. It’s an open-source software provisioning, configuration management, and application-deployment tool. We can install Ansible on many Unix-like systems such as Ubuntu and Debian. It’s really easy the installation process. It only requires Python. In addition, there are modules to automate lots of devices. For example, there are modules for FortiOS devices, F5 devices, Radware devices, etc.

I’ve recorded a video where I’ve used the playbook from F5 Networks located at their git repository. Firstly, I’ve created the necessary directories and files. Secondly, I’ve set the connection variables and I’ve added a pool, two pool members and a virtual server to the playbook YAML file. Finally, I’ve run the playbook and we can see the Virtual Server, pool and associate pool members on the F5 GUI. You will watch the configuration and execution are easy although it’s important to take into account the indentation and spaces.

Regards my friends! Are you ready to automate processes?