Ansible. Obsługa usług w Linuksie.

Odnośnie linuksa można zaryzykować stwierdzenie, że usługi są kwintesencją tegoż systemu. Jak można się spodziewać i nasze Ansible daje możliwość łatwego zarządzania usługami pod systemem operacyjnym.
Wspomnę, że tu skupiamy się na obsłudze usług pod systemem Linux i wykorzystujemy moduł Service. Natomiast do systemu Windows służy moduł win_service i opowiem o nim w innym artykule.
Wcześniej zainstalowaliśmy sobie popularny serwer www – nginx. Teraz bardzo chcemy uruchomić ten serwis a także ustawić go tak, aby uruchamiał się razem systemem.
Zacznij od stworzenia nowego playboya w odpowiednim katalogu. Otwórz ulubiony edytor i wpisz w nim poniższy kod:

---
- name: obsługa usługi 
  hosts: web01
  become: true

- tasks
   - name: uruchomienie serwisu www nginx
     service: name=nginx stare=started
   
   - name: włączenie usługi razem z systemem
     service: name=nginx enabled=yes 

Zapisz kod w pliku yaml pod dowolną, acz czytelną nazwą. Na przykład nginx_start_service.yml

Przeanalizujemy, co mamy w tym przepisie.
W 1. części opisaliśmy playbook (name). Dalej wskazaliśmy docelowy host (hosts) i zadeklarowaliśmy,  że do wykonania będą użyte podwyższone uprawnienia (become).

W 2. części rozpoczęliśmy od deklaracji zadań (tasks), opisaliśmy też pierwsze zdanie, poleceniem service wskazaliśmy też, że skorzystamy z modułu do obsługi usług w Linuksie. Określiliśmy jaki serwis chcemy (name) i jaki jego stan (started) ma być po wykonaniu playbooka.

W 3. części również określamy nazwę zdania i za pomocą moduły service wskazaliśmy nazwę usługi którą ma być włączona (enabled) razem z systemem.

Nazwy podaje w języku polskim, jednak w prawdziwym świecie używaj zawsze anglojęzycznych nazw. 
Wykonaj ten przepis poleceniem
ansible-playbook nginx_service_start.yml

Warto wspomnieć, że w playbooku anisbla określamy stan jaki chcemy by miała dana usługa, na przykład uruchomiona (started), więc gdy wykonany raz jeszcze ten sam playbook (a aktualnie usługa jest uruchomiona i włączona) to ansible nie będzie próbował.