Middle
Čo je nemenná infraštruktúra (Immutable Infrastructure)?
sobes.tech AI
Odpoveď od AI
Tento prístup spočíva v tom, že komponenty infraštruktúry (servery, kontajnery) sa po nasadení nemenia. Akékoľvek zmeny si vyžadujú vytvorenie novej inštancie komponentu s potrebnými konfiguráciami a výmenu starej.
Hlavné myšlienky:
- Jednoduché vrátenie späť: Ak nová verzia spôsobí problémy, je ľahké sa vrátiť k predchádzajúcej, jednoducho nasmerovaním prevádzky na staré, nezmenené inštancie.
- Spoľahlivosť: Odstraňuje riziko "odchýlky konfigurácie" (configuration drift), keď manuálne zmeny na fungujúcich serveroch vedú k nekonzistentným stavom.
- Jednoduché testovanie: Každá nasadená inštancia je postavená rovnakým spôsobom, čo robí vývojové, testovacie a produkčné prostredia podobnejšími.
- Škálovateľnosť: Prístup dobre funguje s horizontálnym škálovaním a automatickou správou klastrov.
Príklady implementácie:
- Použitie obrazov virtuálnych strojov (AMI v AWS) alebo kontajnerov (Docker images), ktoré sa raz vytvoria a po spustení sa nemenia.
- Použitie nástrojov ako Packer na tvorbu obrazov.
- Orchestrátory ako Kubernetes, ktoré spravujú životný cyklus kontajnerov a umožňujú ľahkú výmenu starých podov za nové.
Porovnanie s meniteľnou infraštruktúrou:
| Charakteristika | Meniteľná infraštruktúra | Nemenná infraštruktúra |
|---|---|---|
| Zmeny | Priame na fungujúcich inštanciách | Vytvorí sa nová inštancia, stará sa nahradí |
| Vrátenie | Ťažké, vyžaduje manuálne zásahy | Jednoduché, prechod na staré inštancie |
| Spoľahlivosť | Riziko "odchýlky konfigurácie" | Vysoká konzistentnosť |
| Správa | Často manuálna, konfigurácia | Použitie obrazov, automatizácia |
Tento prístup vyžaduje väčšiu automatizáciu pri tvorbe a nasadzovaní komponentov, ale výrazne zvyšuje predvídateľnosť a spoľahlivosť infraštruktúry.