Automatyzacja zadań z Ansible - szkolenie kompleksowe
Najbliższe terminy tego szkolenia
Standardy JSystems
- Wszyscy nasi trenerzy muszą być praktykami i osiągać średnią z ankiet minimum 4.75 na 5. Nie ma wśród nas trenerów-teoretyków. Każdy trener JSystems ma bogate doświadczenie komercyjne w zakresie tematów z których prowadzi szkolenia.
- Wszystkie szkolenia mają format warszatowy. Każde zagadnienie teoretyczne jest poparte rzędem warsztatów w ściśle określonym formacie.
- Terminy gwarantowane na 100%. Jeśli jakiś termin jest oznaczony jako gwarantowany, oznacza to że odbędzie się nawet jeśli część grupy wycofa się z udziału. Ryzyko ponosimy my jako organizator.
- Do każdego szkolenia które wymaga jakiegokolwiek oprogramowania dostarczamy skonfigurowane, gotowe hosty w chmurze. Dzięki temu uczestnik nie musi nic instalować na swoim komputerze (i bić się z blokadami korporacyjnymi). Połączenie następuje przez zdalny pulpit lub SSH - w zależności od szkolenia.
Program szkolenia
- Wprowadzenie do Ansible
- omówienie systemów orkiestracji
- kiedy warto używać Ansible, a kiedy dobrze by znać Terraform, wraz z przykładami
- czym jest Ansible
- podstawy YAML i Jinja
- przykłady struktur danych, i jakie to ma znaczenie w playbookach
- omówienie komponentów - zmienne, inventory, playbooki, moduły, zadania
- Przygotowanie środowiska do pracy z Ansible
- sposoby instalacji Ansible
- instalacja Ansible w sandbox, kwestie utrzymania środowiska przez wiele lat
- praca z modułami uruchamianymi z linii komend
- Praca z Ansible
- tworzenie pierwszych playbook-ów
- praca z zmiennymi (variables)
- znaczenie umiejscowienia zmiennych względem ich zasięgu w projekcie
- role
- przygotowanie "od zera do bohatera" deploymentu aplikacji - tworzenie playbooków, przygotowywanie szablonów (template) konfiguracji, połączenie w całość wdrożenia aplikacji z bazą danych i loadbalancerem - w jednym przebiegu
- warunkowe wykonywanie zadań (when)
- cykliczne wykonywanie zadań (loop)
- parametryzacja zadań
- dostosowywanie konfiguracji per środowisko
- re-użycie już wytworzonych komponentów
- Debugging
- debugging pracy z Ansible (brakujące zmienne, błędy wykonania manifestów, błędy w zadaniach)
- debugging na poziomie kodu Ansible - "ręczne" zmiany w naszym orkiestratorze w kodzie Python, sposoby uruchomienia modułów jako kodu pythona
- opcja użycia Ansible jako biblioteki Python (bez wraperra ansible)
- testowanie ról z Ansible Molecule
- Ansible Galaxy
- omówienie repozytorium ról i kolekcji
- historia rozwoju projektu Ansible, i jakie to ma znaczenie dla naszych projektów (kompatybilność wsteczna)
- wersjonowanie naszych ról i kolekcji
- użycie gotowych rozwiązań do szybkiego wdrażania kompletnych rozwiązań - np klaster mysql, elasticsearch, k8s - z gotowych szablonów
- poznanie siły społeczności i sposobów na przyspieszenie pracy
- Interfejs graficzny AWX/Tower
- koncepcja pracy w małej i dużej organizacji
- omówienie modelu uprawnień RBAC
- przykłady uruchamiania naszego kodu IaaC za pomocą interfejsu graficznego (web)
- instalacja AWX
- konfiguracja AWX ręczna i automatyczna z poziomu kodu (SaaC)
- (opcjonalnie) Tworzenie własnych modułów)
- możliwość napisania swojego modułu Ansible (Python)
- Koncepcje pracy z wieloma środowiskami
- dev, test, QA, UAT, PROD - jak to wszystko połączyć i Utrzymać!
- rozwijanie i utrzymanie projektów na przestrzeni lat
- układ katalogów w projekcie
- konfiguracja Ansible
- kwestia lokalizacji zmiennych - gdzie je definiować aby było to elastyczne i wygodne rozwiązanie
- Inventory - dynamiczne, statyczne, hybrydowe
- układ inventory, podział na podfoldery
- dynamiczne inventory - przykłady użycia
- jak utrzymać inventory dla wielu projektów i środowisk
- Sekrety w IaaC
- Ansible-Vault i przykłady automatycznego ładowania sekretów
- koncepcja utrzymania sekretów w systemach zewnętrznych
- Ciekawostki i dobre praktyki
- lookupy
- delegowanie zadań
- powtarzanie wykonania zadań
- "tagowanie" zadań
- bloki i grupowanie zadań
- zarządzanie kolejnością wykonywania zadań, run_once, pre_ post_ tasks, include_*
- raporty wykonania, jak je "poprawiać", jak poprawnie analizować zmiany, znaczenie trybu check-mode (i potencjalne pułapki)
- "przyspieszanie Ansible", np mitogen, pipelining, itp
- "bezpieczne restarty" klastrów przy pomocy Ansible
- Orkiestracja systemu Windows
- Dystrybucja kodu aplikacji, manifestów i zarządzanie infrastrukturą as a code, łącznie z konfiguracją samego Ansible
- Dodatkowo
- możliwość przeprowadzenia części laboratoriów w środowisku testowym (AWS lub Azure) klienta
- program może być dostosowany dynamicznie do potrzeb grupy/klienta
Opis szkolenia
Szkolenie odbywa się na żywo z udziałem trenera. Nie jest to forma kursu video!Rozszerzona 5-cio dniowa wersja szkolenia Automatyzacja zadań z Ansible. Na tym szkoleniu poruszamy wszystkie te zagadnienia które pojawiają się na jego 3 dniowej wersji, ale wchodzimy w nie dużo głębiej oraz poruszamy bardziej zaawansowane zagadnienia. Szkolenie ma na celu przybliżenie narzędzia Ansible automatyzującego prace inżynierów oraz administratorów w obszarze konfiguracji środowisk, sytemów operacyjnych, aplikacji oraz automatyzacje tworzenia środowisk wirtualnych. Dzieki temu szkoleniu dowiesz się jak stworzyć infrastrukturę wirtualną, jak przeprowadzić provisioning systemów operacyjnych, jak instalaować/usuwać/update-ować oprogramowanie na systemie operacyjnym, jak wykonywać zadania na wielu systemach operacyjncych. Dzięki wiedzy zdobytej na szkoleniu ułatwisz sobie prace z wykonywaniem zadań administracyjnych oraz programistycznych na infrastrukturze oraz systemach operacyjnych.
Wymagania:
Doświadczenie w administracji systemami operacyjnymi Linux, swobodne poruszanie się w konsoli bash ew. ukończenie szkolenia „Administracja systemami Linux I”
Dla kogo przeznaczone jest szkolenie?
- Szkolenie przeznaczone jest dla administratorów systemów Linux, inżynierów DevOps, architektów systemów, inżynierów automatyzacji systemów.
- Dla szukających sprawdzonych rozwiązań i wskazówek jak pracować z Ansible
- Dla osób pragnących usystematyzować wiedzę Ansible lub poszerzyć zakres umiejętności
- Dla osób chcących "nauczyć się jak się uczyć" czyli jak najwydajniej szukać rozwiązania naszej potrzeby biznesowej, nawet gdy brak nam pomysłu jak zacząć
- Wystarczy znać 20% Ansible, żeby zbudować 80% zadań operacyjnych. Poznaj pozostałe zagadnienia, żeby jeszcze lepiej realizować swoje rozwiązania.
Prowadzący szkolenie: Jakub Muszyński
Praktykujący DevOps @BlueSoft, konsultant do „zadań specjalnych”, sysadmin i programista. Zna duże organizacje jak i startupy. Kubernetes - Azure - Ansible - AWS - Evangelist. Specjalizuje się procesach CI/CD, governance. Swobodnie czuje się w świecie mikroserwisów i Kubernetes. Posiada doświadczenie „multi-platform” z pogranicza elektroniki: IoT, Rpi, Arduino.
Stanowisko robocze
Do tego szkolenia każdy uczestnik otrzymuje dostęp do indywidualnej wirtualnej maszyny w chmurze. Ma ona zainstalowane i skonfigurowane wszystko co potrzebne do realizacji szkolenia. Maszyna będzie dostępna przez cały okres szkolenia.
Gdy na jakiś termin zgłosi się minimalna liczba osób, termin oznaczamy jako gwarantowany.
Jeśli jakiś termin oznaczony jest jako gwarantowany to oznacza to, że na 100% się odbędzie we wskazanym czasie i miejscu.
Nawet gdyby część takiej grupy zrezygnowała lub przeniosła się na inny termin, raz ustalony termin gwarantowany takim pozostaje.
Ewentualne ryzyko ponosimy my jako organizator.
Przejdź do terminów tego szkolenia
Sprawdź, co mówią o nas ci, którzy nam zaufali
Trenerzy kategorii DevOps
Piotr jest autorem wielu publikacji, które koncentrują się na różnych aspektych informatyki, w tym na zabezpieczaniu domowych serwerów, a także na tematach związanych z chmurą obliczeniową i językiem Bash. Jego bogate doświadczenie obejmuje pracę z wieloma systemami Linux, takimi jak Ubuntu, Debian, CentOS i CoreOS, a także administrację serwerem Jenkins i zarządzanie kontenerami Docker i LXC/LXD.