Nehmen wir an, ich habe zwei Intel Xeons gekauft und sie in Hardware der Serverklasse installiert ... Wenn eine CPU ausfällt, funktioniert die andere weiterhin und übernimmt den Spielraum, wodurch Fehlertoleranz gewährleistet wird?
Dies scheint nicht sehr wahrscheinlich zu sein, aber ich dachte, ich würde fragen, anstatt irgendwelche Annahmen zu treffen.
quelle
Apropos x86-Standardhardware: Wenn ein System ausgeführt wird und eine CPU ausfällt, kommt es normalerweise zum Stillstand. Nach einem Neustart funktioniert das System jedoch einwandfrei, wenn auch etwas langsamer.
Meist sind mehrere CPUs für die parallele Verarbeitung vorgesehen, nicht wirklich für die Fehlertoleranz. Aber es ist schön, ein System zu haben, das immer noch bootet, wenn eine CPU (oder mehr) ausfällt.
Ich würde sagen, es ist etwas wahrscheinlicher, dass Ihre CPU ausfällt, als Mark Henderson vorschlägt, aber es ist immer noch sehr unwahrscheinlich. Nach meiner Erfahrung passiert es meistens, wenn sich das System häufig überhitzt und herunterfährt (das ist in einem schlecht klimatisierten Büro-Serverraum recht einfach). Die CPUs mögen das eher nicht.
Wenn Sie einen netten IBM-Mainframe oder ähnliches hatten, ist das Austauschen einer CPU (Platine) im laufenden Betrieb natürlich "einfach" genug.
quelle
Wenn eine CPU ausfällt - was nach den anderen Antworten äußerst unwahrscheinlich ist -, kann das System im Grunde genommen nichts tun, um sie wiederherzustellen. Je nachdem, wie es fehlschlägt, kann es dazu kommen, dass der Speicher auf seltsame Weise beschädigt oder die Prozesstabelle zerstört wird, oder wer weiß was noch. Wenn Sie eine Art aktives Überwachungssystem haben, das die CPU überwacht, um sicherzustellen, dass sie einwandfrei funktioniert (und beispielsweise alle Änderungen, die die CPU während ihrer Todesfälle vorgenommen hat, rückgängig machen kann), wäre dies auch ein anderes System Das kann scheitern, und das programmgesteuerte Ermitteln von Softwarefehlern ist ziemlich schwierig (im Grunde ist es praktisch nur möglich, wenn eine andere CPU genau das Gleiche zur selben Zeit ausführt und die Ergebnisse vergleicht, was dann zu einer Verlangsamung führt unten so, dass es '
Das heißt, so selten ein CPU-Ausfall ist, wenn Sie die CPU-Anzahl in einem System erhöhen, steigt Ihre Ausfallrate tatsächlich, da Sie jetzt doppelt so viele Dinge haben, die ausfallen können. Sie haben auch andere Subsysteme, die ebenfalls ausfallen können, z. B. diejenigen, die die Caches der CPUs synchron halten, und die Zunahme des Stromverbrauchs und der Wärmeleistung tragen ebenfalls zu den Faktoren bei, die zu einem Ausfall des Gesamtsystems führen (und natürlich sind auch aktive Kühlungslüfter von Bedeutung Ausfallstelle).
quelle
Sie müssen genau definieren, welche Art von Fehlern Sie behandeln möchten. Wenn wir eine Ansammlung von Kernen / CPUs / Computern betrachten, die als Netzwerk zusammenarbeiten, besteht eine Art von Fehler darin, dass ein Knoten einfach nicht mehr antwortet. Ein weitaus schwerwiegenderer Fehler tritt auf, wenn ein Knoten beginnt, Daten zu beschädigen und fehlerhafte Informationen an die anderen zu senden. Dies wird als byzantinisches Versagen bezeichnet , und im schlimmsten Fall wird der Netzwerkbetrieb durch strategische "Lügen" aktiv gestört. Es ist relativ einfach zu zeigen, dass kein System mit einem Drittel oder mehr seiner Knoten umgehen kann , die byzantinisch werden.
Was Sie tun müssen, ist, genau zu entscheiden, welche Art von Fehlern Sie erwarten, und Ihr System unter diesem Gesichtspunkt zu entwerfen und die Tatsache zu akzeptieren, dass das Problem des Umgangs mit einer willkürlichen Anzahl von böswilligen Knoten nicht lösbar ist. In Ihrem Fall benötigen Sie mindestens vier CPUs, wenn eine von ihnen fehlerhaft ist.
Eine Randnotiz: In der Quantenphysik gibt es keine Unmöglichkeiten, aber wenn man länger als das Alter des Universums warten muss, um statistisch eine Chance zu haben, ein bestimmtes Verhalten zu beobachten, muss man nicht sagen, dass es möglich ist. Denken Sie daran, wenn Sie Ihr System entwerfen. ;)
quelle
CPU-Fehler sind möglicherweise selten. Ein Fehler würde wahrscheinlich zu anderen Problemen auf Betriebssystemebene führen. Ich würde das nicht als Fehlertoleranz ansehen.
quelle
Wie die anderen Antworten zeigen, fällt eine CPU nur sehr selten aus, und auf den durchschnittlichen Servern können Sie keinen Hot-Swap durchführen. Sie können den Server wahrscheinlich mit einer CPU belassen, bis die ausgefallene ersetzt wird Die Prozedur ist vollständig offline und Sie müssen den Server stoppen
quelle