Infrastruktura jako kód

Dokončeno

Infrastruktura jako kód (IaC) je proces správy a zřizování prostředků cloudové infrastruktury prostřednictvím strojově čitelného kódu, který je uložený ve správě zdrojového kódu. Schopnost zpracovávat infrastrukturu stejně jako jakýkoli jiný zdrojový kód je důvodem, proč se tento postup nazývá infrastruktura jako kód.

IaC je klíčovou součástí DevOps, protože umožňuje automatizaci konfigurace a nasazení infrastruktury. Tato automatizace zkracuje dobu a úsilí potřebné ke správě a zřizování infrastruktury a zároveň zajišťuje konzistentně a spolehlivě nakonfigurovanou infrastrukturu. IaC také pomáhá zajistit, aby infrastruktura byla zabezpečená a kompatibilní se zásadami organizace.

Nativní azure a nástroje nezávislé na cloudu

Jedním z nejdůležitějších faktorů při výběru nástroje IaC je vaše cloudové prostředí:

  • Nativní nástroje Azure: Nástroje IaC, jako jsou Azure CLI, Azure PowerShell a Bicep, jsou dostupné jenom v Azure. Vzhledem k tomu, že stejná společnost poskytuje jak cloudovou infrastrukturu, tak nástroje IaC, je výhoda kratší než doba mezi vydáním funkcí cloudu a podporou v nástrojích.

  • Nástroje nezávislé na cloudu: Nástroje IaC, jako je Terraform, umožňují spravovat infrastrukturu jako kód napříč hybridními cloudovými prostředími. V závislosti na nástroji IaC nemusí být nově vydané funkce Azure okamžitě podporované.

Imperativní vs. deklarativní nástroje IaC

Existují dva typy konfiguračních nástrojů IaC:

  • IaC imperativní nástroje: imperativní nástroj nebo jazyk je ten, kde kód explicitně určuje, co se má udělat a jak. Kód, který napíšete, provede akce v určitém pořadí po jednom kroku a nakonfiguruje infrastrukturu. Většina imperativních nástrojů IaC není idempotentní, protože konfigurace se provádí krok za krokem.

    Mezi imperativní nástroje IaC pro správu a zřizování prostředků v Azure patří:

    • Azure CLI
    • Azure PowerShell
  • Deklarativní nástroje IaC: Deklarativní nástroj nebo jazyk umožňuje určit požadovaný výsledek, a ne to, jak chcete každý krok dosáhnout. Většina deklarativních nástrojů IaC dodržuje běžný vzor. Po vytvoření definice infrastruktury spustíte příkaz, který zřídí, co jste definovali. Deklarativní nástroje IaC jsou idempotentní, protože konfiguraci je možné použít vícekrát bez ohledu na stav konfigurace infrastruktury. Tato schopnost pomáhá zabránit posunu konfigurace tím, že vrátí nekompatibilní infrastrukturu zpět do souladu s předpisy.

    Mezi deklarativní nástroje IaC pro správu a zřizování prostředků v Azure patří:

    • Bicep
    • Terraform

Doporučení

  • Osvojte si přístup IaC k nasazení, správě, řízení a podpoře nasazení Azure.
  • V následujících scénářích použijte nástroje nativní pro Azure pro IaC:
    • Chcete použít pouze nativní nástroje Azure. Vaše organizace má předchozí zkušenosti s nasazením šablon Azure Resource Manageru (šablon ARM).
    • Vaše organizace chce okamžitou podporu pro všechny verze Preview a obecné dostupnosti (GA) služeb Azure.
  • V následujících scénářích používejte ne nativní nástroje pro IaC:
    • Vaše organizace spravuje infrastrukturu napříč hybridními cloudovými prostředími.
    • Vaše organizace nepotřebuje okamžitou podporu pro všechny verze Preview a verze GA služeb Azure.