reklama - zainteresowany?

Kubernetes. Tworzenie natywnych aplikacji działających w chmurze - Helion

Kubernetes. Tworzenie natywnych aplikacji działających w chmurze
Autor: Michael Hausenblas, Stefan Schimanski
Tytuł oryginału: Programming Kubernetes: Developing Cloud-Native Applications
TÅ‚umaczenie: Tomasz Walczak
ISBN: 978-83-283-6405-9
stron: 256, Format: 168x237, okładka: miękka
Data wydania: 2020-05-26
Księgarnia: Helion

Cena książki: 54,90 zł

Dodaj do koszyka Kubernetes. Tworzenie natywnych aplikacji działających w chmurze

Tagi: Inne - Programowanie | Programowanie w chmurze

Mimo że w 2018 roku Kubernetes zyskaÅ‚ reputacjÄ™ standardowego narzÄ™dzia do zarzÄ…dzania kontenerami, wciąż należy traktować tÄ™ technologiÄ™ jako znajdujÄ…cÄ… siÄ™ w dość wczesnej fazie rozwoju. MożliwoÅ›ci tej platformy z czasem rosnÄ… i stajÄ… siÄ™ coraz ciekawsze. Standardowym dziaÅ‚aniem jest uruchamianie klastrów w Kubernetesie, jednak o wiele bardziej interesujÄ…ce wydaje siÄ™ samodzielne rozszerzanie tej platformy o wÅ‚asne kontrolery i rozbudowa API Kubernetesa w celu dostosowania do swoich wymagaÅ„. W przypadku niektórych zÅ‚ożonych projektów programowanie potrzebnych komponentów jest jedynym racjonalnym rozwiÄ…zaniem.

To książka przeznaczona dla programistów, którzy chcÄ… maksymalnie wykorzystać możliwoÅ›ci Kubernetesa, również poprzez pisanie wÅ‚asnych zasobów. W praktyczny sposób pokazuje, jak rozwijać natywne, dziaÅ‚ajÄ…ce w chmurze aplikacje dla Kubernetesa. WyjaÅ›nia, w jaki sposób dziaÅ‚a biblioteka API client-go i jak należy budować zasoby niestandardowe. ZnalazÅ‚o siÄ™ tu obszerne i szczegóÅ‚owe omówienie interfejsu programowania i dziaÅ‚ania platformy Kubernetes, a także pisania stabilnego oprogramowania w jÄ™zyku Go. Nie zabrakÅ‚o szeregu wskazówek dotyczÄ…cych samego pisania kodu oraz przeprowadzania testów. Dużo uwagi poÅ›wiÄ™cono niestandardowym zasobom, kontrolerom, webhookom i niestandardowym serwerom API oraz wzorcom rozszerzania Kubernetesa.

W tej książce między innymi:

  • zasady programowania dla Kubernetesa
  • API Kubernetesa i client-go
  • korzystanie z niestandardowych zasobów
  • pisanie i udostÄ™pnianie operatorów
  • tworzenie niestandardowych serwerów API

Kubernetes: wykorzystaj w pełni jego potencjał!

Dodaj do koszyka Kubernetes. Tworzenie natywnych aplikacji działających w chmurze

 

Osoby które kupowały "Kubernetes. Tworzenie natywnych aplikacji działających w chmurze", wybierały także:

  • DevOps w praktyce. Kurs video. Jenkins, Ansible, Terraform i Docker
  • Wyrażenia regularne od podstaw
  • Projektowanie systemów rozproszonych. Wzorce i paradygmaty dla skalowalnych, niezawodnych usÅ‚ug
  • Zrozum struktury danych. Algorytmy i praca na danych w Javie
  • Kosymulacja. Elastyczne projektowanie i symulacja wielodomenowa

Dodaj do koszyka Kubernetes. Tworzenie natywnych aplikacji działających w chmurze

Spis treści

Kubernetes. Tworzenie natywnych aplikacji działających w chmurze -- spis treści


Przedmowa 11

1. Wprowadzenie 15

  • Czym jest programowanie dla Kubernetesa? 15
  • PrzykÅ‚ad wprowadzajÄ…cy 17
  • Wzorce rozszerzania 18
  • Kontrolery i operatory 19
    • PÄ™tla sterowania 19
    • Zdarzenia 20
    • Wyzwalacze sterowane zmianami i sterowane poziomem 22
    • Modyfikowanie Å›wiata zewnÄ™trznego lub obiektów w klastrze 24
    • WspóÅ‚bieżność optymistyczna 27
    • Operatory 29
  • Podsumowanie 30

2. Podstawy API Kubernetesa 33

  • Serwer API 33
    • Interfejs HTTP serwera API 34
    • Terminologia zwiÄ…zana z API 35
    • Wersjonowanie API w Kubernetesie 38
    • Deklaratywne zarzÄ…dzanie stanem 39
  • Używanie API w wierszu poleceÅ„ 39
  • W jaki sposób serwer API przetwarza żądania? 43
  • Podsumowanie 46

3. Podstawy klienta client-go 47

  • Repozytoria 47
    • Biblioteka klienta 47
    • Typy w API Kubernetesa 49
    • Repozytorium API Machinery 50
    • Tworzenie i używanie klientów 50
    • Wersjonowanie i kompatybilność 52
    • Wersje API i gwarancje kompatybilnoÅ›ci 55
  • Obiekty Kubernetesa w Go 56
    • TypeMeta 57
    • ObjectMeta 60
    • Sekcje spec i status 60
  • Zbiory klientów 61
    • Podzasoby status - UpdateStatus 63
    • WyÅ›wietlanie i usuwanie obiektów 63
    • Czujki 63
    • Rozszerzanie klientów 64
    • Opcje klientów 65
  • Informatory i buforowanie 66
    • Kolejka zadaÅ„ 70
  • Repozytorium API Machinery - szczegóÅ‚y 72
    • Rodzaje 72
    • Zasoby 72
    • Odwzorowania REST 73
    • Schemat 74
  • Vendoring 75
    • glide 76
    • dep 76
    • ModuÅ‚y jÄ™zyka Go 77
  • Podsumowanie 78

