Course Code: ansible00
Duration: 20 hours
Prerequisites:

-

Overview:

-

Course Outline:

Blok I Wprowadzenie


Pierwsze kroki z Ansible: instalacja, konfiguracja środowiska, podstawy tworzenia playbooków
i szablonów. Wspólnie utworzymy najprostszy playbook, który zainstaluje i skonfiguruje serwer WWW
z obsługą wysyłania plików przez WebDAV.


• Instalacja
• Podstawowa konfiguracja
• Wprowadzenie do notacji YAML i szablonów Jinja2
• Case study: nginx — instalacja
• Case study: wysyłanie plików przez WebDAV
• Playbooki: diagnostyka
• Zmienne
• Idempotentność
• Kontrola sterowania

Blok II Playbooki rosną

Nauczymy się, jak rozwijać playbooki tak, żeby zachowały czytelność nawet przy automatyzacji
rozbudowanych zadań i jak stworzyć bibliotekę często używanych rozwiązań.
• Podział playbooków na pliki przez include
• Role

Blok III Środowisko rośnie

Zobaczymy jak użyć Ansible do automatyzacji procesów na wielu serwerach — zarówno w sytuacji,
kiedy te same operacje trzeba po prostu wykonać na określonym zestawie maszyn, jak i wtedy, gdy
różne serwery muszą współpracować ze sobą do osiągnięcia wymaganej konfiguracji.
• Inventory: hosty i grupy
• Współbieżne wykonywanie zadań
• delegate_to: uruchamianie zadań jednego hosta na innym
• Fakty — bliższe spojrzenie
• Współdzielenie danych między hostami

Blok IV Rozszerzanie Ansible

Dowiemy się, co zrobić w sytuacji, gdy wbudowana w Ansible funkcjonalność przestaje wystarczać — co
i jak możemy rozbudować, jak zintegrować Ansible z zewnętrznymi systemami.
• Dynamiczne listy hostów
• Dodatkowe moduły
• Pluginy filtrów
• Inne typy pluginów

Blok V Ansible Tower/AWX

Ansible Tower (i jego open-source wydanie AWX) pozwala na scentralizowane użycie Ansible z interfejsem
WWW. Zobaczymy jak go użyć do uruchamiania playbooków, przechowywania poufnych danych,
kontroli dostępu itp.


• Użytkowanie Ansible Tower — podstawy
• Formularze
• Źródła inventory
• Workflows
• Dane poufne
• Job callbacks
• Powiadomienia
• Użytkownicy, zespoły, organizacje i kontrola dostępu
• Cache faktów
• API/CLI