DevOps z GitHub Actions, Jenkins, Terraform, AWS i Ansible
DevOps z GitHub Actions, Jenkins, Terraform, AWS i Ansible
Czas szkolenia 5 dni (forma online lub u klienta)
Trener Piotr Koska
Prowadzący szkolenie: Piotr Kośka
Piotr Kośka to doświadczony inżynier infrastruktury i bezpieczeństwa z ponad dekadą praktyki w różnych dziedzinach technologii IT. Pracuje jako starszy inżynier bezpieczeństwa i infrastruktury w Huuuge Games, gdzie zarządzał zespołem i infrastrukturą chmurową AWS, środowiskiem CI/CD, a także narzędziami automatyzacji takimi jak Ansible, Salt, Terraform i OpenTofu. Pracował również dla HamsaPay, 3Shape Poland, Anixe – Jako Architekt architektury chmurowej oraz operator środowisk CI/CD takich jak github actions, Jenkins, Team City.
Piotr jest autorem wielu publikacji, które koncentrują się na różnych aspektach informatyki, w tym na zabezpieczaniu domowych serwerów, a także na tematach związanych z chmurą obliczeniową i językiem Bash, Python. 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, Kubernetes.
Program szkolenia
Dzień 1: Podstawy GitHub Actions
Wprowadzenie do GitHub Actions
Architektura GitHub Actions: Omówienie budowy, komponentów i działania GitHub Actions.
Kluczowe Pojęcia: Wyjaśnienie takich terminów jak workflow, job, step, action.
Przykłady Zastosowań: Przegląd popularnych przypadków użycia w projektach programistycznych.
Praktyczne Warsztaty
Tworzenie Workflow: Ćwiczenia z tworzenia pierwszego workflow od podstaw.
Definiowanie Kroków i Zadań: Nauka konfiguracji kroków i zadań w pliku YAML.
Uruchamianie i Monitorowanie Workflow: Metody uruchamiania workflow oraz monitorowania ich przebiegu i wyników.
Wykorzystanie Gotowych Akcji
Przegląd Akcji w GitHub Marketplace: Jak wyszukiwać i wybierać odpowiednie akcje z marketplace.
Integracja Gotowych Akcji: Praktyczne przykłady integracji akcji do istniejących workflow.
Najczęściej Używane Akcje: Przegląd najpopularniejszych akcji i ich zastosowania.
Triggery i Zmienne
Konfiguracja Wyzwalaczy: Ustawianie wyzwalaczy dla różnych zdarzeń (np. push, pull request).
Używanie Zmiennych: Praca z zmiennymi w workflow, ich definiowanie i użycie.
Wyrażenia Warunkowe: Tworzenie i użycie warunków w workflow, przykłady praktyczne.
Bezpieczeństwo GitHub Actions
Zarządzanie Tajnymi Zmiennymi: Jak bezpiecznie przechowywać i używać tajnych zmiennych w workflow.
Praktyki Zabezpieczania Dostępów: Rekomendacje dotyczące zabezpieczania dostępu do infrastruktury i danych.
Użycie GitHub Secrets: Praktyczne zastosowanie GitHub Secrets do zarządzania poufnymi informacjami.
Dzień 2: Zaawansowane Techniki Buildów
Zarządzanie Agentami
Typy Agentów: Różnice między self-hosted a GitHub-hosted agentami, ich wady i zalety.
Konfiguracja Agentów: Jak skonfigurować agentów, aby były optymalnie wykorzystane.
Optymalizacja Agentów: Techniki zwiększania wydajności i niezawodności agentów.
Zaawansowane Buildy
Tworzenie Złożonych Procesów Buildów: Jak budować bardziej skomplikowane workflow, łącząc różne narzędzia i technologie.
Integracja z Narzędziami: Łączenie GitHub Actions z narzędziami do budowania i testowania aplikacji.
Przykłady Konfiguracji: Case study z praktycznymi przykładami zaawansowanych konfiguracji.
Reużywanie Kodu
Techniki Ponownego Używania Kodu: Jak tworzyć modularne i reużywalne komponenty workflow.
Tworzenie Szablonów i Bibliotek: Budowanie szablonów i bibliotek zadań do ponownego użycia.
Zarządzanie Zależnościami: Efektywne zarządzanie zależnościami między zadaniami w workflow.
Dzień 3: Bezpieczeństwo i Zarządzanie Artefaktami
Praca z Artefaktami
Tworzenie i Przechowywanie Artefaktów: Jak tworzyć i przechowywać artefakty w GitHub Actions.
Integracja z GitHub Packages: Jak używać GitHub Packages do zarządzania pakietami i artefaktami.
Przykłady Zarządzania Artefaktami: Case study z praktycznymi przykładami.
Tworzenie Własnych Akcji
Pisanie Niestandardowych Akcji: Jak pisać własne akcje w JavaScript lub Docker.
Testowanie i Debugowanie: Techniki testowania i debugowania własnych akcji.
Publikowanie Akcji: Jak publikować własne akcje w GitHub Marketplace.
Dzień 4: Jenkins i CI/CD
Konfiguracja serwera Jenkins
Instalacja i konfiguracja Jenkins
Podłączanie agentów Jenkins
Sposoby podłączania agentów i konfiguracja globalnych narzędzi (Git, Maven itp.).
Tworzenie projektów typu Freestyle oraz Matrix
Konfiguracja i zarządzanie projektami Jenkins.
Tworzenie pipeline’ów za pomocą kodu
Pisanie i konfigurowanie pipeline’ów Jenkins.
Integracja Jenkins z Ansible i Docker
Praktyczne zastosowanie Ansible i Docker w Jenkins.
Użycie Terraform w Jenkins
Automatyzacja zadań przy użyciu Terraform i Jenkins.
Zarządzanie zadaniami w Jenkins
Tworzenie, konfiguracja, monitorowanie i zarządzanie zadaniami.
Backup, przywracanie, aktualizacje i rozwiązywanie problemów
Strategie tworzenia kopii zapasowych, zarządzanie aktualizacjami, techniki rozwiązywania problemów.
Dzień 5: Terraform, AWS, DigitalOcean i Ansible
Wprowadzenie do Terraform
Sposoby podłączania agentów i konfiguracja globalnych narzędzi (Git, Maven itp.).
Tworzenie i zarządzanie infrastrukturą z Terraform
Praktyczne ćwiczenia z użyciem Terraform.
Integracja z AWS i DigitalOcean
Deploy aplikacji do AWS i DigitalOcean przy użyciu Terraform.
Użycie Ansible do zarządzania konfiguracją
Automatyzacja konfiguracji serwerów z Ansible.
Scalanie narzędzi: Jenkins, Terraform, Ansible w workflow DevOps
Łączenie wszystkich narzędzi w jedną spójną strategię DevOps.
Podsumowanie szkolenia
Omówienie kluczowych punktów szkolenia, sesja Q&A.
Opis szkolenia
Szkolenie odbywa się na żywo z udziałem trenera. Nie jest to forma kursu video!
Szkolenie „DevOps z GitHub Actions, Jenkins, Terraform, AWS i Ansible” to intensywny i wszechstronny kurs, który kompleksowo wprowadza uczestników w zaawansowane techniki automatyzacji oraz zarządzania infrastrukturą IT. Przez pięć dni intensywnych zajęć, uczestnicy zdobędą dogłębną wiedzę i praktyczne umiejętności, które pozwolą im skutecznie integrować różnorodne narzędzia DevOps w spójne procesy CI/CD.
Uczestnicy nauczą się, jak efektywnie wykorzystać GitHub Actions do tworzenia i zarządzania workflow oraz automatyzacji procesów CI/CD. Poznają architekturę GitHub Actions, kluczowe pojęcia takie jak workflow, job, step i action, a także nauczą się konfigurować poszczególne kroki i zadania w pliku YAML. Kurs obejmuje również praktyczne ćwiczenia związane z tworzeniem workflow, uruchamianiem i monitorowaniem ich przebiegu, a także integracją gotowych akcji dostępnych w GitHub Marketplace. Uczestnicy dowiedzą się, jak konfigurować wyzwalacze dla różnych zdarzeń, używać zmiennych oraz tworzyć i stosować wyrażenia warunkowe w swoich workflow.
Szkolenie obejmuje również zaawansowane techniki budowania i integracji kodu. Uczestnicy nauczą się zarządzać agentami, zarówno self-hosted, jak i GitHub-hosted, a także optymalizować ich wydajność i niezawodność. Dowiedzą się, jak tworzyć złożone procesy buildów, integrując różnorodne narzędzia i technologie, oraz jak efektywnie zarządzać kodem poprzez techniki ponownego używania, tworzenie szablonów i bibliotek zadań oraz zarządzanie zależnościami.
Bezpieczeństwo jest kluczowym elementem kursu. Uczestnicy poznają najlepsze praktyki zarządzania tajnymi zmiennymi, zabezpieczania dostępu do infrastruktury i danych oraz użycia GitHub Secrets. Dowiedzą się również, jak tworzyć i przechowywać artefakty w GitHub Actions, integrować się z GitHub Packages oraz pisać, testować i publikować własne niestandardowe akcje w GitHub Marketplace.
Kurs obejmuje także pełne szkolenie z Jenkins, gdzie uczestnicy nauczą się instalacji, konfiguracji oraz zarządzania projektami typu Freestyle i Matrix. Nauczą się pisać i konfigurować pipeline’y w Jenkins, integrować Jenkins z Ansible i Docker, a także automatyzować zadania przy użyciu Terraform i Jenkins. Dodatkowo, kurs obejmuje zarządzanie zadaniami w Jenkins, strategie tworzenia kopii zapasowych, aktualizacje oraz techniki rozwiązywania problemów.
W zakresie Terraform, AWS i DigitalOcean, uczestnicy nauczą się tworzenia i zarządzania infrastrukturą jako kod. Praktyczne ćwiczenia obejmują deploy aplikacji do AWS i DigitalOcean oraz automatyzację konfiguracji serwerów za pomocą Ansible. Szkolenie kończy się integracją wszystkich narzędzi w spójną strategię DevOps, co zapewnia uczestnikom pełne zrozumienie i umiejętność zarządzania procesami CI/CD w praktyce.
Dla kogo jest ten kurs?
Kurs jest dedykowany dla osób, które dopiero rozpoczynają swoją podróż w tematyce DevOps. Dzięki kompleksowemu podejściu i licznym ćwiczeniom praktycznym, uczestnicy zdobędą solidne podstawy teoretyczne i praktyczne, które pozwolą im z pewnością siebie pracować z narzędziami DevOps. Kurs jest zaprojektowany tak, aby krok po kroku wprowadzać uczestników w zagadnienia związane z automatyzacją i zarządzaniem infrastrukturą, co czyni go idealnym wyborem dla początkujących w tej dziedzinie.
Ta strona wykorzystuje do działania pliki cookie. Możesz zmienić ustawienia akceptacji plików cookie w swojej przeglądarce. Korzystając z tej strony akceptujesz postanowienia Polityki Prywatności.