reklama - zainteresowany?

Kubernetes - rozwiązania chmurowe w świecie DevOps. Tworzenie, wdrażanie i skalowanie nowoczesnych aplikacji chmurowych - Helion

Kubernetes - rozwiązania chmurowe w świecie DevOps. Tworzenie, wdrażanie i skalowanie nowoczesnych aplikacji chmurowych
Autor: John Arundel, Justin Domingus
ISBN: 978-83-283-6927-6
okładka: miękka
Data wydania: 2020-09-01
Księgarnia: Helion

Cena książki: 51,75 zł (poprzednio: 69,00 zł)
Oszczędzasz: 25% (-17,25 zł)

Dodaj do koszyka Kubernetes - rozwiązania chmurowe w świecie DevOps. Tworzenie, wdrażanie i skalowanie nowoczesnych aplikacji chmurowych

Dodaj do koszyka Kubernetes - rozwiązania chmurowe w świecie DevOps. Tworzenie, wdrażanie i skalowanie nowoczesnych aplikacji chmurowych

 

Osoby które kupowały "Kubernetes - rozwiązania chmurowe w świecie DevOps. Tworzenie, wdrażanie i skalowanie nowoczesnych aplikacji chmurowych", wybierały także:

  • Windows Media Center. Domowe centrum rozrywki
  • Ruby on Rails. Ćwiczenia
  • DevOps w praktyce. Kurs video. Jenkins, Ansible, Terraform i Docker
  • Przywództwo w Å›wiecie VUCA. Jak być skutecznym liderem w niepewnym Å›rodowisku
  • Scrum. O zwinnym zarzÄ…dzaniu projektami. Wydanie II rozszerzone

Dodaj do koszyka Kubernetes - rozwiązania chmurowe w świecie DevOps. Tworzenie, wdrażanie i skalowanie nowoczesnych aplikacji chmurowych

Spis treści

Kubernetes - rozwiązania chmurowe w świecie DevOps. Tworzenie, wdrażanie i skalowanie nowoczesnych aplikacji chmurowych -- spis treści


Przedmowa 19

Wstęp 21

1. Rewolucja chmurowa 25

  • Tworzenie chmury 25
    • Czas kupowania 26
    • Infrastruktura jako usÅ‚uga 27
  • PoczÄ…tki DevOps 27
    • Nikt nie rozumie DevOps 28
    • Przewaga biznesowa 29
    • Infrastruktura w postaci kodu 30
    • Wspólna nauka 30
  • NadejÅ›cie kontenerów 31
    • Stan aktualny 31
    • MyÅ›lenie pudeÅ‚kowe 31
    • Umieszczanie oprogramowania w kontenerach 32
    • Aplikacje Plug and Play 33
  • Uruchomienie orkiestratora 33
  • Kubernetes 34
    • Od Borga do Kubernetes 34
    • Co sprawia, że Kubernetes jest tak cenny? 35
    • Czy Kubernetes zniknie? 36
    • Kubernetes nie zaÅ‚atwia wszystkiego 37
  • Model Cloud Native 38
  • PrzyszÅ‚ość operacji 39
    • Rozproszone DevOps 40
    • Niektóre rzeczy pozostanÄ… scentralizowane 40
    • Produktywni programiÅ›ci 40
    • JesteÅ› przyszÅ‚oÅ›ciÄ… 41
  • Podsumowanie 41

2. Pierwsze kroki z Kubernetes 43

  • Uruchamianie pierwszego kontenera 43
    • Instalowanie Docker Desktop 43
    • Co to jest Docker? 44
    • Uruchamianie obrazu kontenera 44
  • Aplikacja demonstracyjna 45
    • OglÄ…damy kod źródÅ‚owy 45
    • Wprowadzenie do jÄ™zyka Go 46
    • Jak dziaÅ‚a aplikacja demonstracyjna? 46
  • Budowanie kontenera 46
    • Opis plików Dockerfile 47
    • Minimalne obrazy kontenerów 47
    • Uruchamianie skompilowanego obrazu Docker 48
    • Nazywanie obrazów 48
    • Przekierowanie portów (ang. port forwarding) 49
  • Rejestry kontenerowe 49
    • Uwierzytelnianie w rejestrze 49
    • Przydzielanie nazwy i dodawanie obrazu 50
    • Uruchamianie obrazu 50
  • Cześć, Kubernetes 50
    • Uruchamianie aplikacji demonstracyjnej 50
    • JeÅ›li kontener siÄ™ nie uruchamia 51
  • Minikube 52
  • Podsumowanie 52

