Wat gebeurt er nu echt in een rack? - deel 5
In de vorige afleveringen hebben gekeken naar wat er in het rack gebeurt rondom de server. Dat is ook logisch, we richten in onze datacenters immers al onze aandacht op het bieden van een ‘prettige werkomgeving’ in de vorm van koele lucht aan IT-apparatuur. We hebben gezien dat dicht bij de server in het rack, de flow nauwkeurig kan worden gemeten met apparatuur zoals de AirLull, op basis waarvan die op ‘net genoeg’ kan worden geregeld. We hebben ook gezien dat we de temperatuurmeting van de server zelf, als ‘meest juiste meting’, kunnen gebruiken met behulp van apparatuur zoals de CoolSafe, die metingen op een veilige manier toegankelijk kunnen maken voor de ’climate guys’.
In deze aflevering gaan we de thermische grenzen van de server ontdekken - door er overheen te gaan ‘tot de dood erop volgt…’ - om te ontdekken of dat overeenkomt met ons gevoel van kwetsbaarheid over IT-apparatuur.
Onderzoeksvraag
Wat gebeurt er als de temperatuur van de inlaatlucht van de server zo hoog maken dat de server uitvalt? Valt de server uit door overschrijding inlaattemperatuur?
[duidelijk door inlaattemperatuur / eerder door andere temperatuur, bijv. CPU / door inlaattemperatuur, maar andere temperaturen, bijv. CPU, zitten ook tegen alarmgrens aan]Hoe lang is een server bestand tegen heel hoge inlaattemperatuur? [enkele minuten / 20-60 minuten / uren]
De server heeft het zwaar: ‘koellucht’ van meer dan 50°C en recirculatie van hete lucht door openingen in de fysieke scheiding.
Experiment en waarneming
Om te voorkomen dat de resultaten een te optimistisch beeld zouden kunnen geven is de testopzet zo gemaakt, dat de server het in ieder bestaand datacenter beter zou hebben dan in dit experiment. Het rack is voorzien van een voor- en achterdeur, er zijn twee grote openingen in de fysieke scheiding en de doorlaat van de achterdeur is met de choker module verslechterd tot 50% doorlaat. Met de fan/heater module wordt warme lucht gemaakt die, zonder voordruk, door de fans van de server naar binnen wordt gezogen.
We doen twee experimenten. In experiment 1 kijken we naar ‘de snelle dood’ door het aanbieden van een inlaatlucht van meer dan 50°C aan de server die daarvoor constant rond 25°C draaide. In experiment 2 kijken we naar het servergedrag als we proberen zo lang mogelijk de server ‘op het randje’ te houden. In beide experimenten draait de server eerst op een CPU-belasting van 0% en na 5 minuten op 100%.
Server ‘gekoeld’ met 50°C+ inlaatlucht – ‘Quick kill’
In de grafiek zien we dat de door de server gemeten inlaattemperatuur flink na-ijlt op de aangeboden inlaattemperatuur van meer dan 50°C. Dat hadden we al geconstateerd in het vorige artikel. Hier moeten we ook bedenken dat de server bestaat uit 26 kg metaal waarmee de sensor is verbonden en die de opwarming vertraagt.
Tijdlijn van temperatuur, fansnelheid en CPU-belasting bij een inlaattemperatuur van meer dan 50°C.
Zodra de CPU’s vol worden belast, gaan de fans naar 80%. Het relatief vlakke temperatuurverloop direct erna, wordt veroorzaakt door diezelfde fans, die door de hogere flow de temperatuur van de inlaatlucht tijdelijk naar beneden brengen. De verwarming in onze testopstelling is namelijk handmatig geregeld en kost wat tijd voor bijregelen.
Temperaturen gelezen via de ILO-poort van de server. Als de sensor van de inlaatlucht in alarm gaat, zijn alle andere temperaturen nog ruim in veilig gebied.
Na 20 minuten (1.200 sec.) gaat de inlaattemperatuursensor in alarm, als de inlaattemperatuursensor 42°C meet. Pas dan toeren alle fans naar 100%. Als we op dat moment via het ILO (Integrated Lights Out) systeem kijken naar de andere temperaturen in de server, dan zien we dat die allemaal nog ruim onder de alarmgrenzen zitten. Het is dus inderdaad de inlaattemperatuur die even later de server down laat gaan.
Voorbij het punt waar de inlaatsensor in alarm is, zien we dat de server zichzelf gaat beschermen en een reboot aankondigt. Zelfs dan draaien andere programma’s – in dit geval het automatische meetregistratiescript – gewoon door. Als de server door het op 100% gaan van de fans iets meer lucht krijgt en denkt nog te kunnen overleven, wordt de reboot aankondiging weer ingetrokken, tot de server het weer te heet krijgt…
Een van de laatste redmiddelen van de server bij oververhitting, het ‘stilleggen’ van de CPU’s, zichtbaar in het energieverbruik gelezen via de ILO-poort van de server.
Uiteindelijk zal de server alle programma’s ‘killen’ en externe verbindingen verbreken. In ILO kunnen we aan de elektrisch-vermogencurve goed zien dat daardoor het energieverbruik – dus warmteontwikkeling – wordt beperkt. Doordat de fans op dat moment 100% draaien, verbruiken die wel meer dan 150W, waardoor het energieverbruik niet terugvalt tot het niveau op -20min toen de server bij kamertemperatuur in rust was.
De maatregelen van de server helpen niet, want deze wordt extern opgewarmd. De server zal in een ‘overlevingsmodus’ komen, ergens tussen 42°C en 45°C. De tweede kritische grens van 45°C zal niet worden bereikt. Ook het veel robuustere ILO-deel van de server is niet meer bereikbaar. Nadat we de heater van de inlaatlucht hebben uitgeschakeld en de server enigszins is afgekoeld, herstelt de verbinding met ILO zich en is even later de server zelf weer beschikbaar, ge-reboot en wel. De ‘gekillde’ programma’s zijn niet herstart.
Het ILO-subsysteem van de server werkt zelfs als de server uit staat. Maar bij oververhitting is het tenminste niet uit te lezen totdat de server is gereboot.
Server ‘gekoeld’ met 42°C+ inlaatlucht – ‘Walking on the Edge’
In het tweede experiment proberen we de server zo lang mogelijk ‘op het randje’ te houden met een inlaatlucht van 42°C - 43°C. In de grafiek zien we dat dat een goede drie kwartier goed gaat. De serverfans zullen op het laatst herhaaldelijk op- en aftoeren. De server kondigt keer-op-keer een reboot in 60 seconden aan, om die vervolgens weer te cancelen, etc. Dit gebeurt vaker, maar verder hetzelfde als in het vorige experiment. Uiteindelijk gaat het een keer net niet goed en gaat de server alsnog down. Met een iets koelere inlaatlucht van 40°C zou de server echter blijven functioneren en alle programma’s nog steeds draaien en alle externe communicatie blijven onderhouden.
Tijdlijn van temperatuur, fansnelheid en CPU-belasting bij een inlaattemperatuur van meer dan 42°C.
Conclusie van het experiment
Zelfs voor een server die in een ‘slecht rack’ hangt, is het best lastig om deze door thermische oververhitting te laten uitvallen. De fabrikant heeft bovendien allerlei bescherming- en overlevingsgedrag ingebouwd, die de server zo lang mogelijk normaal laten functioneren. In extreme situaties zou IT-apparatuur bij 40°C inlaatlucht kunnen blijven functioneren en bij nog hogere temperaturen duurt het al gauw een 20 minuten of langer, voordat apparatuur uitvalt.
Twee werelden
In deze serie artikelen hebben we intensief de regels van de wereld van de server verkend. We hebben gezien hoe de server en zijn directe omgeving elkaar binnen het rack beïnvloeden. In het operationele datacenter leven we echter volgens de regels van de wereld van het datacenter. Als we die twee werelden naast elkaar zetten, blijken die weliswaar veel met elkaar te maken te hebben, maar niet hetzelfde te zijn. In de wereld van het datacenter regelen we de temperatuur op ‘wat veilig voelt’, een paar graden onder wat we met klanten in een Service Level Agreement (SLA) hebben afgesproken en dat is weer onder wat Ashrea als maximum temperatuur aanbeveelt voor een datacenter met ‘normale’ apparatuur: veiligheid-op-veiligheid.
In de wereld van de server is de eerste grens om te respecteren die van wat de fabrikant specificeert in de handleiding, al was het maar om binnen de garantievoorwaarden te blijven. Daarboven hebben we gezien, is er een gebied waar de server nog steeds blijft functioneren en niets kapot gaat. Wel zouden we daar twee effecten kunnen verwachten. Een is dat de fans van alle servers zo hard draaien dat de besparing van het koelen van het datacenter op hogere temperatuur, hierdoor geheel of gedeeltelijk teniet wordt gedaan. We weten (nog) niet precies waar dat punt ligt. Een tweede is dat de CPU’s bij hoge temperatuur (geleidelijk) op lagere klokfrequentie kunnen gaan draaien. Weliswaar hebben we dat in ons experiment niet gezien voordat de server down ging, maar het experiment was ook niet ingericht om dat goed vroegtijdig te kunnen meten. Deze grens wil je niet over – al gaat er nog steeds niets kapot – want je doet kapitaal teniet die jouw klant in serverperformance heeft geïnvesteerd. Uiteindelijk kom je pas bij de interne temperatuurgrenzen van de server, technisch in de gevarenzone.
Wat kunnen we leren van de vergelijking van deze twee werelden? Ten eerste dat de grenzen van het datacenter ruim vallen binnen de grenzen van de server. Dat doen we met zijn allen dus prima. Ten tweede dat de grens waarbij daadwerkelijk risico op uitval of schade wordt gelopen, heel veel hoger is en het ook best een poosje duurt voordat een server het loodje legt. Het gevoel dat als de temperatuur op zaal één of enkele graden uit de pas loopt, apparatuur direct zou kunnen uitvallen, vindt geen grond in de wereld van de server. Dat geeft rust. Als je jezelf daarvan hebt overtuigd, schept dat ruimte om de veiligheid-op-veiligheid los te laten en een paar graden warmer te draaien, of zelfs om SLA’s op hogere temperatuur af te sluiten en nog wat warmer te gaan draaien. Daarmee willen we niet beweren dat het doel zou moeten zijn om datacenters op zo hoog mogelijke temperatuur te opereren. Zo heerste er bij 30°C in de koude gang, in de warme gang een voor technici praktisch onwerkbare temperatuur van 40°C tot 42°C.
Twee werelden, verschillende grenzen. Het verschil tussen de operationeel gehanteerde grenzen van het datacenter en de technische grenzen van de hardware (groen, oranje) stelt gerust en biedt mogelijkheden.
Een waarschuwing is toch op zijn plaats. Ieder datacenter kent zijn ‘slechte racks’ en kritische apparatuur, vaak zware routers die door constructie of plaats van installatie volledig warme lucht aanzuigen. Deze opereren gauw op een temperatuur die 10°C - 12°C hoger ligt dan de zaaltemperatuur en kunnen ongemerkt in de gevarenzone komen, terwijl de zaaltemperatuur ruim in de veilige marge zit. Ons inziens moeten deze ‘crepeergevallen’ eerst worden aangepakt, voordat er aan de temperatuurknop wordt gedraaid. Hoe, kun je teruglezen in artikel 2 uit deze serie.
Mees Lodder en Willem van Smaalen, WCooliT