Szczegóły ebooka

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

Ebook

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

  • Tytuł: Kubernetes. Receptury. Aplikacje natywne dla środowiska chmurowego. Wydanie II
  • Autor: Sameer Naik, Sébastien Goasguen, Jonathan Michaux
  • Tytuł oryginału: Kubernetes Cookbook: Building Cloud Native Applications, 2nd Edition
  • Tłumaczenie: Magdalena A. Tkacz
  • ISBN: 978-83-289-1346-2, 9788328913462
  • Data wydania: 2024-10-08
  • Format: Ebook
  • Identyfikator pozycji: kurea2
  • Wydawca: Helion
  • Kategoria wiekowa: 12+