
In den nächsten Monaten möchten wir unserer Umgebung Failover und Lastenausgleich hinzufügen. Wir werden zwei Server haben, die Hyper-V-Hosts sind. Wir möchten auf beiden Hosts einen IIS-App-Server und einen SQL-Datenbankserver haben. Wenn also eine Box ausfällt, kann die andere ihren Platz einnehmen. Meine Verwirrung rührt nun von einigen Google-Suchen her, die ich durchgeführt habe. Soweit ich das beurteilen kann, scheint es SQL-Clustering/Peer-to-Peer-Transaktions-Setup sowie Hyper-V-Clustering zu geben. Ich bin mir nicht sicher, was in dieser Situation am besten funktionieren würde. Die Hosts werden auch zufällig andere Server haben, wie z. B. System Center, unseren Ticketserver, Exchange Admin-Server und mehrere andere, die zwischen den beiden aufgeteilt sind. Daher bin ich mir nicht sicher, ob das Hyper-V-Cluster jetzt die schlechteste Option ist.
Danke schön.
Antwort1
Beim Hyper-V-Clustering verfügen Sie über einen Pool von Hyper-V-Servern (2+), die alle an denselben Netzwerkspeicher angeschlossen sind, sodass die LUNS allen Servern im Hyper-V-Cluster zur Verfügung stehen. Für dieses Setup benötigen Sie Netzwerkspeicher. Mit Hyper-V Live Migration können Sie eine laufende VM von einem Hyper-V-Host auf einen anderen verschieben. Dadurch kann die Arbeitslast von einem Server auf einen anderen verlagert werden, wenn der Server ausfällt. Dies bietet Ihnen physische Redundanz, wenn Ihre verbleibenden Server die Last der zusätzlichen VMs bewältigen können. Dieses Setup schützt Sie nicht vor Beschädigungen des Betriebssystems und der Anwendungen der VM selbst. (Siehehttp://technet.microsoft.com/en-us/library/dd446679(WS.10).aspxfür Einzelheiten zu dieser Konfiguration.)
SQL verfügt über eine eigene Redundanz mit mehreren verschiedenen Clustering-Optionen. Sie können entweder traditionelles Aktiv-/Passiv-Clustering mit einem aktiven Knoten und einem oder mehreren passiven Knoten durchführen. Dieses Setup erfordert eine gemeinsam genutzte Festplatte zwischen den Servern und wird nur auf dem aktiven Knoten gemountet. SQL unterstützt auch mehrere Replikationsarten, die mehrere aktive Knoten zulassen. Diese Methode erfordert keinen gemeinsam genutzten Speicher und speichert auf jedem Server eine separate Kopie der Datenbank. (Siehehttp://msdn.microsoft.com/en-us/library/ee523927(v=sql.100).aspxfür SQL 2008 Hochverfügbarkeitsoptionen)
Clustering auf SQL-Ebene schützt vor einem Betriebssystem- oder Anwendungsausfall auf einem einzelnen Knoten und ermöglicht in diesem Szenario ein automatisches Failover. Wenn sich jede Instanz auf einem anderen Hyper-V-Server befindet, sind Sie auch vor Hardwarefehlern geschützt. Darüber hinaus schützen einige der Clustering-Methoden für SQL Server vor Beschädigungen der Datenbank auf einzelnen Knoten. Die Verwendung eines Hyper-V-Clusters und nur einer einzigen Instanz des SQL-Servers schützt Sie nicht vor Betriebssystem-/Softwarefehlern in der VM. Wenn Ausfallzeiten kein großes Problem darstellen, können Sie in kurzer Zeit eine Wiederherstellung aus einem VM-Snapshot durchführen.
Bearbeiten: Den Teil zum IIS-Lastausgleich vergessen.
Zum Lastenausgleich von IIS können Sie Windows Network Load Balancing verwenden. Dabei wird eine virtuelle IP-Adresse erstellt, die von beiden Hosts gemeinsam genutzt wird. (Siehehttp://technet.microsoft.com/en-us/library/cc770689(v=ws.10).aspx)
Für den IIS-Server gelten dieselben Regeln wie für den SQL-Server, ob Hyper-V-Clustering oder NLB die richtige Option ist. Darüber hinaus sind Ihre anderen VMs, sofern sie nicht ebenfalls geclustert/lastausgeglichen sind, ohne Hyper-V-Clustering nicht vor Problemen mit dem Hyper-V-Host geschützt.
Antwort2
Wenn Sie virtuelle Gäste zwischen zwei Hosts spiegeln möchten, vermeiden Sie HyperV-Clustering. Dadurch können die virtuellen Gäste auf einem anderen Host gestartet werden, wenn einer ausfällt, und Sie können die Last auf Hostebene ausgleichen.
Wenn Sie SQL-Clustering verwenden, können Sie den Backup-SQL-Schritt viel schneller ausführen und mit der Bearbeitung von Anfragen beginnen. Und für den Web-Load-Balancing verwenden Sie NLB (beauftragen Sie Ihren Netzwerkexperten damit, es richtig zu machen, informieren Sie sich über Multicast-NLB). Und verwenden Sie Exchange-Clustering zwischen zwei virtuellen Exchange-Servern. Sie werden viel zufriedener sein.