3. Opis Kubernetes 53

  • Architektura klastrowa 53
    • Warstwa sterowania 54
    • Elementy wÄ™zÅ‚a 54
    • System wysokiej niezawodnoÅ›ci (ang. high availability) 55
  • Koszty samodzielnego hostingu Kubernetes 56
    • To wiÄ™cej pracy niż myÅ›lisz 57
    • Nie chodzi tylko o poczÄ…tkowÄ… konfiguracjÄ™ 58
    • NarzÄ™dzia nie wykonajÄ… za Ciebie caÅ‚ej pracy 58
    • Kubernetes jest trudny 58
    • Koszty administracyjne 59
    • Zacznij od usÅ‚ug zarzÄ…dzanych 59
  • ZarzÄ…dzane usÅ‚ugi Kubernetes 60
    • Google Kubernetes Engine (GKE) 60
    • Automatyczne skalowanie klastra 61
    • UsÅ‚uga Amazon Elastic Container Service dla Kubernetes (EKS) 61
    • UsÅ‚uga Azure Kubernetes Service (AKS) 61
    • OpenShift 62
    • UsÅ‚uga IBM Cloud Kubernetes Service 62
  • RozwiÄ…zania Kubernetes pod klucz 62
    • Containership Kubernetes Engine (CKE) 62
  • Instalatory Kubernetes 63
    • kops 63
    • Kubespray 63
    • TK8 63
    • Kubernetes The Hard Way 64
    • kubeadm 64
    • Tarmak 64
    • Rancher Kubernetes Engine (RKE) 64
    • ModuÅ‚ Puppet dla Kubernetes 65
    • Kubeformation 65
  • Kup lub zbuduj: nasze rekomendacje 65
    • Uruchom mniej oprogramowania 65
    • Skorzystaj z zarzÄ…dzanych usÅ‚ug Kubernetes, jeÅ›li możesz 66
    • A co z uzależnieniem od jednego dostawcy? 66
    • JeÅ›li trzeba, użyj standardowych narzÄ™dzi do samodzielnego hostingu Kubernetes 67
    • Gdy Twoje wybory sÄ… ograniczone 67
    • Bare-metal i on-premise 67
  • Bezklastrowe usÅ‚ugi kontenerowe 68
    • Amazon Fargate 68
    • Azure Container Instances (ACI) 69
  • Podsumowanie 69

4. Praca z obiektami Kubernetes 71

  • Zasoby Deployment 71
    • Nadzór i planowanie 72
    • Restart kontenerów 72
    • Zapytania obiektów Deployment 72
  • Pody 73
  • ReplicaSet 74
  • Utrzymanie pożądanego stanu 74
  • Scheduler 75
  • Manifesty zasobów w formacie YAML 76
    • Zasoby sÄ… danymi 76
    • Manifesty obiektu Deployment 76
    • Polecenie kubectl apply 77
    • Serwis 77
    • Odpytywanie klastra za pomocÄ… polecenia kubectl 80
    • Przenoszenie zasobów na wyższy poziom 80
  • Helm: menadżer pakietów Kubernetes 81
    • Instalacja Helm 81
    • Instalacja wykresu Helm 81
    • Wykresy, repozytoria i wydania 82
    • WyÅ›wietlanie listy wydaÅ„ Helm 82
  • Podsumowanie 83

