Szczegóły ebooka

Amazon Web Services w akcji. Wydanie II

Amazon Web Services w akcji. Wydanie II

Andreas Wittig, Michael Wittig

Ebook

Platforma Amazon Web Services jest uważana za największą i najdojrzalszą chmurę obliczeniową. Oferuje ponad setkę gotowych usług, praktycznie niewyczerpywalne zasoby mocy obliczeniowej, nieograniczone bezpieczne magazynowanie oraz pierwszorzędne możliwości automatyzacji. Jest przy tym nieustannie unowocześniana i udostępnia coraz to nowsze możliwości. Pozwala na tworzenie i utrzymanie aplikacji w elastyczny i niezawodny sposób. Dla wielu organizacji decyzja o migracji infrastruktury informatycznej na platformę AWS okazała się strzałem w dziesiątkę. Aby z powodzeniem przeprowadzić taką transformację, konieczne jest uzyskanie wiedzy na temat platformy Amazon Web Services i zrozumienie związanych z nią koncepcji.

To drugie, uaktualnione wydanie kompletnego wprowadzenia do wdrażania aplikacji w chmurze AWS. Dokładnie opisano w nim usługi dostarczające instancje obliczeniowe, przestrzeń na dane i zapewniające pracę w sieci. Wyjaśniono koncepcje niezbędne do uruchomienia aplikacji WWW na platformie AWS: równoważenie obciążenia, maszyny wirtualne, magazynowanie plików, systemy baz danych i buforowanie w pamięci. Przedstawiono też zagadnienia wysokiej dostępności, odporności na błędy oraz dynamicznego skalowania infrastruktury. Dużą zaletą książki jest omówienie zautomatyzowanego zarządzania infrastrukturą za pomocą usługi AWS CloudFormation. Sporo uwagi poświęcono także różnym aspektom bezpieczeństwa w chmurze.

Najciekawsze zagadnienia:

  • koncepcje związane z Amazon Web Services, w tym maszyny wirtualne i EC2
  • automatyzacja infrastruktury i wdrażanie oprogramowania na platformie AWS
  • skalowalność i bezpieczeństwo infrastruktury w chmurze AWS
  • najprzydatniejsze usługi AWS: S3, EBS, EFS, RDS i wiele innych
  • wysoka dostępność i niezawodność infrastruktury
  • tworzenie odpornych na błędy usług sieciowych

Amazon Web Services: już dziś zaprojektuj system przyszłości!

Bracia Andreas Wittig i Michael Wittig są inżynierami oprogramowania. Stosują podejście DevOps i specjalizują się we wdrażaniu rozwiązań opartych na chmurze AWS. Koncentrują się na zagadnieniach infrastruktury jako kodu, ciągłego wdrażania, przetwarzania bezserwerowego, zabezpieczeń i tworzenia produktów typu SaaS. Obaj zdobyli certyfikaty AWS Certified Solutions Architect - Professional i AWS Certified DevOps Engineer - Professional. Ich wspólną pasją jest dzielenie się wiedzą.


Przedmowa 9

Wprowadzenie 11

Podziękowania 13

O książce 15

O autorach 19

CZĘŚĆ I. PIERWSZE KROKI 21

Rozdział 1. Czym jest platforma Amazon Web Services? 23

  • 1.1. Czym jest chmura obliczeniowa? 24
  • 1.2. Co da się zrobić na platformie AWS? 25
  • 1.3. Jakie korzyści płyną z użycia platformy AWS? 30
  • 1.4. Ile to kosztuje? 33
  • 1.5. Porównanie z alternatywnymi rozwiązaniami 36
  • 1.6. Odkrywanie usług AWS 37
  • 1.7. Interakcja z platformą AWS 40
  • 1.8. Tworzenie konta AWS 44
  • 1.9. Tworzenie alarmu dotyczącego płatności w celu kontroli rachunków z platformy AWS 53
  • Podsumowanie 57

Rozdział 2. Prosty przykład: aplikacja WordPress w pięć minut 59

  • 2.1. Tworzenie infrastruktury 60
  • 2.2. Poznawanie infrastruktury 65
  • 2.3. Ile to kosztuje? 74
  • 2.4. Usuwanie infrastruktury 77
  • Podsumowanie 78

CZĘŚĆ II. BUDOWANIE WIRTUALNEJ INFRASTRUKTURY KOMPUTERÓW I SIECI 79

