Facebook - konwersja

  • nowość

Terraform w praktyce. Buduj i automatyzuj infrastrukturę chmurową oraz zarządzaj nią z wykorzystaniem Dockera - ebook

Wydawnictwo:
Format:
EPUB
Data wydania:
9 czerwca 2026
59,90
5990 pkt
punktów Virtualo

Terraform w praktyce. Buduj i automatyzuj infrastrukturę chmurową oraz zarządzaj nią z wykorzystaniem Dockera - ebook

Zarządzaj infrastrukturą jak kodem

 

Terraform to oprogramowanie typu open source umożliwiające zarządzanie infrastrukturą IT jako kodem (IaC, ang. infrastructure as code). Pozwala deklaratywnie zdefiniować zasoby chmurowe - takie jak AWS, Azure czy Google Cloud a także zasoby lokalne przy użyciu języka HCL, a potem zautomatyzować ich wdrażanie, wersjonowanie i modyfikowanie.

To niezwykle popularne narzędzie doczekało się już wielu opracowań. Unikalną cechą tej publikacji jest wskazanie, jak można stworzyć uniwersalne laboratorium z wykorzystaniem kontenerów Docker i tym samym uniknąć problemów związanych z konfiguracją środowiska pod różnymi systemami (Windows, Mac, Linux). Pracując z tą książką, zrealizujesz szesnaście praktycznych projektów obejmujących zagadnienia od podstaw składni HCL, przez zarządzanie plikiem stanu, aż po zaawansowane testowanie kodu i bezpieczeństwo w duchu DevSecOps.

Spis treści

Wstęp: dlaczego Infrastructure as Code?

Część I. Fundamenty i środowisko

  • Rozdział 1. Era Infrastructure as Code (IaC)
    • 1.1. Od manualnej konfiguracji do automatyzacji
    • 1.2. Filarowe zasady nowoczesnej infrastruktury
      • 1. Idempotentność (idempotency)
      • 2. Niezmienność (immutability)
      • 3. Kontrola wersji (version control)
      • 4. Podejście deklaratywne vs. imperatywne
    • 1.3. Podejście deklaratywne - dlaczego Terraform wygrał rynek?
    • 1.4. Krajobraz narzędzi IaC i automatyzacji
      • Kluczowe różnice i jak te narzędzia współpracują
    • 1.5. Architektura Terraforma: core, providerzy i komunikacja RPC
    • 1.6. Sprawdź swoją wiedzę: fundamenty IaC
  • Rozdział 2. Budowa uniwersalnego laboratorium domowego
    • 2.1. Dlaczego Docker? Rozwiązanie problemu "it works on my machine"
    • 2.2. Sprawdź swoją wiedzę: Docker
    • 2.3. Instalacja i konfiguracja Docker Desktop (Windows, macOS, Linux)
      • Faza 1. Instalacja Dockera
    • 2.4. Pierwsze kroki: mapowanie wolumenów i uruchamianie Terraforma w kontenerze
      • Faza 2. Konfiguracja projektu
    • 2.5. Weryfikacja środowiska: Twój pierwszy serwer Nginx w kilka sekund
      • Krok 1. Przygotowanie kodu
      • Krok 2. Inicjalizacja i uruchomienie (faza 3.)

