aproximadament
Publicat el 12 de diciembre de 2022

Chaos engineering: ¿què és y com funciona?

Chaos engineering: ¿què és y com funciona?

Què faries si en entrar en un CPD et trobessis una sala amb centenars de cables enredats? Què faries si haguessis de desenredar-los i organitzar-los? Una possible solució seria triar un cable a l'atzar i desendollar-lo per observar-ne el resultat i etiquetar el cable en conseqüència. Al món de la programació aquesta tasca s'ha convertit en tota una disciplina: chaos engineering.

Chaos engineering s'utilitza per prevenir errors i conèixer millor el sistema

 ¿Què és chaos engineering?

Chaos engineering és la disciplina que, mitjançant l'experimentació controlada, millora la capacitat d'adaptació d'un sistema distribuït davant una situació adversa.

I quin tipus de situacions té com a objectiu evitar la metodologia de chaos engineering? El tipus de situacions que provoca grans pèrdues econòmiques a les empreses, com ara els talls de servei. El 2019, s'estima que Facebook va perdre 90 milions de dòlars després d'una caiguda dels seus servidors durant tan sols 14 hores. Per altra banda, l'empresa Delta Airlines va patir un impacte d'uns 150 milions de dòlars després d'un tall d'energia que va provocar la cancel·lació de més de 2.000 vols.

Netflix, WhatsApp, Instagram, HBO… són moltes de les plataformes que deixen de funcionar sense previ avís a l'usuari i que posen en un seriós compromís els programadors i les programadores de les seves empreses, obligant-los a treballar a contrarellotge i sota extrema pressió. La metodologia chaos engineering busca posar fi a aquest tipus de situacions avançant-se als esdeveniments, predint els possibles errors i automatitzant les possibles solucions. El seu funcionament no dista gaire del perfil de Site Reliability Engineer. Tots dos busquen una millor estabilitat del sistema i preveuen errors, i, per tant, comparteixen departament en moltes organitzacions.

Com funciona la metodologia chaos engineering?

Els passos de la metodologia chaos engineering no són tan senzills com l'exemple de la sala enredada de cables. Aquesta disciplina no consisteix a trencar el sistema aleatòriament i observar els resultats, requereix un procediment segur i ben descrit:

  1. Definició de l'estat actual del sistema.
  2. Llançament d'una hipòtesi positiva per provar un experiment que trastoqui en gran mesura l'estabilitat del sistema.
  3. Definició d'un entorn que garanteixi un impacte mínim i limiti el nombre d'usuaris afectats.
  4. Identificació de mètriques i preparació de la monitorització en temps real del sistema.
  5. Notificació a tots els departaments que es puguin veure afectats per l'experiment.
  6. Execució de l'experiment.
  7. Anàlisi dels resultats basat en mètriques.
  8. Nova execució de l'experiment amb un increment de l'abast al sistema.
  9. Automatització per a la solució de possibles escenaris futurs semblants.


Aquests passos no només asseguren que el sistema suporti l'error o que ara estigui preparat per solucionar-lo, sinó que comproven i milloren la monitorització en temps real, i entrenen els equips per identificar i resoldre problemes reals amb més rapidesa i eficàcia.

Chaos engineering és una bona sortida professional per als programadors especialitzats en sistemes distribuïts al núvol

És chaos engineering una bona sortida professional?

La metodologia chaos engineering no és una disciplina que estigui fent els seus primers passos. A finals de 2010, Netflix va publicar al seu bloc l'article 5 Lessons We’ve Learned Using AWS per explicar la importància del núvol i els sistemes distribuïts i, també, la complexitat de la seva gestió. Ja aleshores van crear un conjunt de solucions anomenat Chaos Monkey per provocar errors als servidors i observar com afectaven la seva infraestructura.


Així va néixer chaos engineering, una metodologia que no ha parat de perfeccionar-se des de llavors i que està en ple creixement gràcies a l'èxit de l'emmagatzematge al núvol, les xarxes socials i les plataformes d'entreteniment en línia.


Igual que el control de versions, chaos engineering es presenta com una eina molt útil i absolutament necessària per al món de la programació i el manteniment de sistemes. Si la teva passió és la informàtica i et mous com peix a l'aigua en els sistemes distribuïts, no ho dubtis i fes un gir professional a la teva carrera amb BETWEEN!

Etiquetes: IT

Articles Relacionats

Chaos engineering: ¿què és y com funciona?

Creies que ja ho havies vist tot al món de l'edificació? Com les fàbriques tradicionals amb OPC UA, l'edge computing i els cobots, el món de la construcció està fent els primers ...

( de lectura )

Topics: IT

Chaos engineering: ¿què és y com funciona?

Fa uns mesos parlàvem sobre la seguretat en el desenvolupament de programari, un dels aspectes més importants d'un projecte. Avui parlarem sobre un altre pilar bàsic del món de la ...

( de lectura )

Topics: IT

Chaos engineering: ¿què és y com funciona?

La reinvenció de les fàbriques tradicionals com smart factories serà determinant per maximitzar la producció i competir al mercat futur. Però... com superar les barreres dels ...

( de lectura )

Topics: IT