Kubernetes to otwarte, darmowe narzędzie służące automatycznemu wdrażaniu, skalowaniu i zarządzaniu skonteneryzowanymi aplikacji. Zaskakująco wykorzystanie tego narzędzia pozwala na lepszą i spójną komunikację pomiędzy programistami i administratorami systemów w postaci jednoznacznych plików konfiguracyjnych, które są zrozumiałe i jasne dla obu stron. Co więcej obie strony mogą korzystać z tych samych plików nie łamiąc w żaden sposób zasad bezpieczeństwa (hasła, krytyczne konfiguracje mogą być przechowywane niezależnie) – dzięki temu wzrasta stabilność dostarczanych rozwiązań.
Szkolenie to dedykowane jest dla programistów którzy posiadają podstawowe informacje na temat dockera i chcą rozszerzyć swoją wiedzę, aby móc wykorzystać potencjał Kubernetesa w swojej firmie.
Program szkolenia – Kubernetes dla programistów
Zagadnienia podstawowe:
Grupa zagadnień nie wymagająca od uczestników specjalnej wiedzy o sieciach, load balancingu, czy administracji serwerami i zaawansowanym bezpieczeństwie. Poruszane tematy są wystarczające do rozpoczęcia developmentu nawet dużych i skomplikowanych systemów.
- Wprowadzenie do Kubernetesa
- Czym jest i jak jest zbudowany kubernetes?
- Czym wyróżnia się kubernetes na rynku?
- Omówienie czym są pody, deploymenty, serwisy
- Konfiguracja i przygotowanie lokalnego środowiska programistycznego
- Instalacja minikube na lokalnych maszynach
- Podstawowe operacje i komendy minikube
- Omówienie wizualnego panelu
- Opracowywanie konfiguracji aplikacji
- Konfiguracja podstawowego PODa
- Komunikacja pomiędzy podami
- Definiowanie bazy danych (oraz innych serwisów zależnych od naszych aplikacji) na potrzeby developmentu
- Awaryjność i skalowalność
- Definiowanie reguł zachowania w wypadku braku odpowiedzi
- Definiowanie automatycznych reguł skalowania aplikacji
- Wdrożenia
- Metody wdrażania nowych aplikacji oraz jak je wybierać,
- Wdrażanie nowych wersji modułów bez zatrzymania systemu,
- Przywracanie poprzedniej wersji w wypadku nie udanego wdrożenia.
- Konfiguracja i bezpieczeństwo
- Przygotowywanie konfiguracji na potrzeby różnych środowisk
- Sposoby zarządzanie konfiguracją
- Przechowywanie haseł i danych wrażliwych
- Dobre praktyki.
- Wersjonowanie
- Kopie zapasowe
- Metody szybkiego opracowanie danych testowych dla środowisk developerskich
- Metody pracy z dużymi systemami na lokalnych maszynach developerskich
Zagadnienia zaawansowane:
Poniższe zagadnienia rozszerzają podstawowe informacje o tematy pozwalające programistom na zarządzanie i konfigurację środowisk testowych, integracyjnych oraz w dużej mierze produkcyjnych.
- Zarządzanie środowiskiem zdalnym
- Proxy – konfigurowanie bezpiecznego połączenia z klastrem k8s
- Modyfikacja zdalnego środowiska
- Ingress
- Wybór i konfiguracja modułu sterownika ingressa
- Zarządzanie dostępną mapą usług
- Bezpieczeństwo
- Komunikacja z wykorzystaniem SSL pomiędzy modułami
- RBAC – role i uprawnienia
- Namespaces – przestrzenie separujące aplikacje, bądź ich wersje
- LoadBalancing
- Podstawy wyboru i przygotowania loadbalancingu
- Automatyzacja wdrożeń
- Wykorzystanie prywatnego konta dockerhub jako źródła obrazów
- Przygotowanie CI oraz CD dla środowisk testowych i integracyjnych
- Dobre praktyki
Powyższe zagadnienia nie opisują procesu instalacji i konfiguracji całego klastra kubernetesa – w tym celu prosimy skontaktować się z zapytaniem o szkolenie „Kubernetes dla administratorów”.