Úvod

Dokončeno

Infrastruktura jako kód (IaC) představuje základní metodologii DevOps, která týmům umožňuje spravovat infrastrukturu prostřednictvím kódu místo ručních procesů. Tento přístup se stal zásadním předpokladem pro moderní doručování softwaru – mnoho odborníků považuje IaC za předpoklad úspěšné implementace DevOps.

Místo ruční konfigurace serverů nebo použití jednorázových skriptů zachází IaC s infrastrukturou stejným způsobem, jakým vývojáři zachází s kódem aplikace. To znamená, že vaše sítě, servery a další prostředky jsou definované v souborech řízených verzí, které je možné kontrolovat, testovat a nasazovat konzistentně.

Mezi klíčové principy IaC patří:

  • Správa verzí: Definice infrastruktury uložené v Gitu nebo v jiných systémech správy verzí
  • Automatizované testování: Změny infrastruktury se ověřovaly před nasazením.
  • Průběžné monitorování: Stav infrastruktury je sledovaný a spravovaný.
  • Reprodukovatelnost: Stejná konfigurace pokaždé vytvoří identické výsledky.

Moderní cloudové platformy, jako jsou Azure, AWS a Google Cloud, poskytují elastické prostředky na vyžádání. Aby bylo možné tuto flexibilitu plně využít, musí organizace přijmout postupy IaC v celém portfoliu infrastruktury. Nástroje, jako jsou šablony Azure Resource Manageru (ARM), Terraform, Bicep a Ansible, umožňují týmům zřizovat a konfigurovat infrastrukturu prostřednictvím kódu programu.

Tento modul zkoumá základní koncepty IaC, strategie nasazení prostředí a přístupy ke správě konfigurací. Dozvíte se o imperativních a deklarativních stylech konfigurace a idempotentních operacích, které zajišťují konzistentní výsledky.

Studijní cíle

Po dokončení tohoto modulu budete umět:

  • Implementujte automatizaci nasazení prostředí pomocí infrastruktury jako kódu.
  • Návrh strategií správy konfigurace pomocí správy verzí
  • Vyberte si mezi imperativními a deklarativními přístupy ke konfiguraci.
  • Použijte zásady idempotentní konfigurace pro konzistentní infrastrukturu.

Požadavky

  • Znalost principů a postupů DevOps
  • Znalost systémů správy verzí (užitečné, ale nevyžaduje se).
  • Základní znalost konceptů cloud computingu