En programfel i Amazon Web Services DynamoDB DNS-hanteringsystem utlöste ett 15 timmar långt avbrott som påverkade miljontals människor världen över. Felet uppstod i regionen US-East-1 och spred sig till att påverka tjänster som Snapchat och Roblox. Amazon-ingenjörer beskrev grundorsaken som en race condition som ledde till inkonsekventa nätverksstater.
Avbrottet började i Amazons US-East-1-region, företagets äldsta och mest använda nav, på grund av en race condition i komponenten DynamoDB DNS Enactor. Detta system övervakar lastbalanserar genom att uppdatera DNS-konfigurationer för AWS-endpunkter. Enligt Amazon-ingenjörer upplevde Enactor höga fördröjningar vid uppdatering av DNS-endpunkter, medan en separat DNS Planner genererade nya planer. En andra Enactor implementerade sedan dessa och anropade en rengöringsprocess som raderade en äldre plan precis när den fördröjda första Enactorn tillämpade den, och därmed överskrev den nyare.
"När den andra Enactorn (som tillämpade den nyaste planen) slutförde sina endpoint-uppdateringar anropade den planrengöringsprocessen, som identifierar planer som är betydligt äldre än den som just tillämpades och raderar dem," förklarade Amazon. Detta lämnade systemet i ett inkonsekvent tillstånd, där alla IP-adresser för den regionala endpointen togs bort och ytterligare uppdateringar förhindrades, vilket krävde manuell intervention för att lösas.
DynamoDB-felet avbröt anslutningar för system som är beroende av US-East-1-endpointen och påverkade både kundtrafik och interna AWS-tjänster. Det belastade EC2-instanser och orsakade fördröjningar i nätverksstatens spridning även efter återställning. "Även om nya EC2-instanser kunde startas framgångsrikt saknade de nödvändig nätverksanslutning på grund av fördröjningarna i nätverksstatens spridning," noterade ingenjörerna. Detta spillde över på en nätverkslastbalanserar och ledde till fel i AWS-funktioner som skapande av Redshift-kluster, Lambda-anrop, Fargate-uppgifter och operationer i Managed Workflows for Apache Airflow och AWS Support Center.
Händelsen varade i 15 timmar och 32 minuter, med Ooklas DownDetector som registrerade över 17 miljoner rapporter från 3 500 organisationer, främst i USA, Storbritannien och Tyskland. Snapchat, AWS och Roblox var de mest påverkade tjänsterna, vilket gör det till ett av de största avbrotten som registrerats. Som svar inaktiverade Amazon DynamoDB DNS Planner- och Enactor-automatiseringen globalt för att åtgärda race conditionen och lägga till skyddsåtgärder. Ookla belyste riskerna med regional koncentration och noterade att globala appar ofta routas via US-East-1, vilket förstärker effekterna och understryker behovet av multi-regionella designer för att innehålla fel.