Role-based Ansible configuration
You need to include submodules to get monitoring scripts as well:
user@sown-auth2:~$ git clone --recurse-submodules [email protected]:sown/ansible.git
Cloning into 'ansible'...
...
You'll need a netbox token stored in the NETBOX_TOKEN environment variable.
For example, echo "export NETBOX_TOKEN=abcd" >> ~/.bashrc; chmod 600 ~/.bashrc
You can create one through the Netbox admin interface, or steal one from /home/tim/.bashrc if you have root on auth2.
This will run everything, but won't make changes, and print a full diffs of changes that would be made.
user@sown-auth2:~/ansible$ sudo -E ansible-playbook -i hosts.yml playbook.yml --diff --check
Remove --check to actually make changes.
user@sown-auth2:~/ansible$ sudo -E ansible-playbook -i hosts.yml playbook.yml --diff --check --limit VMS
You can run this (without --check) against a new host to set it up with standard SOWN configuration.
It can take a while to run everything, so you can selectively run parts of our ansible configuration via tags. See the documentation below for tags you can use.
user@sown-auth2:~/ansible$ sudo -E ansible-playbook -i hosts.yml playbook.yml --diff --check --tags pxe
New roles should be developed on branches, and changes rolled out to all servers before merging to master. Therefore, master should be kept in a state where the main playbook can be run, without making changes to servers.
common
sown-common
utilitiesmotdmonitored
nrpecron-mail-redirectunattended-upgradespxe
dnsmasqipxebacked-upContent type
Image
Digest
Size
101.3 MB
Last updated
about 6 years ago
docker pull sown/ansible-lint