Erinevus lehekülje "Ansible" redaktsioonide vahel
68. rida: | 68. rida: | ||
# ansible-playbook test.yml | # ansible-playbook test.yml | ||
− | Ansible sisaldab lisaks suurt hulka mooduleid praktiliselt kõige tegemiseks. | + | |
+ | Keerukam lahendus, mis juba lisaks paigaldab vaikimisi nginx konfi ja tõmbab alla ka gitist veebiserveri sisu | ||
+ | |||
+ | --- | ||
+ | - hosts: debian | ||
+ | sudo: yes | ||
+ | |||
+ | tasks: | ||
+ | |||
+ | - name: paigaldame nginx | ||
+ | apt: name=nginx state=installed update_cache=yes | ||
+ | |||
+ | - name: loome nginxile konfiguratsiooni | ||
+ | template: src=templates/nginx.conf.j2 dest=/etc/nginx/nginx.conf | ||
+ | notify: restart nginx | ||
+ | |||
+ | - name: paigaldame veebiserverisse sisu | ||
+ | git: repo=https://github.com/jweissig/episode-47.git | ||
+ | dest=/usr/share/nginx/html/ | ||
+ | version=release-0.01 | ||
+ | |||
+ | - name: start | ||
+ | service: name=nginx state=started | ||
+ | |||
+ | handlers: | ||
+ | |||
+ | - name: restart nginx | ||
+ | service: name=nginx state=restarted | ||
+ | |||
+ | Ansible sisaldab lisaks suurt hulka mooduleid praktiliselt kõige tegemiseks. Moodulite nimekirja näeb | ||
+ | |||
+ | # ansible-doc -l | ||
https://github.com/randohinn/KnowHow/blob/master/docs/Vorgurakendused/ansible.rst | https://github.com/randohinn/KnowHow/blob/master/docs/Vorgurakendused/ansible.rst | ||
75. rida: | 106. rida: | ||
http://docs.ansible.com/ansible/latest/proxmox_module.html | http://docs.ansible.com/ansible/latest/proxmox_module.html | ||
+ | |||
+ | http://docs.ansible.com/ansible/latest/mysql_db_module.html |
Redaktsioon: 20. august 2017, kell 12:52
Install
# apt-get install software-properties-common ansible
Kõisse masinaisse tuleb paigaldada SSH võti
# ssh-keygen -t rsa
Kliendid vaja defineerida
Kliendi defineerimine toimub failis /etc/ansible/hosts näiteks lisame ühe kliendi gruppi test
[test] 10.20.0.20
Neid gruppe võib teha terve hulga, nt kõik masinad ära jaotada opsüsteemide järgi
[debian] vm1 vm2 vm3 [fedora] netflix [centos] confluence vm-server1 gitlab [ubuntu] trusty-mirror media-centre nas
Käsurealt kasutamine
Kõikide nodede korrasoleku kontroll
# ansible all -m ping
Küsime nodedelt hostname käsku
# ansible -m shell -a "hostname" all
Samamoodi võib käsurealt otse teha ka jõhkramaid toiminguid, nt midagi installida
# ansible all -s -m shell -a 'apt-get install nginx'
Playbook
Playbookid on .yml failid, kus defineeritakse Ansible tegevused ja tegevuste järjekord. Näiteks lihtne playbook mis paigaldab ngxinxi apt moodulit kasutades ning paneb selle tööle.
--- - hosts: debian tasks: - name: Installs nginx web server apt: pkg=nginx state=installed update_cache=true notify: - start nginx handlers: - name: start nginx service: name=nginx state=started
Nende käivitamiseks
# ansible-playbook test.yml
Keerukam lahendus, mis juba lisaks paigaldab vaikimisi nginx konfi ja tõmbab alla ka gitist veebiserveri sisu
--- - hosts: debian sudo: yes tasks: - name: paigaldame nginx apt: name=nginx state=installed update_cache=yes - name: loome nginxile konfiguratsiooni template: src=templates/nginx.conf.j2 dest=/etc/nginx/nginx.conf notify: restart nginx - name: paigaldame veebiserverisse sisu git: repo=https://github.com/jweissig/episode-47.git dest=/usr/share/nginx/html/ version=release-0.01 - name: start service: name=nginx state=started handlers: - name: restart nginx service: name=nginx state=restarted
Ansible sisaldab lisaks suurt hulka mooduleid praktiliselt kõige tegemiseks. Moodulite nimekirja näeb
# ansible-doc -l
https://github.com/randohinn/KnowHow/blob/master/docs/Vorgurakendused/ansible.rst
https://github.com/asjalik/ansible