Muss RAM für Hardware der Serverklasse eingebrannt werden?

31

In Anbetracht der Tatsache , dass viele Server-Class - Systeme sind ausgestattet mit ECC RAM , ist es notwendig oder nützlich Einbrennen in den Speicher - DIMMs vor ihrem Einsatz?

Ich bin auf eine Umgebung gestoßen, in der der gesamte Arbeitsspeicher des Servers einem langen Einbrenn- / Belastungsprozess unterzogen wird. Dies hat gelegentlich zu Verzögerungen bei der Systembereitstellung geführt und sich auf die Hardware-Vorlaufzeit ausgewirkt.

Die Serverhardware ist in erster Linie Supermicro , daher wird der RAM von einer Vielzahl von Anbietern bezogen. Nicht direkt vom Hersteller wie ein Dell Poweredge oder HP ProLiant .

Ist das eine nützliche Übung? Nach meiner bisherigen Erfahrung habe ich nur Standard-RAM des Herstellers verwendet. Sollten die POST- Speichertests nicht den DOA-Speicher erfassen? Ich habe lange vor dem eigentlichen Ausfall eines DIMMs auf ECC-Fehler reagiert, da die ECC-Schwellenwerte normalerweise den Auslöser für die Platzierung der Garantie darstellten.

  • Brennen Sie Ihren RAM ein?
  • Wenn ja, welche Methode (n) verwenden Sie, um die Tests durchzuführen?
  • Wurden vor der Bereitstellung Probleme festgestellt?
  • Hat der Einbrennprozess zu zusätzlicher Plattformstabilität geführt, anstatt diesen Schritt nicht auszuführen?
  • Was tun Sie, wenn Sie einem bestehenden Server RAM hinzufügen ?
ewwhite
quelle

Antworten:

25

Ich habe ein Dokument von Kingston gefunden, das ausführlich beschreibt, wie sie mit dem Serverspeicher arbeiten. Ich glaube, dass dieser Prozess für die meisten bekannten Hersteller normalerweise derselbe ist. Speicherchips sowie alle Halbleiterbauelemente folgen einem bestimmten Zuverlässigkeits- / Fehlermuster, das als Bathtub Curve bezeichnet wird:

Bildbeschreibung hier eingeben

Die Zeit wird auf der horizontalen Achse dargestellt, beginnend mit der Werkslieferung bis hin zu drei verschiedenen Zeiträumen:

  • Early Life Failures: Die meisten Fehler treten während des frühen Nutzungszeitraums auf. Mit der Zeit nimmt die Anzahl der Ausfälle jedoch schnell ab. Die in Gelb dargestellte Frühlebensdauer beträgt ca. 3 Monate.

  • Nutzungsdauer: Während dieser Zeit sind Ausfälle äußerst selten. Die Nutzungsdauer ist in blau dargestellt und wird auf über 20 Jahre geschätzt.

  • End-of-Life-Fehler: Schließlich nutzen sich Halbleiterprodukte ab und fallen aus. Die End-of-Life-Periode wird in Grün angezeigt

Nun, da Kingston feststellte, dass in den ersten drei Monaten hohe Ausfallraten auftreten würden (nach diesen drei Monaten wird die Einheit als gut angesehen, bis sie etwa 15 bis 20 Jahre später die EOL erreicht). Sie entwarfen einen Test mit einer Einheit unter Verwendung der KT2400 genannt , die brutal testet die Server - Speichermodule für 24 Stunden bei 100 Grad Celsius bei einer hohen Spannung, die von dem alle Zellen eines jedem DRAM - Chips kontinuierlich ausgeübt werden; Dieses hohe Maß an Stresstests bewirkt eine Alterung der Module um mindestens drei Monate (wie vor dem kritischen Zeitraum, in dem die meisten Module Ausfälle aufweisen).

Die Ergebnisse waren:

Im März 2004 startete Kingston eine sechsmonatige Testphase, in der 100 Prozent des Serverspeichers im KT2400 getestet wurden. Die Ergebnisse wurden engmaschig überwacht, um die Änderung der Ausfälle zu messen. Im September 2004, nachdem alle Testdaten zusammengestellt und analysiert worden waren, zeigten die Ergebnisse, dass die Ausfälle um 90 Prozent reduziert wurden. Diese Ergebnisse übertrafen die Erwartungen und stellten eine signifikante Verbesserung für eine Produktlinie dar, die bereits zu den Besten ihrer Klasse gehörte.

