Co je infrastruktura jako kód (IaC)?
Infrastruktura jako kód (infrastructure as code, IaC) je postup, kdy servery, sítě, databáze a další cloudové zdroje popíšete v textových souborech a nástroj je za vás vytvoří a aktualizuje. Místo ručního proklikávání cloudové konzole napíšete, co chcete mít, uložíte to do verzování a necháte nasadit. Mezi rozšířené nástroje patří Terraform, Pulumi nebo AWS CloudFormation.
Lidsky řečeno
Představte si to jako recept místo vaření po paměti. Recept zvládne každý a pokaždé vznikne stejné jídlo. U IaC je tím receptem vaše infrastruktura: spustíte ho jednou nebo stokrát a dostanete stejné prostředí, bez zapomenutých kroků.
Proč na tom záleží
- Opakovatelná prostředí. Ze stejných souborů postavíte totožné testovací i produkční prostředí, takže „u mě to funguje“ přestane být výmluva.
- Code review a historie. Změny prochází přes pull requesty jako jakýkoli jiný kód. Vidíte, kdo co změnil, a když se něco rozbije, můžete se vrátit zpět.
- Rychlejší obnova. Když vypadne celý region, prostředí postavíte znovu ze souborů. Nemusíte si vzpomínat, co jste loni naklikali.
- Méně ručních chyb. Člověk zapomene zaškrtnout políčko. Definovaný soubor ne.
Na co si dát pozor
- Rozcházení stavu. Někdo upraví zdroj ručně v konzoli a najednou skutečnost neodpovídá vašim souborům. Hned na začátku se domluvte, že zdrojem pravdy je kód.
- Hesla a klíče v souborech. Hesla ani přístupové klíče do IaC souborů nepatří. Použijte správce tajemství a jen na něj odkazujte.
- Jeden obří soubor. Obrovskou konfiguraci nikdo nepřečte ani neprojde v code review. Rozdělte ji na moduly s jasnými hranicemi.
Související články
- Co je DevOps? - Kultura a postupy, do kterých IaC zapadá.
- Co je GitOps? - Použití Gitu jako zdroje pravdy pro nasazení.
- Co je CI/CD pipeline? - Jak automatizované pipeline nasazují změny vaší infrastruktury.
Chcete být o krok napřed?
Nenechte si utéct naše nejlepší postřehy. Žádný spam, jen praktické analýzy, pozvánky na exkluzivní eventy a shrnutí podcastů přímo do vaší schránky.