5. ZarzÄ…dzanie zasobami 85

  • Zrozumienie dziaÅ‚ania zasobów 85
    • Jednostki zasobów 86
    • Żądania zasobów 86
    • Limity zasobów 86
    • Utrzymuj maÅ‚e kontenery 87
  • ZarzÄ…dzanie cyklem życia kontenera 88
    • Sondy żywotnoÅ›ci 88
    • Opóźnienie i czÄ™stotliwość sondy 89
    • Inne typy sond 89
    • Sondy gRPC 89
    • Sondy gotowoÅ›ci 90
    • Sondy gotowoÅ›ci na podstawie pliku 90
    • minReadySeconds 91
    • Budżety zakÅ‚óceÅ„ Poda 91
  • Korzystanie z przestrzeni nazw 92
    • Praca z przestrzeniami nazw 93
    • Jakich przestrzeni nazw powinieneÅ› używać? 93
    • Adresy serwisów 94
    • PrzydziaÅ‚y zasobów (ang. Resource Quotas) 94
    • DomyÅ›lne żądania zasobów i limity 96
  • Optymalizacja kosztów klastra 96
    • Optymalizacja obiektów Deployment 97
    • Optymalizacja Podów 97
    • Vertical Pod Autoscaler 98
    • Optymalizacja wÄ™zÅ‚ów 98
    • Optymalizacja przestrzeni dyskowej 99
    • Czyszczenie nieużywanych zasobów 100
    • Sprawdzanie wolnej pojemnoÅ›ci 102
    • Korzystanie z instancji zastrzeżonych 102
    • Korzystanie z instancji w trybie wywÅ‚aszczeniowym 103
    • Utrzymywanie równowagi obciążeÅ„ 105
  • Podsumowanie 106

6. Operacje na klastrach 109

  • Rozmiar i skalowanie klastra 109
    • Planowanie pojemnoÅ›ci 109
    • WÄ™zÅ‚y i instancje 112
    • Skalowanie klastra 114
  • Sprawdzanie zgodnoÅ›ci 116
    • Certyfikat CNCF 116
    • Testy zgodnoÅ›ci z Sonobuoy 118
  • Walidacja i audyt 118
    • K8Guard 118
    • Copper 119
    • kube-bench 119
    • Dziennik kontroli Kubernetes (ang. Kubernetes audit log) 119
  • Testowanie chaosu 120
    • Tylko produkcja jest produkcjÄ… 120
    • chaoskube 121
    • kube-monkey 121
    • PowerfulSeal 122
  • Podsumowanie 122

7. Narzędzia Kubernetes 125

  • Znowu o kubectl 125
    • Aliasy powÅ‚oki 125
    • Używanie przeÅ‚Ä…czników 126
    • Skracanie typów zasobów 126
    • Automatyczne uzupeÅ‚nianie poleceÅ„ kubectl 126
    • Uzyskiwanie pomocy 127
    • Uzyskiwanie pomocy na temat zasobów Kubernetes 127
    • Bardziej szczegóÅ‚owe wyniki 127
    • Praca z JSON Data i jq 128
    • OglÄ…danie obiektów 129
    • Opisywanie obiektów 129
  • Praca z zasobami 129
    • Imperatywne polecenia kubectl 130
    • Kiedy nie należy używać poleceÅ„ imperatywnych? 130
    • Generowanie manifestów zasobów 131
    • Eksportowanie zasobów 131
    • Åšledzenie różnic w zasobach 132
  • Praca z kontenerami 132
    • PrzeglÄ…danie dzienników kontenera 132
    • PrzyÅ‚Ä…czanie do kontenera 134
    • OglÄ…danie zasobów Kubernetes za pomocÄ… kubespy 134
    • Przekierowanie portu kontenera 134
    • Wykonywanie poleceÅ„ w kontenerach 135
    • RozwiÄ…zywanie problemów w kontenerach 135
    • Korzystanie z poleceÅ„ BusyBox 136
    • Dodawanie BusyBox do kontenerów 137
    • Instalowanie programów w kontenerze 138
    • Debugowanie w czasie rzeczywistym za pomocÄ… kubesquash 138
  • Konteksty i przestrzenie nazw 139
    • kubectx i kubens 140
    • kube-ps1 140
  • PowÅ‚oki i narzÄ™dzia Kubernetes 141
    • kube-shell 141
    • Click 141
    • kubed-sh 141
    • Stern 142
  • Budowanie wÅ‚asnych narzÄ™dzi Kubernetes 142
  • Podsumowanie 143

