====== ansible configuration management ======
===== Installation =====
View installation instructions
Debian: ''apt-get install ansible''
===== First Steps =====
# ansible --version
ansible 1.6.6
Add some host to ''/etc/ansible/hosts''
ansible all --list-hosts
ansible all -m ping
ansible all -a "/bin/date"
ansible gal -m shell -a 'hostname && cat /etc/network/interfaces | grep
bond'
ansible all -m shell -a "rndc retransfer nizza.domain.net"
ansible all -m copy -a "src=/etc/bind.slave/named.conf.local dest=/etc/bind/named.conf.local"
ansible sat -m copy -a "src=/tmp/leap-seconds.list dest=/etc/leap-seconds.list owner=root group=root mode=0644"
===== Playbooks =====
Update Debian
---
- hosts: all
gather_facts: yes
become: yes
tasks:
- name: Perform a dist-upgrade.
ansible.builtin.apt:
upgrade: dist
update_cache: yes
- name: Check if a reboot is required.
ansible.builtin.stat:
path: /var/run/reboot-required
get_checksum: no
register: reboot_required_file
- name: Reboot the server (if required).
ansible.builtin.reboot:
when: reboot_required_file.stat.exists == true
- name: Remove dependencies that are no longer required.
ansible.builtin.apt:
autoremove: yes
tnx to [[https://www.jeffgeerling.com/blog/2022/ansible-playbook-upgrade-ubuntudebian-servers-and-reboot-if-needed|Jeff Gerling]]