Details zum E-Book

Kubernetes. Receptury. Aplikacje natywne dla środowiska chmurowego. Wydanie II

Kubernetes. Receptury. Aplikacje natywne dla środowiska chmurowego. Wydanie II

Sameer Naik, Sébastien Goasguen, Jonathan Michaux

E-book

Kubernetes stał się standardem orkiestracji kontenerów i zarządzania rozproszonymi aplikacjami. Obecnie pozwala na uzyskiwanie automatyzacji, rozszerzalności i przenośności na wysokim poziomie, a sama praca z nim jest efektywna i satysfakcjonująca. Niekiedy jednak tworzenie i wdrażanie aplikacji Kubernetes sprawia problemy nawet zaawansowanym użytkownikom.

To książka przeznaczona dla osób pracujących z systemami Kubernetes. Poszczególne zagadnienia przedstawiono w niej w przejrzystym formacie problem - rozwiązanie - omówienie, dzięki czemu szybko znajdziesz rozwiązanie konkretnego problemu, a to z kolei pozwoli Ci na korzystanie ze wszystkich zalet tej platformy w codziennej pracy. Znalazło się tu ponad 100 praktycznych receptur obejmujących takie tematy jak konfigurowanie klastra, zarządzanie obciążeniem w kontenerach przy użyciu obiektów Kubernetes API, użycie pamięci masowej indeksowanej wartościami klucz-wartość, konfigurowanie zabezpieczeń i wiele innych. Każda receptura jest niezależna od innych, a materiał został zorganizowany w sposób maksymalnie ułatwiający szybkie odnalezienie interesującego Cię zagadnienia.

W książce między innymi:

  • tworzenie klastra i interfejs wiersza poleceń Kubernetes
  • zarządzanie obciążeniami i usługami
  • interfejs API Kubernetes
  • skalowanie na poziomie klastra i aplikacji
  • zabezpieczanie aplikacji i jej monitorowanie
  • utrzymywanie systemów w środowisku chmury i rozwiązywanie problemów

Kubernetes w praktyce. Znajdź szybkie rozwiązania dla każdego wyzwania!

Przedmowa

Rozdział 1. Pierwsze kroki z Kubernetes

  • 1.1. Instalacja interfejsu wiersza poleceń Kubernetes (kubectl)
  • 1.2. Instalacja Minikube w celu uruchomienia lokalnej instancji Kubernetes
  • 1.3. Lokalne wykorzystanie Minikube jako środowiska deweloperskiego
  • 1.4. Uruchamianie swojej pierwszej aplikacji na Minikube
  • 1.5. Używanie kind do uruchamiania Kubernetes lokalnie
  • 1.6. Korzystanie z Kubernetes w Docker Desktop
  • 1.7. Przełączanie kontekstów kubectl
  • 1.8. Przełączanie kontekstów i przestrzeni nazw przy użyciu kubectx i kubens

Rozdział 2. Tworzenie klastra Kubernetes

  • 2.1. Przygotowanie nowego węzła dla klastra Kubernetes
  • 2.2. Uruchamianie węzła warstwy sterowania Kubernetes
  • 2.3. Instalowanie dodatku Container Network dla sieci klastrów
  • 2.4. Dodawanie węzłów roboczych do klastra Kubernetes
  • 2.5. Uruchamianie kokpitu nawigacyjnego Kubernetes
  • 2.6. Uzyskanie dostępu do kokpitu nawigacyjnego Kubernetes
  • 2.7. Wdrażanie serwera Kubernetes Metrics Server
  • 2.8. Pobieranie określonej wersji Kubernetes z serwisu GitHub
  • 2.9. Pobieranie plików binarnych klienta i serwera
  • 2.10. Korzystanie z plików jednostek systemd do uruchamiania komponentów Kubernetes
  • 2.11. Tworzenie klastra Kubernetes w Google Kubernetes Engine
  • 2.12. Tworzenie klastra Kubernetes w usłudze Azure Kubernetes Service
  • 2.13. Tworzenie klastra Kubernetes w usłudze Amazon Elastic Kubernetes Service

