Dedikált káoszmérnökök a Netflixnél
A Netflix nem csak a szolgáltatása és az egyedi tartalmak miatt érdekes, a rendszer műszaki háttere is egészen egyedi. A rendszeres, véletlenszerű leállásokat generáló scriptek már régóta ismertek, a fejlesztési metodológiát most új szervezeti szintre emeli a cég.
Magasabb szintre emeli sajátos fejlesztési metodológiáját a Netflix - jelentette be a cég. A hibatűrő rendszerek tervezésében a cég eddig is egyéni utat járt, felhős infrastruktúráját szándékosan előidézett véletlen hibákkal tesztelte. Ez a módszer a jövőben is marad, de ezután külön csapat foglalkozik majd azzal, hogy leállási forgatókönyveket eszeljen ki, majd azt a cég infrastruktúráján ki is próbálja.
A post mortemen túl
A hibatűrő rendszerek építésének egyik legnagyobb kihívása, hogy a "teszt", vagyis a tulajdonképpeni leállás rendszerint nagyon ritka, így a megtervezett rendszer koncepciójának vagy megvalósításának hibája sokszor csak éles helyzetben jön elő - amikor már késő azt javítani. A Netflix hosszú ideje sajátos metodológiát használ a hibatűrő szolgáltatás építésére: újabb és újabb, káoszt generáló scripteket enged szabadon a rendszerben, majd figyeli, hogy egyes hálózati eszközök, virtuális gépek, háttérszolgáltatások leállása milyen hatással van az egész rendszerre. Ha az üzemeltetők valahol problémát észlelnek, akkor a kérdéses részt megerősítik, újabb redundáns réteget építenek be.
"Az általános iparági gyakorlat a kimaradások után a hibáztatás nélküli hibafelmérés" - mondja a Netflix "káoszparancsnoka", Bruce Wong. Ez azt jelenti, hogy a leállás után a mérnökök a logok és egyéb adatok alapján visszakeresik a hibát, arról részletes jelentést írnak, majd igyekeznek közvetlen, illetve általánosabb tanulságokat leszűrni, azok alapján pedig műszaki, módszertani vagy szervezeti változtatásokat eszközölni. "Ezt mi is alkalmazzuk, azonban ezzel párhuzamosan új káosz-eszközöket is építünk, amelyekkel szisztematikusan teszteljük rendszereink hibatűrését."
Ünnepi mix a bértranszparenciától a kódoló vezetőkig Négy IT karrierrel kapcsolatos, érdekes témát csomagoltunk a karácsonyfa alá.
Az új csapat feladata lesz kreatív új leállási forgatókönyveket kitalálni, feltérképezni az infrastruktúra gyenge pontjait, majd eszközöket írni, amelyek ezeket tesztelik. Az új koncepcióban a híressé vált "majomhadsereg" (simian army), a nyílt forráskódú, káoszt okozó algoritmusok egy egész szimulációvá állnak össze, amely az éles rendszertől elkülönítetten fut.
Ennél bonyolultabb, és sokszor kevés figyelmet kapó feladat, hogy a csoport a teljes infrastruktúrát elemzi majd, egységes egészként. Gyakori ugyanis, hogy egy nagy szervezetben egy-egy hibalehetőséget csak lokálisan javítanak a fejlesztő-üzemeltetők, miközben a rendszer más pontjain ugyanaz a gyengeség hosszú ideig tovább létezik, és idővel akár leálláshoz vezet - miközben valaki valahol egyszer már dokumentálta és javította azt.