Najlepsze praktyki w Kubernetes. Jak budować udane aplikacje

34,72

Opis

Najlepsze praktyki w Kubernetes. Jak budować udane aplikacje

Systemy informatyczne oparte na chmurze stały się atrakcyjną alternatywą dla standardowej infrastruktury. Wymusiły jednak radykalne zmiany w praktykach tworzenia, wdrażania i utrzymywania aplikacji. Dziś uwaga profesjonalistów skupiona jest na Kubernetes, który w ciągu zaledwie kilku lat stał się faktycznym standardem wdrażania natywnej chmury. Aby tworzone aplikacje funkcjonowały wydajnie, bezawaryjnie i niezawodnie, warto wdrożyć i stosować wzorce i najlepsze praktyki. Konieczne jest również przemodelowanie sposobu pracy programistów.Ta książka jest przeznaczona dla profesjonalnych użytkowników Kubernetes, którzy chcą poznać wzorce i najlepsze praktyki przy wdrażaniu rzeczywistych rozwiązań. Znalazły się tu informacje o jego działaniu w różnych skalach, topologiach i domenach, a także liczne przykłady zastosowania omawianych technologii. Sporo miejsca poświęcono zagadnieniom projektowania aplikacji, konfiguracji i działania usług Kubernetes, a także ciągłej integracji i testowania aplikacji. Ważnym zagadnieniem są takie aspekty zarządzania klastrem jak przydzielanie zasobów, zapewnienie bezpieczeństwa czy autoryzacja i dostęp do klastra. Prezentowane treści zilustrowano fragmentami przejrzystego kodu, co dodatkowo zwiększa przydatność tej książki w pracy inżyniera.Najciekawsze zagadnienia:konfiguracja i projektowanie aplikacji w Kuberneteswzorce monitorowania i zarządzanie uaktualnieniami aplikacjiwdrażanie i wycofywanie aplikacji Kubernetespolityka sieciowa i współpraca Kubernetes z architekturą Service Meshplatformy wysokiego poziomu na bazie KubernetesKubernetes i uczenie maszynoweNajlepsze praktyki w Kubernetes: poradzisz sobie z każdym wyzwaniem!Spis treści:Wprowadzenie 111. Konfiguracja podstawowej usługi 15Ogólne omówienie aplikacji 15Zarządzanie plikami konfiguracyjnymi 15Tworzenie usługi replikowanej za pomocą wdrożeń 17Najlepsze praktyki dotyczące zarządzania obrazami kontenera 17Tworzenie replikowanej aplikacji 18Konfiguracja zewnętrznego przychodzącego ruchu sieciowego HTTP 20Konfigurowanie aplikacji za pomocą zasobu ConfigMap 21Zarządzanie uwierzytelnianiem za pomocą danych poufnych 22Wdrożenie prostej bezstanowej bazy danych 25Utworzenie za pomocą usług mechanizmu równoważenia obciążenia TCP 28Przekazanie przychodzącego ruchu sieciowego do serwera pliku statycznego 29Parametryzowanie aplikacji za pomocą menedżera pakietów Helm 31Najlepsze praktyki dotyczące wdrożenia 32Podsumowanie 332. Sposób pracy programisty 35Cele 35Tworzenie klastra programistycznego 36Konfiguracja klastra współdzielonego przez wielu programistów 37Przygotowywanie zasobów dla użytkownika 38Tworzenie i zabezpieczanie przestrzeni nazw 40Zarządzanie przestrzeniami nazw 42Usługi na poziomie klastra 43Umożliwienie pracy programistom 43Konfiguracja początkowa 43Umożliwienie aktywnego programowania 44Umożliwienie testowania i debugowania 45Najlepsze praktyki dotyczące konfiguracji środowiska programistycznego 46Podsumowanie 463. Monitorowanie i rejestrowanie danych w Kubernetes 47Wskaźniki kontra dzienniki zdarzeń 47Techniki monitorowania 47Wzorce monitorowania 48Ogólne omówienie wskaźników Kubernetes 49cAdvisor 49Wskaźniki serwera 50kube-state-metrics 50Które wskaźniki powinny być monitorowane? 51Narzędzia do monitorowania 52Monitorowanie Kubernetes za pomocą narzędzia Prometheus 54Ogólne omówienie rejestrowania danych 58Narzędzia przeznaczone do rejestrowania danych 60Rejestrowanie danych za pomocą stosu EFK 60Ostrzeganie 62Najlepsze praktyki dotyczące monitorowania, rejestrowania danych i ostrzegania 64Monitorowanie 64Rejestrowanie danych 64Ostrzeganie 64Podsumowanie 654. Konfiguracja, dane poufne i RBAC 67Konfiguracja za pomocą zasobu ConfigMap i danych poufnych 67ConfigMap 67Dane poufne 68Najlepsze praktyki dotyczące API zasobu ConfigMap i danych poufnych 69RBAC 74Krótkie wprowadzenie do mechanizmu RBAC 75Najlepsze praktyki dotyczące mechanizmu RBAC 77Podsumowanie 795. Ciągła integracja, testowanie i ciągłe wdrażanie 81System kontroli wersji 82Ciągła integracja 82Testowanie 82Kompilacja kontenera 83Oznaczanie tagiem obrazu kontenera 84Ciągłe wdrażanie 85Strategie wdrażania 85Testowanie w produkcji 89Stosowanie inżynierii chaosu i przygotowania 91Konfiguracja ciągłej integracji 91Konfiguracja ciągłego wdrażania 93Przeprowadzanie operacji uaktualnienia 94Prosty eksperyment z inżynierią chaosu 94Najlepsze praktyki dotyczące technik ciągłej integracji i ciągłego wdrażania 95Podsumowanie 966. Wersjonowanie, wydawanie i wdrażanie aplikacji 97Wersjonowanie aplikacji 98Wydania aplikacji 98Wdrożenia aplikacji 99Połączenie wszystkiego w całość 100Najlepsze praktyki dotyczące wersjonowania, wydawania i wycofywania wdrożeń 103Podsumowanie 1047. Rozpowszechnianie aplikacji na świecie i jej wersje robocze 105Rozpowszechnianie obrazu aplikacji 106Parametryzacja wdrożenia 107Mechanizm równoważenia obciążenia związanego z ruchem sieciowym w globalnie wdrożonej aplikacji 107Niezawodne wydawanie oprogramowania udostępnianego globalnie 108Weryfikacja przed wydaniem oprogramowania 108Region kanarkowy 111Identyfikacja typów regionów 111Przygotowywanie wdrożenia globalnego 112Gdy coś pójdzie nie tak 113Najlepsze praktyki dotyczące globalnego wdrożenia aplikacji 114Podsumowanie 1158. Zarządzanie zasobami 117Zarządca procesów w Kubernetes 117Predykaty 117Priorytety 118Zaawansowane techniki stosowane przez zarządcę procesów 119Podobieństwo i brak podobieństwa podów 119nodeSelector 120Wartość taint i tolerancje 120Zarządzanie zasobami poda 122Żądanie zasobu 122Ograniczenia zasobów i jakość usługi poda 123PodDisruptionBudget 125Zarządzanie zasobami za pomocą przestrzeni nazw 126ResourceQuota 127LimitRange 128Skalowanie klastra 129Skalowanie aplikacji 130Skalowanie za pomocą HPA 131HPA ze wskaźnikami niestandardowymi 132Vertical Pod Autoscaler 133Najlepsze praktyki dotyczące zarządzania zasobami 133Podsumowanie 1349. Sieć, bezpieczeństwo sieci i architektura Service Mesh 135Reguły działania sieci w Kubernetes 135Wtyczki sieci 137Kubenet 137Najlepsze praktyki dotyczące pracy z Kubenet 138Wtyczka zgodna ze specyfikacją CNI 139Najlepsze praktyki dotyczące pracy z wtyczkami zgodnymi ze specyfikacją CNI 139Usługi w Kubernetes 140Typ usługi ClusterIP 140Typ usługi NodePort 142Typ usługi ExternalName 143Typ usługi LoadBalancer 143Ingress i kontrolery Ingress 144Najlepsze praktyki dotyczące usług i kontrolerów Ingress 146Polityka zapewnienia bezpieczeństwa sieci 146Najlepsze praktyki dotyczące polityki sieci 148Architektura Service Mesh 150Najlepsze praktyki dotyczące architektury Service Mesh 151Podsumowanie 15210. Bezpieczeństwo poda i kontenera 153API PodSecurityPolicy 153Włączenie zasobu PodSecurityPolicy 153Anatomia zasobu PodSecurityPolicy 155Wyzwania związane z zasobem PodSecurityPolicy 162Najlepsze praktyki dotyczące zasobu PodSecurityPolicy 163Następne kroki związane z zasobem PodSecurityPolicy 163Izolacja zadania i API RuntimeClass 164Używanie API RuntimeClass 164Implementacje środowiska uruchomieniowego 165Najlepsze praktyki dotyczące izolacji zadań i API RuntimeClass 166Pozostałe rozważania dotyczące zapewnienia bezpieczeństwa poda i kontenera 166Kontrolery dopuszczenia 166Narzędzia do wykrywania włamań i anomalii 167Podsumowanie 16711. Polityka i zarządzanie klastrem 169Dlaczego polityka i zarządzanie są ważne? 169Co odróżnia tę politykę od innych? 169Silnik polityki natywnej chmury 170Wprowadzenie do narzędzia Gatekeeper 170Przykładowe polityki 171Terminologia stosowana podczas pracy z Gatekeeper 171Definiowanie szablonu ograniczenia 172Definiowanie ograniczenia 173Replikacja danych 174UX 174Audyt 175Poznanie narzędzia Gatekeeper 176Następne kroki podczas pracy z narzędziem Gatekeeper 176Najlepsze praktyki dotyczące polityki i zarządzania 176Podsumowanie 17712. Zarządzanie wieloma klastrami 179Do czego potrzebujesz wielu klastrów? 179Kwestie do rozważenia podczas projektowania architektury składającej się z wielu klastrów 181Zarządzanie wieloma wdrożeniami klastrów 183Wzorce wdrażania i zarządzania 183Podejście GitOps w zakresie zarządzania klastrami 185Narzędzia przeznaczone do zarządzania wieloma klastrami 187Federacja Kubernetes 187Najlepsze praktyki dotyczące zarządzania wieloma klastrami 190Podsumowanie 19113. Integracja usług zewnętrznych z Kubernetes 193Importowanie usług do Kubernetes 193Pozbawiona selektora usługa dla stabilnego adresu IP 194Oparte na rekordzie CNAME usługi dla stabilnych nazw DNS 194Podejście oparte na aktywnym kontrolerze 196Eksportowanie usług z Kubernetes 197Eksportowanie usług za pomocą wewnętrznych mechanizmów równoważenia obciążenia 197Eksportowanie usług za pomocą usługi opartej na NodePort 198Integracja komputerów zewnętrznych z Kubernetes 199Współdzielenie usług między Kubernetes 200Narzędzia opracowane przez podmioty zewnętrzne 200Najlepsze praktyki dotyczące nawiązywania połączeń między klastrami a usługami zewnętrznymi 201Podsumowanie 20114. Uczenie maszynowe w Kubernetes 203Dlaczego Kubernetes doskonale sprawdza się w połączeniu z uczeniem maszynowym? 203Sposób pracy z zadaniami uczenia głębokiego 204Uczenie maszynowe dla administratorów klastra Kubernetes 205Trenowanie modelu w Kubernetes 205Trenowanie rozproszone w Kubernetes 208Ograniczenia dotyczące zasobów 208Sprzęt specjalizowany 208Biblioteki, sterowniki i moduły jądra 209Pamięć masowa 210Sieć 211Protokoły specjalizowane 211Obawy użytkowników zajmujących się analizą danych 212Najlepsze praktyki dotyczące wykonywania w Kubernetes zadań związanych z uczeniem maszynowym 212Podsumowanie 21315. Tworzenie wzorców aplikacji wysokiego poziomu na podstawie Kubernetes 215Podejścia w zakresie tworzenia abstrakcji wysokiego poziomu 215Rozszerzanie Kubernetes 216Rozszerzanie klastrów Kubernetes 216Wrażenia użytkownika podczas rozszerzania Kubernetes 218Rozważania projektowe podczas budowania platformy 218Obsługa eksportowania do obrazu kontenera 218Obsługa istniejących mechanizmów dla usług i wykrywania usług 219Najlepsze praktyki dotyczące tworzenia platform dla aplikacji 220Podsumowanie 22016. Zarządzanie informacjami o stanie i aplikacjami wykorzystującymi te dane 221Woluminy i punkty montowania 222Najlepsze praktyki dotyczące woluminów 223Pamięć masowa w Kubernetes 223API PersistentVolume 223API PersistentVolumeClaims 224Klasy pamięci masowej 225Najlepsze praktyki dotyczące pamięci masowej w Kubernetes 226Aplikacje obsługujące informacje o stanie 227Zasób StatefulSet 228Operatory 229Najlepsze praktyki dotyczące zasobu StatefulSet i operatorów 230Podsumowanie 23117. Sterowanie dopuszczeniem i autoryzacja 233Sterowanie dopuszczeniem 233Czym jest kontroler dopuszczenia? 234Typy kontrolerów dopuszczenia 234Konfiguracja zaczepu sieciowego dopuszczenia 235Najlepsze praktyki dotyczące sterowania dopuszczeniem 237Autoryzacja 239Moduły autoryzacji 239Najlepsze praktyki dotyczące autoryzacji 242Podsumowanie 24218. Zakończenie 243

: Podręczniki szkolne

psycholog poznań cennik, doktorat eksternistyczny, administracja publiczna, centrum synergia chorzów, architektura wnętrz szczecin, 61 886 93 40, personalny

yyyyy