Ich möchte eine Serverfarm für ein Web-Unternehmen aufbauen. Dazu benötige ich Front-End-Webservice-Server und ein allgemeines NAS-Dateiserver-Backend.
Manche Unternehmen entscheiden sich dafür, die schnellste und zuverlässigste Hardware zu kaufen, die allerdings einen Aufpreis kostet. Andere Unternehmen entscheiden sich dafür, billige PC-Hardware mit niedrigeren Spezifikationen zu kaufen, aber davon mehr. Sie bauen hochredundante Systeme, die sie austauschen, wenn sie ausfallen. Ich glaube, Google verfolgt diesen späteren Ansatz.
Hat jemand konkrete Erfahrungen aus dem wirklichen Leben und kann mir einen Rat geben?
Antwort1
Dies hängt von Ihrer Anwendung und Ihrer Fehlertoleranz ab.
Wenn Sie eine Oracle-Datenbank für ein Finanzunternehmen betreiben, benötigen Sie teure Server mit Hot-Swap-fähigen Teilen und integrierter Redundanz (Netzteile, Festplatten, sogar CPU und Speicher).
Handelt es sich um einen Webserver oder Computerserver mit NAS-Speicher, sollten Sie auf die kostengünstigste Variante setzen (beim Server, nicht beim NAS), solange Sie den Verlust einer Box ohne größere Auswirkungen verkraften können.
Seien Sie nicht so geizig, dass Sie ständig schlechte Hardware ersetzen müssen.
Als Faustregel gilt für mich, RAID zum Schutz wichtiger festplattenbasierter Daten zu verwenden, für Computer und Webfarmen jedoch billige Standardhardware zu kaufen. Besorgen Sie sich einen guten Load Balancer, der erkennt, wenn ein Webserver nicht antwortet, und ihn als offline markiert.
Erfahrungen aus dem echten Leben:
Schlecht: Das Ausführen von Oracle auf Standardhardware war eine kostengünstige Lösung, die wir sehr schnell zusammenstellen konnten, aber ein defekter CPU-Lüfter verursachte einen Serverabsturz, der uns zwang, Oracle vom Band wiederherzustellen (pfui!).
Gut: Wir haben zwei hochredundante High-End-Maschinen durch 70 handelsübliche Rackmount-Server ersetzt. Wir konnten die Wartung der beiden Maschinen einstellen und begannen, einfach 2500-Dollar-Ersatzteile zu kaufen. Im Laufe von etwa zwei Jahren haben wir, glaube ich, nur etwa 6 dieser „Ersatzteile“ verwendet (die eigentliche Herausforderung bestand darin, den Einsatz von Ersatzteilen für andere Zwecke zu vermeiden).
Antwort2
Persönlich empfehle ich meinen Kunden bei Computern, die eine hohe Zuverlässigkeit erfordern, Markencomputer mit aktuellem Top-Level-Support.
Ich nenne es "Packled-Level-Support" nach der Alien-Rasse in Star Trek, weil man Tag und Nacht eine Support-Hotline anrufen und sagen kann:Ich bin $NAME bei $COMPANY. Meine Supportvertragsnummer ist $X. Mein Computer ist ein $TYPE, Seriennummer $NUMBER. Er ist kaputt, bringen Sie ihn zum Laufenund erwarten Sie, dass 2–4 Stunden später irgendein Typ auftaucht, der genau das tut.
Für diese Art von Support müssen Sie mit einem ordentlichen Preis rechnen. Aber wenn Sie auf dem Laufenden bleiben müssen, lohnt es sich.
Meistens bevorzuge ich vormontierte Computer mit Garantie und Support, da es sich für den Kunden im Allgemeinen nicht lohnt, mich für die Spezifikation, Bestellung und Montage billiger Computer zu bezahlen.
Bei Computern, bei denen Sie Ausfallzeiten von mehreren Stunden/Tagen verkraften können, ist billigere Hardware wahrscheinlich in Ordnung. Wenn ich beispielsweise fünf Webserver habe, möchte ich, dass zwei davon hochverfügbar sind, und kann akzeptieren, dass der Rest billiger ist. Für Rechenfarmen entscheide ich mich für billigere Hardware.
Antwort3
Der Aufbau von Hot-Swap-fähigen Servern ist extrem schwierig.
Greifen Sie zu den teuren Modellen.
Antwort4
Meiner Erfahrung nach kostet billige Hardware auch viel. Ich bin sicher, dass Sie nicht das High-End-Modell eines professionellen Servers benötigen, um ein paar Websites zu bedienen. Aber Sie möchten nicht verpassen
- Hot-Swap-Netzteile
- IPMI (Fernverwaltung)
- echter Hardware-RAID-Controller für Systemfestplatten
- Chassis mit gutem Air Flow
Erwägen Sie außerdem die Verwendung eines guten Loadbalancers, HTTP-Cache (z. B. Squid
), PHP-Cache (z. B. ACP
) und memcachd
, wenn es für Ihre Webanwendung geeignet ist. Dadurch können auf einer einigermaßen ausgelasteten Site einige Backend-Server überflüssig werden.