Warum ist das Brennen im Speicher für den Serverspeicher nicht sinnvoll? Ganz einfach, weil es bereits von Ihrem Hersteller gemacht wurde!

Lucas Kauffman
quelle
10
Der Chiphersteller und möglicherweise sogar der Serverhersteller testen möglicherweise einige Chips. Um die Kosten zu senken, werden mst-Komponenten heutzutage nur noch auf Stichproben getestet. Selbst wenn Ihre Chips oder ganzen DIMMs einmal getestet wurden, sagt das nichts darüber aus, ob die Kontakte oder die Leiterplatte während der Montage oder des Versands auf irgendeine Weise verändert oder durcheinander gebracht wurden. Beim Einbrennen von MemTEst86 sind Probleme mit dem Arbeitsspeicher von zwei verschiedenen Servern aufgetreten, die von zwei verschiedenen "Tier 1" -Serveranbietern geliefert wurden. Wenn sie es in die Produktion geschafft hätten, hätte uns ECC vielleicht gerettet, aber auch eine stille Datenbankbeschädigung könnte die Folge gewesen sein.
Malayter
7
Diese Wannenkurve ist nicht nur für Halbleiter. Die meisten Komponenten, die mit einem gewissen Grad an Qualitätskontrolle gebaut wurden, folgen diesem
Prinzip
6
Dies ist einer der Gründe, warum ich keine Garantieverlängerungen für die Elektronik kaufe. Das Gerät (oder die Komponente) fällt entweder in den ersten Monaten aus oder hält den Rest seiner Lebensdauer. Dies zeigt auch, warum es so wichtig ist, die schlechten Äpfel frühzeitig auszusondern, damit Sie so schnell wie möglich zum reibungslosen Segeln gelangen.
Atari911
@rmalayter Also würdest du es trotzdem befürworten, den RAM zu brennen?
ewwhite
2
@ewwhite Ja, ich würde testen. Es dauert nur ein paar Stunden, memtest86 zu booten und 384 GB RAM prüfen zu lassen. Aus dem gleichen Grund brennen wir auch in allen Speichersubsystemen mit IOmeter. Während des Einbrennens sind in den letzten Jahren mehrere RAID-Controller oder -Laufwerke auf uns abgestorben, obwohl sie bei der Installation des Betriebssystems zunächst einwandfrei funktionierten. Manchmal war es eine schlechte Firmware, manchmal ein fehlerhafter Cache-RAM auf dem RAID-Controller, manchmal war es "wer weiß - RMA es!"
Malayter
30

Nein.

Das Ziel des Einbrennens von Hardware besteht darin, diese so weit zu belasten, dass ein Ausfall einer Komponente katalysiert wird.

Dies mit mechanischen Festplatten zu tun, wird einige Ergebnisse bringen, aber für den Arbeitsspeicher wird es nicht viel bringen. Die Art der Komponente ist so beschaffen, dass Umgebungsfaktoren und das Alter mit größerer Wahrscheinlichkeit die Ursache für Fehler sind, als dies jemals beim Lesen und Schreiben auf den Arbeitsspeicher (selbst bei maximaler Bandbreite für einige Stunden oder Tage) der Fall wäre.

Vorausgesetzt, Ihr RAM ist von ausreichender Qualität, damit das Lot nicht schmilzt, wenn Sie es zum ersten Mal verwenden, hilft Ihnen ein Einbrennvorgang nicht, Fehler zu finden.

Shane Madden
quelle
15

