Sobes.tech
Middle

Kas ir nemainīga infrastruktūra (Immutable Infrastructure)?

sobes.tech AI

Atbilde no AI

Šī pieeja, kurā infrastruktūras komponenti (serveri, konteineri) netiek mainīti pēc izvietošanas. Jebkuras izmaiņas prasa jauna komponenta eksemplāra izveidi ar nepieciešamajām konfigurācijām un vecā aizvietošanu:

Galvenās idejas:

  • Vienkāršība atjaunošanā: Ja jaunā versija rada problēmas, viegli atgriezties pie iepriekšējās, vienkārši novirzot trafiku uz vecajiem, nemainītajiem eksemplāriem.
  • Uzticamība: Novērš "konfigurācijas novirzes" (configuration drift) risku, kad manuāli veiktas izmaiņas darbojošos serveros noved pie nesaskaņotām stāvokļiem.
  • Testēšanas vienkāršība: Katrs izvietojamais eksemplārs tiek būvēts vienādi, padarot izstrādes, testēšanas un ražošanas vidi līdzīgākas.
  • Mērogojamība: Šī pieeja labi sader ar horizontālo mērogošanu un automātisko klasteru pārvaldību.

Realizācijas piemēri:

  • Izmantojot virtuālo mašīnu attēlus (AMI AWS) vai konteinerus (Docker images), kas tiek būvēti vienreiz un pēc palaišanas nemainās.
  • Packer rīku izmantošana attēlu veidošanai.
  • Kubernetes tipa orkestratori, kas pārvalda konteineru dzīves ciklu un ļauj viegli aizstāt vecos podus ar jaunajiem.

Salīdzinājums ar maināmo infrastruktūru:

Raksturlielums Maināma infrastruktūra Nemaināma infrastruktūra
Izmaiņas Tiek veiktas tieši darbībā esošajos eksemplāros Tiek izveidots jauns eksemplārs, vecais aizvietots
Atjaunošana Grūti, prasa manuālas darbības Vienkārši, pārslēdzoties uz vecajiem eksemplāriem
Uzticamība Konfigurācijas novirzes risks Augsta konsekvence
Vadība Bieži manuāla vadība, konfigurācija Attēlu izmantošana, automatizācija

Šī pieeja prasa lielāku automatizāciju komponentu izveidē un izvietošanā, taču ievērojami uzlabo infrastruktūras prognozējamību un uzticamību.