Mer information om Glusterproblemen

Özgür Bal Uncategorized Leave a Comment

Vi kör flera olika typer av storagesystem för City Cloud. Under åren som gått har vi hunnit testa en rad olika system, vissa bättre än andra. I år investerade vi stort i en lösning som heter Gluster (www.gluster.com). En välrenommerad och stabil lösning i grund och botten. Ett problem som många storagesystem står inför är att redundans och skalbarhet går hand i hand med komplexitet. Den här komplexiteten har gett upphov till flera problem för oss under de senaste veckorna.

Torsdagen

Torsdag 20:e oktober hade vi schemalagt en uppdatering av vårt lagringssystem från Gluster. Samma system som vi haft problem med tidigare och där Gluster identifierade buggar i sitt system som orsakade problem på olika sätt. Vi upptäckte också (tack vare Gluster) att vissa drivrutiner som vi körde för en del av våra nätverksinterface också hade buggar. Vi beslutade att uppdatera både Gluster och dessa drivrutiner för att förhindra att de problem som uppstod den 6:e oktober inte skulle upprepas.

Uppdateringen

Det planerade underhållsarbetet påbörjades runt 00:00 och avslutades precis som planerat vid 04:00 fredagen den 21:a oktober. Då var alla virtuella servrar åter online (1000st). Efter några timmar upptäckte vi dock att allt inte stod rätt till och plötsligt fick två olika noder i två olika replikeringspar nätverksproblem. Vid det här laget var det fortfarande ingen större fara på taket då redundansen i Gluster gör att allt fortfarande fungerar som det ska. Under tiden som vi diskuterade problemen med Gluster för att identifiera vad som var fel gick ytterligare en nod ner, denna gången i ett par vars ena nod redan var nere. Detta gjorde att all data som fanns på det paret inte var tillgänglig. Vid det här laget misstänkte både vi och Gluster att problemet låg i länk aggregering, en funktion som sköter sammanlänkningen av nätverksinterfacen på en nod. Vi stängde därför omgående av funktionen på alla noder. Noderna som fått nätverksproblem startades upp igen och påbörjade sin self heal process.

Fredagen

Funktionen som vi, i samråd med Gluster, stängde av gjorde att situationen blev något bättre men löste inte problemen i sig. Runt 16:00 återkom nätverksproblemen, dock bara på en nod men detta bekräftade att problemen inte var helt lösta. Vid det här laget var alla VM´s fortfarande uppe förutom ett fåtal som sedan tidigare drabbades av nätverksproblemen. Runt 20:00 identifieras en potentiell bugg med den specifika drivrutinen/hårdvarukombinationen och en uppdatering görs på det nodpar som vid tillfället är nere. På grund av den stora risken att fler noder skulle tappa nät, vilket skulle resultera i nertid för stora delar av systemet, planeras en uppdatering som skulle genomföras kl. 22:00.

Buggfix och uppdatering av drivrutin

Uppgraderingen går bra och self heal processen för de noder som varit nere påbörjas vilket till viss del påverkar prestandan i hela systemet under natten.

Vid det här laget har ca 100 av de 1000 drabbade virtuella servrarna någon form av problem och behövde startas upp manuellt av oss. Då servrarna plötsligt blivit av med sin lagringsyta uppstod vissa problem, relaterade till Gluster, där filer inte matchade varandra på de två noderna i varje lagringspar. I vissa fall hade data blivit korrupt i de virtuella servrarnas filsystem då de gått ned okontrollerat.

Lördag och söndag

Tillsammans med tekniker från Gluster och Enomaly hade vi tre team som jobbade dygnet runt för att få upp varje enskild virtuell server. Lite beroende på vad det var för individuellt problem som servern drabbats av tog det olika lång tid att få upp dem. Först på söndag kväll hade vi fått upp alla virtuella servrar. Vi är medvetna om att det fortfarande finns vissa kunder som behöver mer hjälp med individuella problem som uppstått med deras virtuella servrar och detta jobbar vi på för närvarande.

 

Vad händer nu?

De kommande dagarna kommer vi fortsätta att hjälpa de kunder som fortfarande har individuella problem med sina servrar. Samtidigt övervakar vi Glustersystemet noggrant för att säkerställa att det inte finns några generella problem kvar.

Vi är verkligen förkrossade över den nedtid som det här problemet har orsakat för våra kunder. Upptid är alltid av yttersta vikt och något vi tar på största allvar, hela vår verksamhet kretsar kring tillgänglighet. Vi kommer fortsätta våra diskussioner med Gluster, gällande de problem som uppstått kontra de löften och garantier om högsta möjliga tillgänglighet som utlovats. Om våra diskussioner inte faller ut som vi önskar har vi långt framskridna backup-planer för migrering från Gluster systemet. Beslut kommer att tas i samråd med Gluster och vår egna tekniska avdelning.