We recently starting using Ansible to help perform software upgrades on the large number of Juniper EX-4300 and EX-2300 switches in our environment. Like the vast majority of organizations our downtime windows are extremely short and unfortunately the element of human error is usually greater than the standard mean between 12AM and 6AM. Thankfully Ansible solves most of these issues and is very reliable. Out of the box, Ansible has a configuration default of 5 forks and as such it will only upgrade 5 switches at a time. If you are going to be working with any sizable number of devices you’ll need to update the configuration value in the ansible.cfg file.
[defaults] inventory = inventory host_key_checking = False log_path = ~/ansible/ansible.log forks = 30 timeout = 60
You’ll need to make sure that whatever server or virtual machine is running your Ansible instance can support the number of forks you configure.