README

Requirements:

  • DHCP config set up to handle the Opengear vendor class identifier
  • WEB server being able to access the config/www/xml/ dir ( virtual-host with correct document_root + read access for www)

How-to:

1- Copy sample.yaml file from templates/ to LOCAL/ ( let's say test-rsc1-og55.yaml )

2- Edit that LOCAL/test-rsc1-og55.yaml file with your info ) ip/mask/gw/dns/whatever

3- Exec the first playbook with that file as extra vars ansible-playbook playbooks/01_opengear_addDevice.yml --extra-vars "@LOCAL/test-rsc1-og55.yaml"

4- You can check: config/hosts_var/your_device should be there, and you also appear in your opengear.inv

5- Create the XML kickstart config file ansible-playbook playbooks/02_opengear_kickstart.yml -l test-nico1-og55

6- You can check: an XML file config/www/xml/ACM550x_00000000001.xml has been created

7- Plug your OG somewhere, modulo your DHCP and WEB server, it should dl the xml file then reboot

8- Once OG has reloaded, you can push the post-install ansible-playbook playbooks/03_opengear_post-install.yml -l test-nico1-og55

Known stuff:

  • Step7: I usually update the OG to the latest release from netflash to the config/www/opengear-fw/*.latest FW.... For that I use a srv in my lab with an interface on the 192.168.1.0/24 range ( default range of the alias on wan interface ) my server act as the dhcp + web server in that case, so no preconf need on the OG For OG abroad, I cannot do that .. so I upgrade the OG after putting the deployment. Got trouble with very old FW, otherwise you are safe.

  • Step8: I use ssh password for the bootstrap, Ansible needs in that case that the ssh fingerprint must be known prior the first conn So I just ssh $device from the ansible just to learn that fingerprint.

Cheers ! Lodpp