Kubernetes: orkiestracja kontenerów - szkolenie kompleksowe

Najbliższe terminy tego szkolenia
Skuteczność
Program szkolenia
- Wprowadzenie
- Architektura aplikacji kontenerowych - Docker vs Portainer vs ContainerD - czy to ma znaczenie?
- Optymalizacja Dockerfile, jak to robić dobrze
- Bezpieczeństwo kontenerów jak o nie zadbać i jak je skanować?
- Hardening obrazów - czyli jak dodatkowo zabezpieczyć obraz
- Jak dobrze zarządzać konfiguracjami w dockerze na przykładzie docker compose
- Administracja kontenerami - na co zwrócić uwagę, skonfigurowanie logowania, metryki, tracing, itp.
- Narzędzia wspierające codzienną pracę z dockerem.
- Kubernetes
- Podstawy architektury
- API
- Opis obiektów
- Zarządzanie obiektami Kubernetes (imperatywne oraz deklaratywne)
- Manifesty obiektów - struktura oraz format (YAML)
- Omówienie kubectl i podobieństwa z docker
- Wejście w POD i kontener
- Zarządzanie kontekstem
- Pod
- Lifecyle kontenera - co się dzieje jak POD nie działa?
- Uruchamianie kontenerów/zadań przed startem głównej aplikacji
- Zarządzanie zasobami - jak ograniczyć zasoby naszego kontenera
- Healtcheck - co to jest i jak go stosować (Liveness, Readiness oraz Startup probes)
- Wiele kontenerów w Pod - czy można?
- Przeglądanie logów i evenów - co jak idzie coś nie tak..
- Labele, Selectory i Adnotacje - jakie labele stosować aby się nie pogubuić
- Service discovery w Kubernetes
- Service discovery w Kubernetes
- DNS
- Repliki, skalowanie a deployment wersji
- Recreate i rolling update - jak wdrażać nasze aplikacje na produkcję
- Omówienie polityk aktualizacji aplikacji (recreate, ramped, blue/green, canary, a/b testing, shadow)
- Canary Release - jak to dobrze zrobić na Kubernetesie (oraz jak zrobić to źle)
- Manualne i automatyczne skalowanie aplikacji - co zrobić jak nasza aplikacja potrzebuje więcej zasobów czy może się sama zeskalować - HPA
- Startowanie aplikacji na określonych maszynach oraz konfiguracja zależności pomiędzy uruchomionymi kontenerami (nodeSelector, affinity/antiAffinity, taints/tolerations)
- Zarządzanie zasobami klastra: minimalnymi oraz maksymalnymi limitami przypisanymi do kontenerów
- Priorytety aplikacji w klastrze oraz wywłaszczanie kontenerów z niskim priorytetem
- Utrzymanie maszyn klastra wraz z przygotowaniem okien obsług
- Namespaces - wirtualne przestrzenie
- Eksponowanie usług
- NodePort
- ClusterIP
- LoadBalancer
- Ingress
- NGINX ingress controler i alternatywy
- Zarządzanie routingiem aplikacji
- Używanie certyfikatów w ingress
- Automatyczne generowanie certyfikatów na przykładzie Let’s encrypt i Cert Managera
- Konfiguracja i współdzielenie informacji
- Sekrety
- ConfigMaps
- Dobre praktyki na produkcji - wykorzystanie Hashicorp Vault
- Job i CronJob - zadania wsadowe i cykliczne
- Storage
- Lokalne montowanie danych
- EmptyDir
- Zarządzanie zmiennymi środowiskowymi i plikami konfiguracyjnymi aplikacji z użyciem ConfigMaps
- Przechowywanie danych wrażliwych takich jak: hasła, klucze czy tokeny za pomocą Secrets (generic, docker-registry, tls)
- Utrwalanie danych z użyciem wolumenów różnego typu
- Dynamiczne oraz statyczne zarządzanie wolumenami w klastrze
- DemonSets
- StatefulSets - czyli bazy danych w docker - stosować czy nie? Jak to robić? I kiedy nie robić.
- QoS
- Podstawy architektury
- Uwierzytelnianie oraz autoryzacja
- Organizacja informacji o klastrach i użytkownikach w pliku kubeconfig
- Przedstawienie typów użytkowników w Kubernetes: używanych przez administratorów (użytkownicy) oraz aplikacje (konta serwisowe)
- Omówienie strategii uwierzytelniania w klastrze, od użytkownika z hasłem, przez certyfikaty x509, po tokeny OpenID
- Kontrola dostępu oparta na rolach jako sposób na przypisywanie uprawnień do użytkowników
- Walidacja lub modyfikacja żądań za pomocą Admission Controllers
- Sieci
- CNI jako interfejs służący do konfiguracji kart sieciowych kontenerów
- Który CNI wybrać?
- Blokada komunikacji sieciowej w klastrze za pomocą Network Policies
- Mesh - co to jest
- Monitorowanie aplikacji
- Jakie są sposoby monitorowania Kubernetesa?
- Prometheus czy jest to najlepsze narzędzie?
- Dashboard kubernetesowy i alternatywy
- Centralne systemy logowania
- Omówienie różnych architektur zbierania logów w klastrze Kubernetes wraz z przeglądem najpopularniejszych narzędzi
- Centralny monitoring zasobów w klastrze na przykładzie: Prometheus, AlertManager, Grafana
- Jak postawić klaster od zera - jakie są możliwości?
- Kilka przydatnych rzeczy
- Helm
- Kustomize
- Security w Kubernetes
- Testy penetracyjne klastra Kubernetes
- Ograniczenie uprawnień oraz kontrola dostępu aplikacji do komponentów systemu operacyjnego z użyciem SecurityContext
- Wymuszanie globalnych standardów specyfikacji aplikacji wykorzystując Pod Security Policy
- Dystrybucje oraz użyteczne narzędzia
- Kubernetes jako usługa na przykładzie najpopularniejszych dostawców chmur publicznych (GKE, EKS, AKS)
- Zautomatyzowana instalacja klastra przy użyciu Kubernetes Operations (KOPS)
- Instalacja klastra Kubernetes "on premise" (Kubespray)
- kubectx, kubens, telepresence, lens i inne narzędzia użyteczne w codziennej pracy z klastrem Kubernetes
Opis szkolenia
Szkolenie odbywa się na żywo z udziałem trenera. Nie jest to forma kursu video!O szkoleniu w skrócie
Kompleksowe szkolenie z zakresu orkiestracji kontenerów w Kubernetesie - od zera do bohatera. Szkolenie dla programistów, DevOps, administratorów, testerów - dla każdego kto chce pracować na klastrze Kubernetesa lub już pracuje i potrzebuje robić to lepiej i bardziej świadomie :)
Szkolenie ma na celu przygotowanie uczestników do pracy z technologią konteneryzacji oraz klastrem Kubernetes. Po tym szkoleniu użytkownicy bez problemu będą w stanie poruszać się po klastrze Kubernetes, deployować i zarządzać aplikacjami oraz je debugować. Dodatkowo uczestnicy szkolenia zobaczą najlepsze praktyki uruchamiania klastra w swojej firmie oraz jak profesjonalnie wdrażać aplikacje na klaster.
Dla kogo?
Szkolenie dedykowane jest przede wszystkim deweloperom i administratorom, jednocześnie szeroko wprowadzające każdego zainteresowanego tworzeniem, uruchamianiem i zarządzaniem aplikacjami wykorzystującymi kontenery.
Wymagania
Praktyczna znajomość technologii kontenerowej np. Docker Wiedza z zakresu programowania, sieci komputerowych oraz systemu Linux
Prowadzący szkolenie: Maciej Krajewski
Pasjonat kultury DEVOPS, zaprawiony w bojach programista JAVA i DEVOPS od 15 lat (jeszcze zanim to było modne). Ma wieloletnie doświadczenie w zarządzaniu wszelorakimi zespołami developerskimi. Zjadł zęby na realizacji projektów informatycznych w metodologiach klasycznych i zwinnych. Od systemów telekomunikacyjnych opartych na VoIP, rozwiązań video dla firm ubezpieczeniowych, banków, kilka fintechowych blockchainów, po centralny system do przetwarzania faktur medycznych dla rządu w Ghanie. Uwielbia proste rozwiązania i na codzień jest leniwy, dlatego jeżeli może automatyzuje co może - stąd wielka miłość do konteneryzacji i k8s’a, technologi CI/CD oraz CM! Maciej posiada wieloletnie doświadczenie trenerskie, Master of Ceremony na scenie TECH konferencji Infoshare, na codzień zarządza holendersko-polską technologiczną Yameo.

Sprawdź, co mówią o nas ci, którzy nam zaufali
Trenerzy kategorii Docker i Kubernetes



