Tartalomjegyzék
Ansible használata gépeken
- Szerző: Sallai András
- Copyright © Sallai András, 2019
- Web: https://szit.hu
Példa hálózat
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 |
Azonosítás
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 konfigurálása
Az ansible központi konfigurációs állományai a szokásos /etc könyvtárban találhatók:
- /etc/ansible/hosts
- /etc/ansible/ansible.cfg
Az ansible.cfg a felhasználó saját könyvtárában is használható:
- ~/.ansible.cfg
Ha kiadom az ansible vagy ansible-playbook parancsot, az a következő helyeken keresi a konfigurációs fájlokat.
- ANSIBLE_CONFIG (egy környezeti változó)
- ansible.cfg (az aktuális könyvtárban)
- .ansible.cfg (a felhasználó home könyvtárában)
- /etc/ansible/ansible.cfg
Konfigurálás
nano /etc/ansible/ansible.cfg
A defaults szekcióban egyetlen sorra van szükség:
- ansible.cfg
[defaults] inventory = hosts
Gépek felvétele a hosts fájlba
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:
- /etc/ansible/hosts
gep1 gep2 gep3
A gépek csoportokba is szervezhetők.
- /etc/ansible/hosts
[webszerverek] gep1 gep2 gep3 [dbszerverek] gep4 gep5 gep6
- hosts
192.168.10.2 192.168.10.3 192.168.10.4
Gépek tulajdonságai
- hosts
[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:
- hosts
[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