8. Uruchamianie kontenerów 145

  • Kontenery i Pody 145
    • Co to jest kontener? 146
    • Co należy do kontenera? 147
    • Co należy do Poda? 147
  • Manifesty kontenera 148
    • Identyfikatory obrazu 149
    • Tag latest 149
    • Skróty kontenerów 150
    • Podstawowe tagi obrazu 150
    • Porty 151
    • Żądania i limity dotyczÄ…ce zasobów 151
    • Polityka pobierania obrazu 151
    • Zmienne Å›rodowiskowe 152
  • BezpieczeÅ„stwo kontenerów 152
    • Uruchamianie kontenerów jako użytkownik inny niż root 153
    • Blokowanie kontenerów z uprawnieniami root 153
    • Ustawianie systemu plików tylko do odczytu 154
    • WyÅ‚Ä…czanie eskalacji uprawnieÅ„ 154
    • Mechanizm wÅ‚aÅ›ciwoÅ›ci 155
    • Konteksty bezpieczeÅ„stwa Poda 156
    • Polityka bezpieczeÅ„stwa Poda 156
    • Konta usÅ‚ug Poda 157
  • Woluminy 157
    • Woluminy emptyDir 158
    • Woluminy trwaÅ‚e 159
  • Restart polityk 160
  • Uwierzytelnianie przy pobieraniu obrazu 160
  • Podsumowanie 160

9. ZarzÄ…dzanie Podami 163

  • Etykiety 163
    • Co to sÄ… etykiety? 163
    • Selektory 164
    • Bardziej zaawansowane selektory 164
    • Inne zastosowania etykiet 165
    • Etykiety i adnotacje 166
  • Koligacje wÄ™zÅ‚ów 167
    • Koligacje twarde 167
    • Koligacje miÄ™kkie 168
  • Koligacje Podów i antykoligacje 168
    • Trzymanie Podów razem 169
    • Trzymanie Podów oddzielnie 169
    • Antykoligacje miÄ™kkie 170
    • Kiedy korzystać z koligacji Podów? 170
  • Skazy i tolerancje 171
  • Kontrolery Podów 172
    • DaemonSet 172
    • StatefulSet 173
    • Kontroler Job 174
    • CronJob 175
    • Horizontal Pod Autoscaler 176
    • PodPreset 177
    • Operatory i niestandardowe definicje zasobów (CRD) 178
  • Zasoby Ingress 179
    • ReguÅ‚y Ingress 180
    • ZarzÄ…dzanie poÅ‚Ä…czeniami TLS za pomocÄ… Ingress 180
    • Kontroler Ingress 181
  • Istio 182
  • Envoy 182
  • Podsumowanie 183

10. Konfiguracja i obiekty Secret 185

  • ConfigMap 185
    • Tworzenie ConfigMap 186
    • Ustawianie zmiennych Å›rodowiskowych z obiektu ConfigMap 186
    • Ustawianie Å›rodowiska za pomocÄ… ConfigMap 188
    • Używanie zmiennych Å›rodowiskowych w argumentach poleceÅ„ 189
    • Tworzenie plików konfiguracji z ConfigMaps 190
    • Aktualizacja Podów po zmianie konfiguracji 191
  • Obiekty Secret aplikacji Kubernetes 192
    • Używanie obiektów Secret jako zmiennych Å›rodowiskowych 192
    • Zapisywanie obiektów Secret do plików 193
    • Odczyt obiektów Secret 194
    • DostÄ™p do obiektów Secret 195
    • Szyfrowanie w stanie spoczynku 195
    • Przechowywanie obiektów Secret 195
  • Strategie zarzÄ…dzania obiektami Secret 195
    • Szyfrowanie Secret w systemach kontroli wersji 196
    • Zdalne przechowywanie Secret 197
    • Dedykowane narzÄ™dzie do zarzÄ…dzania obiektami Secret 197
    • Rekomendacje 198
  • Szyfrowanie obiektów Secret za pomocÄ… Sops 198
    • Przedstawiamy Sops 199
    • Szyfrowanie pliku za pomocÄ… Sops 199
    • Korzystanie z zaplecza KMS 201
  • Podsumowanie 201

