O simplă problemă de software într-un singur punct al rețelei extinse a Amazon a declanșat o pană majoră care a durat peste 16 ore. Incidentul, care a afectat Amazon Web Services (AWS) și a perturbat servicii esențiale la nivel global, a fost declanșat de o defecțiune unică care a avut efecte în lanț în cadrul infrastructurii Amazon, conform raportului tehnic al companiei.
Panica a durat 15 ore și 32 de minute, timp în care serviciul DownDetector al companiei de inteligență de rețea Ookla a înregistrat peste 17 milioane de raportări ale serviciilor întrerupte, afectând aproximativ 3,500 de organizații. Cele mai multe raportări au venit din SUA, Marea Britanie și Germania, cu Snapchat, AWS și Roblox fiind cele mai afectate servicii. Ookla a menționat că această întrerupere este „printre cele mai mari pene de internet înregistrate de Downdetector”.
Cauza principală a acestei pene a fost un bug de software în sistemul de gestionare DNS al DynamoDB. Acest sistem monitorizează stabilitatea balansoarelor de încărcare, creând periodic noi configurații DNS pentru punctele terminale din rețeaua AWS. Un „race condition” este o eroare care face un proces dependent de sincronizarea sau secvența evenimentelor, care sunt variabile și scapă de sub controlul dezvoltatorilor, rezultând în comportamente neașteptate și posibil erori grave.
În acest caz, condiția de întrecere a fost identificată în DNS Enactor, o componentă a DynamoDB care actualizează constant tabelele de căutare a domeniilor în punctele terminale AWS pentru a optimiza balansarea încărcăturii pe măsură ce condițiile se schimbă. Pe durata funcționării, enactorul „a întâmpinat întârzieri neobișnuit de mari, necesitând reiterarea actualizării pentru mai multe dintre punctele terminale DNS”. În timp ce acesta încerca să recupereze, un alt component DynamoDB, DNS Planner, continua să genereze noi planuri. Apoi, un alt DNS Enactor a început să implementeze aceste planuri.
Sincronizarea acestor două enactori a declanșat condiția de întrecere, ceea ce a dus la prăbușirea întregului sistem DynamoDB. Conform inginerilor Amazon, când al doilea Enactor (care aplica cel mai recent plan) a finalizat actualizările punctelor terminale, a declanșat procesul de curățare al planurilor, care identifică planurile semnificativ mai vechi decât cel aplicat și le șterge. În același timp, primul Enactor, care fusese întârziat neobișnuit de mult, a aplicat planul său mult mai vechi la punctul terminal regional DDB, suprascriind planul mai nou. Verificarea efectuată la începutul procesului de aplicare a planului, care asigura că planul este mai nou decât planul anterior aplicat, era depășită la acel moment din cauza întârzierilor mari în procesarea Enactorului. Astfel, acest lucru nu a prevenit suprascrierea planului mai vechi cu unul nou. Procesul de curățare al celui de-al doilea Enactor a șters apoi acest plan mai vechi pentru că era cu multe generații mai vechi decât planul tocmai aplicat. Odată cu ștergerea acestui plan, toate adresele IP pentru punctul terminal regional au fost imediat eliminate. Mai mult, deoarece planul activ fusese șters, sistemul a rămas într-o stare incompletă de funcționare.
Poll: Care dintre următoarele servicii a fost cel mai afectat de pana de internet în cadrul infrastructurii Amazon, declanșată de un bug de software în sistemul de gestionare DNS al DynamoDB?


Revista “Ştiinţă şi Tehnică“, cea mai cunoscută şi longevivă publicaţie de popularizare a ştiintelor din România





























Leave a Reply