Rozdział 3. Korzystanie z maszyn wirtualnych - usługa EC2 81

  • 3.1. Badanie maszyny wirtualnej 82
  • 3.2. Monitorowanie i debugowanie maszyny wirtualnej 97
  • 3.3. Wyłączanie maszyny wirtualnej 100
  • 3.4. Zmiana rozmiaru maszyny wirtualnej 101
  • 3.5. Uruchamianie maszyny wirtualnej w innym centrum danych 104
  • 3.6. Przydzielanie publicznego adresu IP 108
  • 3.7. Dodawanie do maszyny wirtualnej dodatkowego interfejsu sieciowego 110
  • 3.8. Optymalizowanie kosztów maszyn wirtualnych 115
  • Podsumowanie 123

Rozdział 4. Programowanie infrastruktury: wiersz poleceń, zestawy SDK i usługa CloudFormation 125

  • 4.1. Infrastruktura jako kod 127
  • 4.2. Korzystanie z interfejsu wiersza poleceń 132
  • 4.3. Programowanie przy użyciu zestawu SDK 140
  • 4.4. Uruchamianie maszyny wirtualnej przy użyciu strategii 145
  • Podsumowanie 157

Rozdział 5. Automatyzacja wdrażania: usługi CloudFormation, Elastic Beanstalk i OpsWorks 159

  • 5.1. Wdrażanie aplikacji w elastycznym środowisku chmury 161
  • 5.2. Porównanie narzędzi do wdrażania 161
  • 5.3. Tworzenie maszyny wirtualnej w usłudze AWS CloudFormation i uruchamianie podczas rozruchu skryptu wdrożeniowego 163
  • 5.4. Wdrażanie prostej aplikacji internetowej w usłudze AWS Elastic Beanstalk 169
  • 5.5. Wdrażanie aplikacji wielowarstwowej za pomocą usługi AWS OpsWorks Stacks 175
  • Podsumowanie 188

Rozdział 6. Bezpieczeństwo systemu: usługa IAM, grupy zabezpieczeń i sieci VPC 189

  • 6.1. Kto odpowiada za bezpieczeństwo? 191
  • 6.2. Utrzymywanie aktualności oprogramowania 192
  • 6.3. Zabezpieczanie konta AWS 195
  • 6.4. Kontrola ruchu sieciowego przychodzącego do maszyny wirtualnej i z niej wychodzącego 204
  • 6.5. Tworzenie sieci prywatnej w chmurze: usługa Amazon Virtual Private Cloud (VPC) 213
  • Podsumowanie 222

Rozdział 7. Automatyzacja zadań eksploatacyjnych dzięki usłudze Lambda 223

  • 7.1. Wykonywanie kodu w usłudze AWS Lambda 224
  • 7.2. Budowanie rozwiązania do kontroli kondycji witryny internetowej w usłudze AWS Lambda 226
  • 7.3. Automatyczne dodawanie tagu z właścicielem instancji EC2 243
  • 7.4. Co jeszcze można zrobić za pomocą usługi AWS Lambda? 251
  • Podsumowanie 256

CZĘŚĆ III. PRZECHOWYWANIE DANYCH W CHMURZE 257

Rozdział 8. Przechowywanie obiektów: usługi S3 i Glacier 259

  • 8.1. Czym jest magazyn obiektów? 260
  • 8.2. Usługa Amazon S3 261
  • 8.3. Tworzenie kopii zapasowej danych w usłudze S3 za pomocą interfejsu CLI platformy AWS 262
  • 8.4. Archiwizacja obiektów w celu optymalizacji kosztów 265
  • 8.5. Magazynowanie obiektów w sposób programowy 272
  • 8.6. Użycie usługi S3 do hostingu statycznej strony WWW 276
  • 8.7. Dobre praktyki przy korzystaniu z usługi S3 279
  • Podsumowanie 282

Rozdział 9. Przechowywanie danych na dyskach twardych: usługa EBS i magazyn instancji 283

  • 9.1. Usługa EBS: trwały magazyn blokowy dołączany za pośrednictwem sieci 285
  • 9.2. Magazyn instancji: tymczasowy magazyn blokowy 293
  • Podsumowanie 298