11. Bezpieczeństwo i kopia zapasowa 203

  • Kontrola dostÄ™pu i uprawnienia 203
    • ZarzÄ…dzanie dostÄ™pem przez klaster 203
    • Kontrola dostÄ™pu oparta na rolach (RBAC) 204
    • Role 204
    • WiÄ…zanie ról z użytkownikami 205
    • Jakich ról potrzebujÄ™? 206
    • Ochrona dostÄ™pu do Cluster-Admin 206
    • Aplikacje i wdrażanie 206
    • RozwiÄ…zywanie problemów z RBAC 207
  • Skanowanie bezpieczeÅ„stwa 208
    • Clair 208
    • Aqua 208
    • Anchore Engine 209
  • Kopie zapasowe 209
    • Czy muszÄ™ wykonać kopiÄ™ zapasowÄ…? 209
    • Tworzenie kopii zapasowej etcd 210
    • Kopia zapasowa stanu zasobów 210
    • Tworzenie kopii zapasowej stanu klastra 210
    • Duże i maÅ‚e katastrofy 211
    • Velero 211
  • Monitorowanie statusu klastra 214
    • kubectl 214
    • Wykorzystanie procesora i pamiÄ™ci 216
    • Konsola dostawcy chmury 216
    • Pulpit Kubernetes (ang. Kubernetes Dashboard) 216
    • Weave Scope 218
    • kube-ops-view 218
    • node-problem-detector 218
  • Dalsza lektura 219
  • Podsumowanie 220

12. Wdrażanie aplikacji Kubernetes 221

  • Budowanie manifestów za pomocÄ… wykresu Helm 221
    • Co znajduje siÄ™ w wykresie narzÄ™dzia Helm? 222
    • Szablony Helm 223
    • Zmienne interpolacyjne 223
    • WartoÅ›ci tekstowe w szablonach 224
    • OkreÅ›lanie zależnoÅ›ci 225
  • Wdrażanie wykresów Helm 225
    • Ustawianie zmiennych 225
    • OkreÅ›lanie opcji podczas instalacji Helm 226
    • Aktualizowanie aplikacji za pomocÄ… Helm 226
    • Powrót do poprzednich wersji 227
    • Tworzenie repozytorium wykresów Helm 227
    • ZarzÄ…dzanie obiektami Secret wykresów Helm za pomocÄ… Sops 228
  • ZarzÄ…dzanie wieloma wykresami za pomocÄ… Helmfile 229
    • Co znajduje siÄ™ w pliku Helmfile? 230
    • Metadane wykresu 231
    • Stosowanie pliku Helmfile 231
  • Zaawansowane narzÄ™dzia do zarzÄ…dzania manifestami 232
    • Tanka 232
    • kapitan 233
    • kustomize 233
    • kompose 233
    • Ansible 234
    • kubeval 234
  • Podsumowanie 235

13. Proces tworzenia oprogramowania 237

  • NarzÄ™dzia programistyczne 237
    • Skaffold 237
    • Draft 238
    • Telepresence 238
    • Knative 238
  • Strategie wdrażania 239
    • Rolling Updates 239
    • Recreate 240
    • maxSurge i maxUnavailable 240
    • Wdrożenia niebiesko-zielone 241
    • Wdrożenia rainbow 242
    • Wdrożenia kanarkowe 242
  • ObsÅ‚uga migracji za pomocÄ… Helm 242
    • Funkcja hook wykresu Helm 243
    • ObsÅ‚uga nieudanych funkcji hook 243
    • Inne funkcje hook 244
    • Kolejność wykonywania funkcji hook 244
  • Podsumowanie 244