Wir kaufen Blades und kaufen im Allgemeinen einen relativ großen Block von ihnen auf einmal. Daher holen wir sie ein und installieren sie über TAGE, bevor unsere Netzwerkports bereit / sicher sind. Wir nutzen diese Zeit, um memtest rund um die Uhr zu verwenden, manchmal auch länger, wenn es über ein Wochenende dauert. Sobald dies erledigt ist, wird das grundlegende ESXi-System heruntergefahren und IP ist bereit, das Host-Profil anzuwenden, sobald das Netzwerk aktiv ist. Also ja, wir testen es, eher aus einer Gelegenheit heraus als aus der Notwendigkeit heraus, aber es hat ein paar DOA-DIMMs zuvor erwischt, und ich mache es physisch nicht, so dass ich keine Anstrengung brauche. Ich bin dafür.

Chopper3
quelle
3
Ein "Test of Opportunity" macht Sinn - angesichts der Chance, dass ich es tun würde. Wenn sich die Bereitstellung verzögert, kann ich ein schlechtes DIMM und eine ECC-
Lampe riskieren
2
Wenn Sie den Test in den Bereitstellungsplan einbauen, haben Sie sich die Zeit genommen. Wenn Sie einfach alles so schnell wie möglich erledigen, können Sie sich zu einem späteren Zeitpunkt auf Kritik einstellen. Strong-Arm-Management, wann immer Sie können :)
Chopper3
@ Chopper3 Also, wenn du eine Richtlinie erstellt hast , machst du das immer? , Es nie tun? oder machst du es, wenn du kannst? .
ewwhite
@ewwhite - Letzteres würde ich sagen, obwohl wir dazu neigen, dies in den Standardbereitstellungsplan zu integrieren, so dass es jedes Mal höchstwahrscheinlich ist.
Chopper3
11

Nun, ich denke, es hängt genau davon ab, was Ihre Prozesse sind. Ich führe MemTest86 IMMER im Arbeitsspeicher aus, bevor ich es in ein System stecke (Server oder auf andere Weise). Nachdem Sie ein System in Betrieb genommen haben, können Probleme, die durch fehlerhaften Speicher verursacht werden, nur schwer behoben werden.

Was das eigentliche "Stresstesten" des Gedächtnisses betrifft; Ich muss erst noch herausfinden, warum dies nützlich ist, wenn Sie nicht zu Übertaktungszwecken testen.

Atari911
quelle
Was sagt Ihnen MemTest86? Haben Sie vor der Installation auf einem Server mit dieser Methode RAM-Probleme festgestellt?
ewwhite
4
Ich habe viele Fehler mit MemTest86 + gefunden, die das BIOS und die Windows-Speicherdiagnose nicht finden. Ich empfehle es sehr. Ja, ECC wird die gleichen Fehler finden, aber ein Mem-Test wird Ihnen helfen, sie alle im Voraus zu finden.
Owen Johnson
6
MemTest teilt Ihnen mit, ob die internen Daten des Speichers fehlerhaft sind. Dazu werden Muster von Bytes sowie zufällige Sätze von Bytes im Speicher gespeichert, um einen Fehler auszulösen. Das Programm kann einen "Durchlauf" ausführen, um Sie zu informieren, ob der Speicher gut ist, aber ich führe im Allgemeinen mehrere Durchläufe über Nacht aus, um sicherzugehen. Das Schöne an MemTest ist, dass es mir sagt, ob der Speicher schlecht ist, bevor ich das System bereitstelle. Es hat viele Male eine RMA ausgelöst und mir viele Kopfschmerzen erspart. Sobald die Maschine bereitgestellt ist, ist es ein Problem, den Speicher im @ss zu speichern.
Atari911
2
@OwenJohnson Wenn Sie MemTest86 (+) ausführen, hoffen Sie im Allgemeinen, diese ECC-Fehler auszulösen, bevor Sie die Maschine in Betrieb nehmen :-)
voretaq7
6

Ich weiß nicht, aber ich habe Leute gesehen, die es tun. Ich habe nie gesehen, dass sie etwas davon haben, ich denke, es könnte ein Kater oder Aberglaube sein.

Persönlich bin ich wie Sie darin, dass die ECC-Fehlerraten für mich nützlicher sind - vorausgesetzt, der RAM ist keine DOA, aber das wissen Sie trotzdem.

Sirex
quelle
6