Część II. Cykl życia i składnia (core lifecycle)

  • Rozdział 3. Pierwszy projekt i cykl życia (workflow)
    • 3.1. Anatomia pliku .tf - język HCL w pigułce
    • 3.2. Sprawdź swoją wiedzę: czy już widzisz strukturę HCL?
    • 3.3. Lab 01: podstawy cyklu życia Terraform (The Terraform Core Lifecycle)
      • Krok 1. Przygotowanie struktury projektu
      • Krok 2. Wykonanie cyklu życia
      • Krok 3. Weryfikacja i dowód idempotentności
      • Krok 4. Czyszczenie (destroy)
    • 3.4. Lab 02: zarządzanie wieloma zasobami i zależnościami
      • Krok 1. Aktualizacja pliku main.tf
      • Krok 2. Uruchomienie laboratorium
      • Krok 3. Weryfikacja i analiza
    • 3.5. Sprawdź swoją wiedzę: cykl życia i zależności
    • 3.6. Lab 03: użycie zmiennych (variables) i wyników (outputs) w Terraformie
      • Krok 1. Definicja zmiennych (plik variables.tf)
      • Krok 2. Użycie zmiennych i definicja wyniku (plik main.tf)
      • Krok 3. Wykonanie z własnymi wartościami
      • Krok 4. Walidacja wyniku
    • 3.7. Przykłady z realnego świata (AWS/Azure/GCP)
      • 1. Skalowanie zasobów zależnie od środowiska
      • 2. Dynamiczne tagowanie i nazewnictwo (Azure/GCP)
      • 3. Bezpieczeństwo i dostęp (firewall/security groups)
      • 4. Wykorzystanie wyników (outputs) do automatyzacji
    • 3.8. Sprawdź swoją wiedzę: zmienne i wyniki
  • Rozdział 4. Zarządzanie stanem (state management)
    • 4.1. Plik terraform.tfstate - serce i pamięć systemu
      • Kluczowe funkcje stanu Terraforma
    • 4.2. Anatomia pliku terraform.tfstate
    • 4.3. Lab 04: inspekcja pliku stanu na przykładzie kontenera Nginx
      • Krok 1. Przygotowanie konfiguracji (main.tf)
      • Krok 2. Uruchomienie infrastruktury
      • Krok 3. Inspekcja "pamięci" Terraforma - plik stanu
    • 4.4. Lab 05: wykrywanie rozbieżności (drift detection) - gdy rzeczywistość ucieka spod kontroli
      • Scenariusz 1. Idempotentność w praktyce
      • Scenariusz 2. Wykrywanie driftu (ręczne usunięcie)
      • Scenariusz 3. Zmiana konfiguracji w kodzie
    • 4.5. Zdalne przechowywanie stanu (remote backends)
      • 1. AWS: S3 + DynamoDB (złoty standard)
      • 2. Terraform Cloud (SaaS)
      • 3. Google Cloud Platform (GCS)
      • 4. Microsoft Azure (Blob Storage)
      • Dlaczego warto używać zdalnego stanu?
    • 4.6. Lab 06: izolowanie stanu za pomocą obszarów roboczych (workspaces)
      • Krok 1. Przygotowanie dynamicznej konfiguracji (main.tf)
      • Krok 2. Przygotowanie i czyszczenie
      • Krok 3. Tworzenie nowego środowiska (staging)
      • Krok 4. Weryfikacja i testy
      • Krok 5. Sprzątanie (cleanup)
    • 4.7. Sprawdź swoją wiedzę: stan, drift i workspace

Część III. Skalowanie i zaawansowane koncepcje (advanced core)

  • Rozdział 5. Logika i skalowanie kodu (loops)
    • 5.1. Kiedy kopiuj-wklej to za mało - wprowadzenie do pętli
    • 5.2. Lab 07: pętla count w Terraformie - proste powielanie zasobów
      • Krok 1. Przygotowanie katalogu
      • Krok 2. Konfiguracja main.tf
      • Krok 3. Uruchomienie (skalowanie do 3)
      • Krok 4. Zaawansowane skalowanie (w górę i w dół)
    • 5.3. for_each w Terraformie: potężniejsza i bardziej elastyczna pętla
    • 5.4. Lab 08: dynamiczne tworzenie plików za pomocą mapy
      • Krok 1. Przygotuj katalog roboczy
      • Krok 2. Utwórz plik main.tf
      • Krok 3. Uruchom Terraform
    • 5.5. Bloki dynamiczne (dynamic blocks): dynamiczna konfiguracja zagnieżdżona
      • Przykład kodu z użyciem dynamic block oraz wyjaśnienie kodu
    • 5.6. Lab 09: użycie bloków dynamicznych w Terraformie
      • Krok 1. Przygotowanie konfiguracji (main.tf)
      • Krok 2. Inicjalizacja
      • Krok 3. Wdrożenie
      • Krok 4. Weryfikacja
      • Krok 5. Sprzątanie
    • 5.7. Podsumowanie rozdziału: narzędzia pętli w Terraformie
    • 5.8. Sprawdź swoją wiedzę: pętle i logika
  • Rozdział 6. Modułowość - budowanie wielorazowych klocków
    • 6.1. Czym są moduły i dlaczego warto je tworzyć?
    • 6.2. Struktura modułu: wejścia, logika, wyjścia
      • 1. variables.tf (wejścia - Twoje pokrętła)
      • 2. main.tf (logika - serce modułu)
      • 3. outputs.tf (wyjścia - Twoje wyniki)
    • 6.3. Korzystanie z modułów: lokalne oraz Terraform Registry
      • 1. Moduły lokalne
      • 2. Terraform Registry (moduły zdalne)
    • 6.4. Lab 10: Twój pierwszy moduł static-site na Dockerze
      • Krok 1. Struktura katalogów
      • Krok 2. Tworzenie modułu (wnętrze "klocka")
      • Krok 3. Wywołanie modułu (główny projekt)
      • Krok 4. Uruchomienie
    • 6.5. Podsumowanie rozdziału: dobre praktyki tworzenia modułów
    • 6.6. Sprawdź swoją wiedzę: moduły i reużywalność