Rozdział 3. Jak korzystać z klienta Kubernetes

  • 3.1. Lista zasobów
  • 3.2. Usuwanie zasobów
  • 3.3. Obserwowanie zmian zasobów za pomocą kubectl
  • 3.4. Edytowanie obiektów za pomocą kubectl
  • 3.5. Uzyskiwanie dodatkowych informacji co do zasobów i pól z kubectl

Rozdział 4. Tworzenie i modyfikowanie podstawowych obciążeń roboczych

  • 4.1. Tworzenie poda przy użyciu kubectl run
  • 4.2. Tworzenie wdrożenia przy użyciu kubectl create
  • 4.3. Tworzenie obiektów z pliku manifestów
  • 4.4. Pisanie od podstaw manifestu dla poda
  • 4.5. Uruchamianie wdrożenia przy użyciu manifestu
  • 4.6. Aktualizacja wdrożenia
  • 4.7. Uruchamianie zadań w trybie wsadowym
  • 4.8. Uruchamianie w podzie zadania według harmonogramu
  • 4.9. Uruchamianie demonów infrastruktury na węzeł

Rozdział 5. Praca z usługami

  • 5.1. Tworzenie usługi eksponującej Twoją aplikację
  • 5.2. Weryfikacja wpisu DNS dla usługi
  • 5.3. Zmiana typu usługi
  • 5.4. Wdrażanie kontrolera ingress
  • 5.5. Udostępnianie usług spoza klastra

Rozdział 6. Zarządzanie manifestami aplikacji

  • 6.1. Instalacja Helm, menedżera pakietów dla Kubernetes
  • 6.2. Dodawanie repozytoriów ze schematami do Helm
  • 6.3. Używanie Helm do instalowania aplikacji
  • 6.4. Sprawdzanie, jakie parametry schematu są konfigurowalne
  • 6.5. Nadpisywanie parametrów schematu
  • 6.6. Pobieranie podawanych przez użytkownika parametrów wydania Helm
  • 6.7. Odinstalowywanie aplikacji z wykorzystaniem Helm
  • 6.8. Tworzenie własnego schematu - przygotowanie paczki z aplikacją dla Helm
  • 6.9. Instalacja Kompose
  • 6.10. Konwertowanie plików Docker Compose na manifesty Kubernetes
  • 6.11. Konwersja pliku Docker Compose na schemat Helm
  • 6.12. Instalacja kapp
  • 6.13. Wdrażanie manifestów YAML przy użyciu kapp

Rozdział 7. Odkrywanie interfejsu API Kubernetes i kluczowe metadane

  • 7.1. Wykrywanie punktów końcowych serwera API Kubernetes
  • 7.2. Zrozumienie struktury manifestu Kubernetes
  • 7.3. Tworzenie przestrzeni nazw w celu uniknięcia kolizji nazw
  • 7.4. Ustawianie ograniczeń w przestrzeni nazw
  • 7.5. Etykietowanie obiektu
  • 7.6. Używanie etykiet w zapytaniach
  • 7.7. Dodawanie komentarzy do zasobu za pomocą jednego polecenia

Rozdział 8. Woluminy i dane konfiguracyjne

  • 8.1. Wymiana danych między kontenerami za pośrednictwem woluminu lokalnego
  • 8.2. Przekazywanie klucza dostępu API do podów przy użyciu sekretu
  • 8.3. Dostarczanie danych konfiguracyjnych do aplikacji
  • 8.4. Używanie trwałego woluminu w Minikube
  • 8.5. O trwałości danych w Minikube
  • 8.6. Przechowywanie zaszyfrowanych sekretów w systemie kontroli wersji

Rozdział 9. Skalowanie

  • 9.1. Skalowanie wdrożenia
  • 9.2. Korzystanie z automatycznego, poziomego skalowania poda (HPA)
  • 9.3. Automatyczna zmiana rozmiaru klastra w GKE
  • 9.4. Automatyczna zmiana rozmiaru klastra w Amazon EKS