4. Używanie niestandardowych zasobów 79

  • Wykrywanie informacji 81
  • Definicje typów 82
  • Zaawansowane mechanizmy niestandardowych zasobów 84
    • Sprawdzanie poprawnoÅ›ci niestandardowych zasobów 84
    • Kategorie i krótkie nazwy 86
    • WyÅ›wietlane kolumny 88
    • Podzasoby 89
  • Niestandardowe zasoby z perspektywy programisty 93
    • Klient dynamiczny 93
    • Klienty typizowane 95
    • Klient controller-runtime z narzÄ™dzi Operator SDK i Kubebuilder 99
  • Podsumowanie 101

5. Automatyzowanie generowania kodu 103

  • Po co stosować generatory kodu? 103
  • WywoÅ‚ywanie generatorów 103
  • Kontrolowanie generatorów za pomocÄ… znaczników 105
    • Znaczniki globalne 106
    • Znaczniki lokalne 107
    • Znaczniki dla generatora deepcopy-gen 108
    • runtime.Object i DeepCopyObject 108
    • Znaczniki dla generatora client-gen 109
    • Generatory informer-gen i lister-gen 111
  • Podsumowanie 111

6. NarzÄ™dzia sÅ‚użące do tworzenia operatorów 113

  • CzynnoÅ›ci wstÄ™pne 113
  • Wzorowanie siÄ™ na projekcie sample-controller 114
    • Przygotowania 114
    • Logika biznesowa 115
  • Kubebuilder 121
    • Przygotowania 122
    • Logika biznesowa 126
  • Operator SDK 130
    • Przygotowania 131
    • Logika biznesowa 132
  • Inne podejÅ›cia 135
  • Wnioski i przyszÅ‚e kierunki rozwoju 136
  • Podsumowanie 136

7. UdostÄ™pnianie kontrolerów i operatorów 137

  • ZarzÄ…dzanie cyklem życia i pakowanie 137
    • Pakowanie - trudnoÅ›ci 137
    • Helm 138
    • Kustomize 140
    • Inne techniki pakowania kodu 142
    • Najlepsze praktyki z obszaru pakowania kodu 143
    • ZarzÄ…dzanie cyklem życia 143
  • Instalacje gotowe do użytku w Å›rodowisku produkcyjnym 144
    • Odpowiednie uprawnienia 144
    • Zautomatyzowany proces budowania i testowania 147
    • Niestandardowe kontrolery i obserwowalność 148
  • Podsumowanie 151

8. Niestandardowe serwery API 153

  • Scenariusze stosowania niestandardowych serwerów API 153
  • PrzykÅ‚ad - pizzeria 155
  • Architektura - agregowanie 156
    • UsÅ‚ugi API 157
    • WewnÄ™trzna struktura niestandardowego serwera API 160
    • Delegowane uwierzytelnianie i obsÅ‚uga zaufania 161
    • Delegowana autoryzacja 162
  • Pisanie niestandardowych serwerów API 164
    • Wzorzec opcji i konfiguracji oraz szablonowy kod potrzebny do uruchomienia serwera 165
    • Pierwsze uruchomienie 171
    • Typy wewnÄ™trzne i konwersja 172
    • Pisanie typów API 175
    • Konwersje 176
    • Ustawianie wartoÅ›ci domyÅ›lnych 179
    • Testowanie konwersji powrotnych 181
    • Sprawdzanie poprawnoÅ›ci 183
    • Rejestr i strategia 185
    • Instalowanie API 189
    • Kontrola dostÄ™pu 192
  • Instalowanie niestandardowych serwerów API 201
    • Manifesty instalacji 202
    • Konfigurowanie systemu RBAC 204
    • Uruchamianie niestandardowego serwera API bez zabezpieczeÅ„ 205
    • Certyfikaty i zaufanie 207
    • WspóÅ‚dzielenie systemu etcd 209
  • Podsumowanie 211

9. Zaawansowane zasoby niestandardowe 213

  • Wersjonowanie niestandardowych zasobów 213
    • Poprawianie kodu do obsÅ‚ugi pizzerii 214
    • Architektura webhooków konwersji 216
    • Implementacja webhooka konwersji 220
    • Przygotowywanie serwera HTTPS 220
    • Instalowanie webhooka konwersji 226
    • Konwersja w praktyce 227
  • Webhooki kontroli dostÄ™pu 229
    • Wymogi zwiÄ…zane z kontrolÄ… dostÄ™pu w przykÅ‚adzie 230
    • Architektura webhooków kontroli dostÄ™pu 231
    • Rejestrowanie webhooków kontroli dostÄ™pu 233
    • Implementowanie webhooka kontroli dostÄ™pu 234
    • Webhook kontroli dostÄ™pu w praktyce 239
  • Schematy strukturalne i przyszÅ‚ość definicji CRD 240
    • Schematy strukturalne 240
    • Okrajanie a zachowywanie nieznanych pól 242
    • Sterowanie okrajaniem 243
    • IntOrString i RawExtension 244
    • WartoÅ›ci domyÅ›lne 244
  • Podsumowanie 246

A. Materiały 247

Dodaj do koszyka Kubernetes. Tworzenie natywnych aplikacji działających w chmurze

Code, Publish & WebDesing by CATALIST.com.pl



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