14. Ciągłe wdrażanie w Kubernetes 247

  • Co to jest ciÄ…gÅ‚e wdrażanie? 247
  • Z którego narzÄ™dzia CD powinienem skorzystać? 248
    • Jenkins 248
    • Drone 248
    • Google Cloud Build 248
    • Concourse 249
    • Spinaker 249
    • GitLab CI 249
    • Codefresh 249
    • Azure Pipelines 249
  • Komponenty CD 250
    • Docker Hub 250
    • Gitkube 250
    • Flux 250
    • Keel 250
  • Potok CD z wykorzystaniem Google Cloud Build 250
    • Konfigurowanie Google Cloud i GKE 251
    • Kopiowanie repozytorium demo 251
    • Wprowadzenie do Cloud Build 251
    • Budowanie kontenera testowego 252
    • Uruchamianie testów 252
    • Budowanie kontenera aplikacji 253
    • Walidacja manifestów Kubernetes 253
    • Publikowanie obrazu 253
    • Tagi Git SHA 254
    • Tworzenie pierwszego triggera kompilacji 254
    • Testowanie triggera 254
    • Wdrożenie z potoku CD 256
    • Tworzenie triggera wdrażania 258
    • Optymalizacja potoku kompilacji 258
    • Dostosowanie przykÅ‚adowego potoku 259
  • Podsumowanie 259

15. Obserwowalność i monitorowanie 261

  • Co to jest obserwowalność? 261
    • Co to jest monitorowanie? 261
    • Monitorowanie typu czarna skrzynka 261
    • Co oznacza okreÅ›lenie "dziaÅ‚a"? 263
    • Zapisywanie logów 264
    • Przedstawiamy metryki 265
    • Åšledzenie 267
    • Obserwowalność 267
  • Potok obserwowalnoÅ›ci 268
  • Monitorowanie w Kubernetes 269
    • ZewnÄ™trzny monitoring typu czarna skrzynka 269
    • WewnÄ™trzna kontrola aplikacji 271
  • Podsumowanie 272

16. Metryki w Kubernetes 275

  • Czym sÄ… metryki? 275
    • Seria danych w czasie 275
    • Liczniki i mierniki 276
    • Co mogÄ… powiedzieć metryki? 277
  • Wybór dobrych metryk 277
    • UsÅ‚ugi: wzorzec RED 278
    • Zasoby: wzorzec USE 279
    • Metryki biznesowe 279
    • Metryki Kubernetes 280
  • Analizowanie metryk 283
    • Dlaczego nie korzystać z wartoÅ›ci Å›redniej? 284
    • Åšrednie arytmetyczne, mediany i wartoÅ›ci odstajÄ…ce 284
    • Odkrywanie percentyli 284
    • Stosowanie percentyli do danych metryk 285
    • Zwykle chcemy zobaczyć to, co najgorsze 287
    • Co zamiast percentylów? 287
  • Tworzenie wykresów metryk w pulpicie 288
    • Użyj standardowego ukÅ‚adu graficznego dla wszystkich serwisów 288
    • Zbuduj radiator informacji za pomocÄ… pulpitu 289
    • Umieszczanie na pulpicie rzeczy, które ulegajÄ… awarii 291
  • Alarmy na podstawie metryk 291
    • Jakie sÄ… problemy zwiÄ…zane z alarmami? 291
    • Bezbolesna reakcja na żądanie 292
    • Pilne, ważne i przydatne alarmy 293
    • Åšledź swoje alarmy, powiadomienia poza godzinami pracy i pobudki 294
  • NarzÄ™dzia i usÅ‚ugi metryczne 294
    • Prometheus 294
    • Google Stackdriver 296
    • AWS Cloudwatch 297
    • Azure Monitor 297
    • Datadog 297
    • New Relic 298
  • Podsumowanie 299

Posłowie 301

Dodaj do koszyka Kubernetes - rozwiązania chmurowe w świecie DevOps. Tworzenie, wdrażanie i skalowanie nowoczesnych aplikacji chmurowych

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2024 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.