Ansible Howto
From Cactus Howto
ansible first steps
documentation
installation
on ubuntu >= 18.04
sudo apt install ansible
on ubuntu < 18.04 and debian (up to 9/stretch)
These systems ship with ansible <2.4.
sudo echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu trusty main" >> /etc/apt/sources.list
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
sudo apt update
sudo apt upgrade
sudo apt install ansible
</pre
== initial config ==
Edit /etc/ansible/hosts
= ansible advanced topics =
== use cases debian/ubuntu sys management using apt ==
This only works for ansible >=2.4.
tim@spike-vm:~/ansi$ ansible-playbook -l puppet apt-autoremove.yml -K
<pre>
tim@spike-vm:~/ansi$ cat apt-autoremove.yml
---
- hosts: all
become: yes
tasks:
- name: Autoremove unused packages
apt:
autoremove: yes
when: >
ansible_distribution == 'Debian'
or
ansible_distribution == 'Ubuntu'
use case install apt package
tim@spike-vm:~/ansi$ ansible-playbook -l puppet apt-install.yml -K -e "package=apache2" SUDO password: PLAY [all] ********************************************************************* TASK [setup] ******************************************************************* ok: [puppet] TASK [install package "apache2"] *********************************************** ok: [puppet] PLAY RECAP ********************************************************************* puppet : ok=2 changed=0 unreachable=0 failed=0
tim@spike-vm:~/ansi$ cat apt-install.yml
---
- hosts: all
become: yes
tasks:
- name: install package "Template:Package"
apt:
name: apache2
when: >
ansible_distribution == 'Debian'
or
ansible_distribution == 'Ubuntu'