A példa kedvéért, adott egy 4 gépből álló hálózat. Egyik közülük a kontrollgép, ahol meghatározzuk majd milyen állapotba kerüljön a másik 3 célgép. A célgépeket lehetnek magyarosan gépek vagy csomópontok, angolosan hostok vagy node-ok.
gép1 | 192.168.10.2 |
gép2 | 192.168.10.3 |
gép3 | 192.168.10.4 |
kontrollgép | 192.168.10.11 |
A kontrollgépen hozzunk létre egy SSH kulcspárt.
ssh-keygen
Másoljuk fel a szerverekre:
ssh-copy-id janos@gep1 ssh-copy-id janos@gep2 ssh-copy-id janos@gep3
Az ansible központi konfigurációs állományai a szokásos /etc könyvtárban találhatók:
Az ansible.cfg a felhasználó saját könyvtárában is használható:
Ha kiadom az ansible vagy ansible-playbook parancsot, az a következő helyeken keresi a konfigurációs fájlokat.
nano /etc/ansible/ansible.cfg
A defaults szekcióban egyetlen sorra van szükség:
[defaults] inventory = hosts
Vegyük fel a célgépeket a hosts fájlba:
nano /etc/ansible/hosts
Felvesszük a gépek nevét vagy ip címét:
gep1 gep2 gep3
A gépek csoportokba is szervezhetők.
[webszerverek] gep1 gep2 gep3 [dbszerverek] gep4 gep5 gep6
192.168.10.2 192.168.10.3 192.168.10.4
[servers] server1 ansible_host=192.168.10.2 ansible_user=janos ansible_ssh_pass=titok ansible_ssh_port=22 server2 ansible_host=192.168.10.3 ansible_user=janos ansible_ssh_pass=titok ansible_ssh_port=22
Ha egy csoport gépnek azonos tulajdonsága van:
[servers] 192.168.10.2 192.168.10.3 192.168.10.4 [servers:vars] ansible_user=janos ansible_ssh_pass=titok ansible_ssh_port=22 ansible_python_interpreter=/bin/python3