Rozdział 10. Współdzielenie woluminów danych przez maszyny wirtualne: usługa EFS 299

  • 10.1. Tworzenie systemu plików 302
  • 10.2. Tworzenie punktu docelowego montowania 303
  • 10.3. Montowanie udziału EFS w instancjach EC2 305
  • 10.4. Współdzielenie plików przez różne instancje EC2 308
  • 10.5. Poprawianie wydajności 309
  • 10.6. Monitorowanie systemu plików 311
  • 10.7. Tworzenie kopii zapasowych danych 314
  • Podsumowanie 318

Rozdział 11. Korzystanie z usługi relacyjnych baz danych: RDS 319

  • 11.1. Uruchamianie bazy danych MySQL 321
  • 11.2. Importowanie danych do bazy 325
  • 11.3. Tworzenie kopii zapasowej bazy i przywracanie z niej danych 328
  • 11.4. Kontrola dostępu do bazy danych 333
  • 11.5. Opieranie się na bazach danych o wysokiej dostępności 336
  • 11.6. Poprawianie wydajności bazy danych 338
  • 11.7. Monitorowanie bazy danych 342
  • Podsumowanie 344

Rozdział 12. Buforowanie danych w pamięci: usługa Amazon ElastiCache 345

  • 12.1. Tworzenie klastra pamięci podręcznej 351
  • 12.2. Opcje wdrażania pamięci podręcznej 354
  • 12.3. Kontrola dostępu do pamięci podręcznej 358
  • 12.4. Instalacja przykładowej aplikacji Discourse za pomocą usługi CloudFormation 360
  • 12.5. Monitorowanie pamięci podręcznej 368
  • 12.6. Poprawianie wydajności pamięci podręcznej 370
  • Podsumowanie 373

Rozdział 13. Programowanie z użyciem usługi bazy danych NoSQL: DynamoDB 375

  • 13.1. Eksploatacja usługi DynamoDB 378
  • 13.2. Usługa DynamoDB dla programistów 379
  • 13.3. Programowanie aplikacji z listą zadań 382
  • 13.4. Tworzenie tabel 384
  • 13.5. Dodawanie danych 388
  • 13.6. Pobieranie danych 391
  • 13.7. Usuwanie danych 399
  • 13.8. Modyfikowanie danych 400
  • 13.9. Skalowanie wydajności 401
  • Podsumowanie 405

CZĘŚĆ IV. ARCHITEKTURA OPROGRAMOWANIA W CHMURZE AWS 407

Rozdział 14. Osiąganie wysokiej dostępności: strefy dostępności, skalowanie automatyczne i usługa CloudWatch 409

  • 14.1. Odzyskiwanie sprawności po awarii instancji EC2 dzięki usłudze CloudWatch 411
  • 14.2. Przywracanie sprawności po awarii całego centrum danych 418
  • 14.3. Analiza wymogów dotyczących przywracania po awarii 437
  • Podsumowanie 439

Rozdział 15. Odłączanie - usługi ELB i SQS 441

  • 15.1. Odłączanie synchroniczne za pomocą modułów równoważenia obciążenia 443
  • 15.2. Asynchroniczne odłączanie za pomocą kolejek komunikatów 448
  • Podsumowanie 458

Rozdział 16. Projektowanie pod kątem odporności na błędy 459

  • 16.1. Wykorzystanie nadmiarowych instancji EC2 w celu poprawy dostępności 462
  • 16.2. Uwagi dotyczące zapewnienia w kodzie odporności na błędy 465
  • 16.3. Budowa odpornej na błędy aplikacji internetowej: Imagery 469
  • Podsumowanie 490

Rozdział 17. Skalowanie w górę i w dół: skalowanie automatyczne i usługa CloudWatch 491

  • 17.1. Zarządzanie dynamiczną pulą instancji EC2 493
  • 17.2. Wyzwalanie skalowania na podstawie wskaźników lub harmonogramów 497
  • 17.3. Odłączanie dynamicznej puli instancji EC2 502
  • Podsumowanie 513
  • Tytuł: Amazon Web Services w akcji. Wydanie II
  • Autor: Andreas Wittig, Michael Wittig
  • Tytuł oryginału: Amazon Web Services in Action, 2nd Edition
  • Tłumaczenie: Krzysztof Bąbol
  • ISBN: 978-83-283-6315-1, 9788328363151
  • Data wydania: 2020-05-18
  • Format: Ebook
  • Identyfikator pozycji: amwes2
  • Wydawca: Helion