Für Nicht-ECC-RAMs ist eine Laufzeit von 30 Minuten unter memtest86 + hilfreich, da es normalerweise keine zuverlässige Methode zur Erkennung von Bitfehlern gibt, wenn das System ausgeführt wird.
Blue-Screening wird nicht als zuverlässige Methode angesehen ...
Und ein wenig flockiger Arbeitsspeicher wird oft nicht sofort angezeigt, erst nachdem das System eine vollständige Speicherauslastung festgestellt hat, und dann nur, wenn die Daten in diesem Arbeitsspeicher Code waren, der verwendet wurde und dann stürzte ab. Datenkorruption kann für lange Zeit unbemerkt bleiben.

Für den ECC-RAM wird nichts ausgeführt, was der Speichercontroller selbst nicht ausführt. Dies macht also keinen Sinn. Es ist nur Zeitverschwendung.

Nach meiner Erfahrung sind Leute, die darauf bestehen, einzubrennen, in der Regel alte Leute, die es immer so gemacht haben und es aus Gewohnheit tun, ohne wirklich zu glauben, dass die Dinge wahr sind.
Oder es sind junge Leute, die das vorgeschriebene Verfahren dieser alten Leute befolgen.

Tonny
quelle
Schlechtes Wissen, über Generationen weitergegeben?
Ewwhite
@ewwhite Ja, soweit ich weiß. Und ich habe einen Bsc. In der Computer-Hardware-Technologie, also soll ich wissen, wovon ich spreche :-)
Tonny
mit Ausnahme aller Vorfälle von Personen, die tatsächlich Fehler gefunden haben, wie im Thread gezeigt. Wenn dies nicht offensichtlich ist, besteht ein Unterschied darin, die Teile auszutauschen, bevor ein Server in Betrieb genommen oder ein RAM auf einem DB-Server ersetzt wird, der rund um die Uhr ausgeführt wird. Es sei denn, es handelt sich um einen "gewachsenen Fehler" und alle anderen sind einfach alt und machen Kult-Sachen, aber es wird immer noch Verluste verursachen, wenn ein Prod-Server offline ist.
Florian Heigl
1
@FlorianHeigl Ich befürworte nicht, im RAM zu brennen, aber ich werde niemals die Inbetriebnahme eines Servers befürworten, ohne dass dieser mindestens 24 Stunden lang einem Stresstest unterzogen wird. RAM ist normalerweise nicht das Problem. Flockige Festplatten, RAID-Controller, IPMI-Karten, Netzteile, CPUs, VRMs ... Ich habe alles gesehen. (Und oft überlebt der Server die Erstinstallation einwandfrei. Es ist die Last und / oder Heide, die es tut, wenn es wirklich funktionieren muss.)
Tonny
3

Es hängt davon ab, ob.

Wenn Sie 50.000 neue RAMs bereitstellen und wissen, dass diese bestimmte Hardware nach weniger als einem Tag eine Ausfallrate von 0,01% aufweist, muss es statistisch gesehen mehrere geben, die am ersten Tag ausfallen. Einbrennen soll das fangen. Bei Bereitstellungen in dieser Größenordnung wird ein Ausfall erwartet, keine Ausnahmesituation.

Wenn Sie jedoch nur ein paar Hundert Artikel bereitstellen, sind Statistiken höchstwahrscheinlich auf Ihrer Seite, da Sie ziemlich Pech haben müssen, um fehlerhafte Teile zu erhalten.

Lüge Ryan
quelle
Du hast einen Punkt. Aber mal ehrlich, die meisten von uns werden niemals so große Einsätze machen. (Es sei denn, Sie bauen ein neues Google-Rechenzentrum auf.) Die meisten von uns stellen in der Regel höchstens 5 bis 10 Server gleichzeitig bereit. Das größte, das ich persönlich jemals gemacht habe, waren 16 ESX-Knoten (4x 4-Knoten-Cluster), für die jeweils 8 DIMMs erforderlich waren. Das war vor 3 Jahren und seitdem ist 1 DIMM ausgefallen (vor 2 Monaten). Musste 5 Netzteile auf den gleichen Maschinen ersetzen. Erste 1 nach einer Woche schon. Aber da es sich um HP Proliants handelt, haben wir das erwartet. (HP und Netzteile .. Versteh mich nicht ...)
Tonny