Część IV. Gotowość produkcyjna i jakość (production readiness)

  • Rozdział 7. Bezpieczeństwo i sekrety (security)
    • 7.1. Złota zasada: nigdy nie hardkoduj haseł!
    • 7.2. Lab 11: bezpieczne wdrożenie z flagą sensitive i zmiennymi środowiskowymi
      • Krok 1. Przygotowanie środowiska
      • Krok 2. Ustawienie zmiennej w systemie (Twój komputer)
      • Krok 3. Konfiguracja main.tf
      • Krok 4. Inicjalizacja i planowanie (obserwacja)
      • Krok 5. Wdrożenie i weryfikacja
      • Krok 6. Sprzątanie
    • 7.3. Integracja z zewnętrznymi magazynami sekretów
    • 7.4. Podsumowanie rozdziału: fundamenty bezpieczeństwa IaC
    • 7.5. Sprawdź swoją wiedzę: bezpieczeństwo i sekrety
  • Rozdział 8. Obserwowalność (observability) - logowanie i health checki
    • 8.1. Trwałe logowanie (persistent logging)
    • 8.2. Automatyczne testy zdrowia (health checks)
    • 8.3. Lab 12: logi i health check w praktyce
      • Krok 1. Przygotowanie plików
      • Krok 2. Egzekucja
      • Krok 3. Weryfikacja (Twój system)
      • Krok 4. Test trwałości ("The Sledgehammer Test")
    • 8.4. Podsumowanie rozdziału: infrastruktura świadoma i trwała
    • 8.5. Sprawdź swoją wiedzę: obserwowalność i stabilność
  • Rozdział 9. Testowanie i jakość kodu (testing & quality)
    • 9.1. Walidacja kodu Terraforma
    • 9.2. Lab 13: praktyczne testowanie błędów
      • Krok 1. Przygotowanie katalogu roboczego
      • Krok 2. Tworzenie main.tf z celową usterką
      • Krok 3. Inicjalizacja i weryfikacja (testowanie błędu)
      • Krok 4. Naprawa i sukces
      • Krok 5. Finał - uruchomienie kodu
    • 9.3. Estetyka i porządek: terraform fmt
    • 9.4. Lab 14: wielkie sprzątanie kodu
      • Krok 1. Wprowadzenie "bałaganu" do kodu
      • Krok 2. Uruchomienie formatowania
      • Krok 3. Weryfikacja efektów
    • 9.5. Wizualizacja architektury: terraform graph
    • 9.6. Lab 15: wizualizacja zależności (visual testing)
      • Krok 1. Tworzenie main.tf z zależnościami
      • Krok 2. Generowanie grafu (format DOT)
      • Krok 3: Zobaczenie obrazu (bez instalacji narzędzi)
    • 9.7. Zaawansowana analiza z TFLint
    • 9.8. Lab 16: TFLint w akcji
      • Krok 1. Przygotowanie katalogu
      • Krok 2. Tworzenie main.tf z celowymi usterkami
      • Krok 3. Uruchomienie TFLint przez Dockera
      • Krok 4. Naprawa i weryfikacja
    • 9.9. Podsumowanie rozdziału: co zyskaliśmy?
    • 9.10. Sprawdź swoją wiedzę: testowanie i jakość kodu
  • Rozdział 10. Nowy początek - Twoja droga w IaC
    • 10.1. Wskazówki: co dalej?
      • Ścieżka 1. Specjalizacja chmurowa
      • Ścieżka 2. Skalowanie i kolaboracja
    • 10.2. Słowo na pożegnanie

Bibliografia i materiały źródłowe

  • 1. Oficjalne źródła HashiCorp (zawsze aktualne)
  • 2. Książki (głęboka wiedza teoretyczna)
  • 3. Narzędzia jakościowe i analiza (rozszerzenie rozdziału 9.)
  • 4. Społeczność i newsy
  • 5. Spis listingów
  • Ostatnia rada od autora
Kategoria: Programowanie
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-289-4103-8
Rozmiar pliku: 5,4 MB

BESTSELLERY

Menu

Zamknij