Rozdział 10. Bezpieczeństwo

  • 10.1. Zapewnianie unikalnej tożsamości dla aplikacji
  • 10.2. Wyświetlanie i przeglądanie informacji związanych z kontrolą dostępu
  • 10.3. Kontrolowanie dostępu do zasobów
  • 10.4. Zabezpieczanie podów

Rozdział 11. Monitorowanie i rejestrowanie

  • 11.1. Dostęp do dzienników kontenera
  • 11.2. Odzyskiwanie ze stanu uszkodzonego za pomocą sondy aktywności
  • 11.3. Kontrolowanie przepływu ruchu do poda przy użyciu sondy gotowości
  • 11.4. Ochrona wolno uruchamiających się kontenerów za pomocą sondy rozruchowej
  • 11.5. Dodawanie sond aktywności i gotowości do wdrożeń
  • 11.6. Uzyskiwanie dostępu do wskaźników Kubernetes w interfejsie linii poleceń
  • 11.7. Korzystanie z Prometheus i Grafana na Minikube

Rozdział 12. Utrzymywanie systemu i rozwiązywanie problemów

  • 12.1. Włączanie autouzupełniania dla kubectl
  • 12.2. Usuwanie podów z usługi
  • 12.3. Uzyskiwanie spoza klastra dostępu do usługi ClusterIP
  • 12.4. Zrozumienie i analizowanie stanu zasobów
  • 12.5. Debugowanie podów
  • 12.6. Wpływanie na zachowanie podów podczas uruchamiania
  • 12.7. Uzyskiwanie szczegółowej migawki stanu klastra
  • 12.8. Dodawanie węzłów roboczych Kubernetes
  • 12.9. Czasowe odłączanie węzła Kubernetes na potrzeby wykonania konserwacji

Rozdział 13. Sieci usług

  • 13.1. Instalacja sieci usług Istio
  • 13.2. Wdrażanie mikrousługi za pomocą sidecara Istio
  • 13.3. Trasowanie ruchu przy użyciu usługi wirtualnej Istio
  • 13.4. Nadpisywanie adresu URL przy użyciu usługi wirtualnej Istio
  • 13.5. Instalacja usługi Linkerd Service Mesh
  • 13.6. Wdrażanie usługi w sieci Linkerd Mesh
  • 13.7. Linkerd: przekierowywanie ruchu do usługi
  • 13.8. Linkerd: autoryzowanie ruchu do serwera

Rozdział 14. Aplikacje bezserwerowe i aplikacje sterowane zdarzeniami

  • 14.1. Instalacja Knative Operator
  • 14.2. Instalacja komponentu Knative Serving
  • 14.3. Instalacja Knative CLI
  • 14.4. Tworzenie usługi Knative
  • 14.5. Instalacja komponentu Knative Eventing
  • 14.6. Wdrażanie Knative Eventing Source
  • 14.7. Włączanie Knative Eventing Sources
  • 14.8. Instalowanie źródeł zdarzeń z TriggerMesh

Rozdział 15. Rozbudowywanie Kubernetes

  • 15.1. Kompilacja ze źródła
  • 15.2. Kompilowanie określonego komponentu
  • 15.3. Używanie oprogramowania klienckiego języka Python do pracy z Kubernetes API
  • 15.4. Rozszerzanie interfejsu API z wykorzystaniem definicji niestandardowych zasobów

Dodatek. Zasoby

  • Titel: Kubernetes. Receptury. Aplikacje natywne dla środowiska chmurowego. Wydanie II
  • Autor: Sameer Naik, Sébastien Goasguen, Jonathan Michaux
  • Originaler Titel: Kubernetes Cookbook: Building Cloud Native Applications, 2nd Edition
  • Übersetzung: Magdalena A. Tkacz
  • ISBN: 978-83-289-1346-2, 9788328913462
  • Veröffentlichungsdatum: 2024-10-08
  • Format: E-book
  • Artikelkennung: kurea2
  • Verleger: Helion
  • Alterskategorie: 12+