Virtualisieren Sie einen einzelnen Server bei der Bereitstellung auf neuer Hardware oder nicht?

32

Es gibt ein paar Fragen, die ich bei ServerFault gefunden habe und die auf dieses Thema hinweisen, und obwohl es ein bisschen meinungsbasiert sein mag, denke ich, dass es in diese "gute subjektive" Kategorie fallen kann, basierend auf dem Folgenden:

Konstruktive subjektive Fragen:

* tend to have long, not short, answers
* have a constructive, fair, and impartial tone
* invite sharing experiences over opinions
* insist that opinion be backed up with facts and references
* are more than just mindless social fun

Also das aus dem Weg.


Ich helfe einem anderen Systemadministrator, der einen älteren physischen Server unter Windows 2003 ersetzt, und möchte dabei nicht nur die Hardware ersetzen, sondern auch auf 2012 R2 "upgraden".

In unseren Diskussionen über seine Ersatzhardware haben wir die Möglichkeit erörtert, dass er ESXi installiert und dann den "Server" 2012 zu einer VM macht und die alten Apps / Dateien / Rollen vom 2003-Server auf die VM anstatt auf eine Nicht-VM-Installation migriert auf der neuen Hardware.

Er sieht in den nächsten Jahren keine Notwendigkeit, irgendetwas anderes auf eine VM zu verschieben oder zusätzliche VMs zu erstellen. Letztendlich handelt es sich also entweder um neue Hardware, auf der eine normale Installation ausgeführt wird, oder um neue Hardware, auf der eine einzelne VM unter ESXi ausgeführt wird.

Meine eigene Erfahrung würde sich immer noch auf eine VM stützen. Es gibt keinen wirklich zwingenden Grund, dies zu tun, außer den Möglichkeiten, die sich möglicherweise ergeben, um zusätzliche VMs zu erstellen. Aber es gibt jetzt den zusätzlichen Overhead- und Verwaltungsaspekt des Hypervisors, obwohl ich mit einer VM bessere Verwaltungsfunktionen und Berichterstellungsfunktionen erlebt habe.

Unter der Prämisse, dass dies in der Kategorie "gut subjektiv" bleiben kann, um anderen in Zukunft zu helfen, welche Erfahrungen / Fakten / Referenzen / konstruktiven Antworten müssen Sie unterstützen, um ein Ergebnis zu erzielen (Virtualisierung oder nicht ein einzelner "Server")? ?

Der Reiniger
quelle

Antworten:

27

Im Allgemeinen ist der Vorteil eines Standalone-Servers auf einem Hypervisor zukunftssicher. Dies macht zukünftige Erweiterungen oder Upgrades viel einfacher, viel schneller und damit billiger. Der Hauptnachteil ist die zusätzliche Komplexität und die zusätzlichen Kosten (nicht unbedingt finanziell, aber aus Sicht der Arbeitszeit und der Zeit).

Um zu einer Entscheidung zu kommen, stelle ich mir drei Fragen (und ziehe es normalerweise vor, den Server auf einen Hypervisor zu setzen, für das, was es wert ist).

  1. Wie hoch sind die zusätzlichen Kosten für den Hypervisor?
    • Finanziell ist es in der Regel minimal oder nicht vorhanden.
      • Sowohl VMware als auch Microsoft verfügen über Lizenzoptionen, mit denen Sie einen Host und einen einzelnen Gast kostenlos ausführen können. Dies ist für die meisten Standalone-Server ausreichend, mit Ausnahme von Servern, die im Allgemeinen besonders ressourcenintensiv sind.
    • Unter Management- und Ressourcengesichtspunkten kann die Ermittlung der Kosten etwas schwieriger sein.
      • Grundsätzlich verdoppeln Sie die Kosten für die Wartung des Systems, da jetzt zwei Systeme für die Überwachung, Verwaltung und Aktualisierung von Patches und Updates (das Gastbetriebssystem und das Hostbetriebssystem) zur Verfügung stehen.
        • Für die meisten Anwendungen ist dies keine große Sache, da die Wartung eines Servers keine große Belastung darstellt. Für einige besonders kleine oder technisch besonders anspruchsvolle Unternehmen kann dies jedoch ein echtes Problem sein.
      • Sie erweitern auch die erforderlichen technischen Fähigkeiten. Anstatt nur jemanden zu benötigen, der Updates von Windows Update herunterladen kann, benötigen Sie jemanden, der über ausreichende Kenntnisse zum Verwalten und Warten der Virtualisierungsumgebung verfügt.
        • Auch dies ist normalerweise kein Problem, aber manchmal ist es mehr, als eine Organisation bewältigen kann.

  2. Wie groß ist der Vorteil einer einfachen Aufrüstung oder Erweiterung?
    • Dies hängt davon ab, wie wahrscheinlich eine zukünftige Erweiterung ist, denn natürlich ist dieser Vorteil gleich Null, wenn sie ihre Server-Assets nicht erweitern oder aktualisieren.
      • Wenn dies die Art von Organisation ist, die den Server nur in eine Ecke stopft und 10 Jahre lang vergisst, bis er ohnehin ersetzt werden muss, hat das keinen Sinn.
      • Wenn sie wahrscheinlich organisatorisch oder sogar nur technisch wachsen (indem sie beispielsweise neue Server mit unterschiedlichen Rollen hinzufügen, anstatt nur einen All-in-One-Server zu haben), bietet dies einen ziemlich erheblichen Vorteil.

  3. Was ist der Nutzen jetzt ?
    • Virtualisierung bietet Vorteile, die über die Zukunftssicherheit hinausgehen, und kann in einigen Anwendungsfällen erheblich sein.
      • Das offensichtlichste ist die Möglichkeit, Snapshots zu erstellen und triviale Backups wiederherzustellen, bevor etwas auf dem System ausgeführt wird. Wenn dies fehlschlägt, können Sie mit einem Klick zurücksetzen.
      • Die Möglichkeit, mit anderen VMs zu experimentieren (und das "Was-wäre-wenn" -Spiel zu spielen), ist eine weitere Möglichkeit, auf die sich das Management gefreut hat. Für mein Geld ist der größte Vorteil die zusätzliche Portabilität, die Sie durch das Ausführen eines Produktionsservers auf einem Hypervisor erhalten. Wenn etwas wirklich schief geht und Sie sich in eine Disaster-Recovery- oder Restore-from-Backup-Situation geraten, ist es nahezu unendlich einfacher, ein Festplatten-Image auf einem Computer wiederherzustellen, auf dem derselbe Hypervisor ausgeführt wird, als eine Bare-Metal-Wiederherstellung durchzuführen.
HopelessN00b
quelle
Einer meiner Lieblingsvorteile ist die Möglichkeit, feststeckende Windows-Server aus der Ferne zu reparieren.
Mythofechelon
16

Ich denke, dass das zu virtualisierende Betriebssystem ein wichtiger Faktor ist, zusammen mit den Leistungsanforderungen und dem Potenzial für Expansion / Wachstum. Die heutigen Server sind für die von uns verwendeten Anwendungen und Betriebssysteme oftmals übermäßig leistungsfähig. Nach meiner Erfahrung können die meisten Standard-Windows-Systeme die Ressourcen eines modernen Dual-Socket-Servers nicht effizient nutzen . Unter Linux habe ich einige der granularen Ressourcenverwaltungstools ( cgroups ) und Container ( LXC ) genutzt, um physische Systeme besser zu nutzen. Der Markt ist jedoch definitiv auf virtualisierungsoptimierte Hardware ausgerichtet.

Trotzdem habe ich in einigen Situationen eher einzelne Systeme virtualisiert als Bare-Metal-Installationen. Häufige Gründe sind:

  • Lizenzierung - Die abnehmende Anzahl von Anwendungen, die Lizenzen basierend auf starren Core-, Socket- oder Speicherbeschränkungen ( unabhängig von den Trends im modernen Computing ) vergeben. Siehe: Deaktivieren von CPU-Kernen im BIOS?

  • Portabilität - Durch die Virtualisierung eines Servers wird die VM von der Hardware getrennt. Dadurch werden Plattformänderungen weniger störend und die VM kann auf standardmäßige virtualisierte Geräte / Komponenten verweisen. Mit diesem Ansatz konnte ich heruntergekommene ( aber kritische ) Windows 2000-Systeme auf lebenserhaltendem Niveau halten .

  • Zukünftige Erweiterung - Ich habe jetzt einen Client, auf dem ein Windows 2003-Domänencontroller auf Hardware aus dem Jahr 2001 ausgeführt wird. Ich baue für sie ein neues Single-Host-ESXi-System auf, das in der Zwischenzeit einen neuen R2-Domänencontroller beherbergen wird. Weitere VMs werden folgen. In dieser Konfiguration kann ich eine zuverlässige Ressourcenerweiterung ohne zusätzliche Hardwarekosten anbieten.

Der Nachteil dabei mit einem einzelnen Host / einer einzelnen VM ist die Verwaltung. Ich komme aus der VMware-Perspektive, aber in der Vergangenheit war ESXi ein bisschen freundlicher mit diesem Arrangement. Die Anforderungen des vSphere Web Client und der eingeschränkte Zugriff auf grundlegende Funktionen machen die Ausführung einer Einzelhost- ( und Einzel-VM- ) Lösung heutzutage weniger attraktiv.

Weitere Überlegungen betreffen die verkrüppelte Hardwareüberwachung und die zunehmende Komplexität der gängigen externen Peripheriegeräte (USB-Geräte / Bandlaufwerk / Backups / USV-Lösungen ). Die heutigen Hypervisoren möchten unbedingt Teil einer größeren Management-Suite sein.

ewwhite
quelle
10

Die Virtualisierung eines einzelnen Servers bietet einige Vorteile. Die ersten Dinge, die mir einfallen, sind:

  • Schnappschüsse erstellen
  • Importieren / Exportieren von VMs (z. B. Exportieren der VM als OVF, damit Entwickler sie in Workstation oder Player laden können, um eine genaue Kopie eines Servers zu erhalten)
  • Einfaches Klonen oder Erstellen einer Vorlage (wenn Sie sich entscheiden, dass VMs nett sind)
  • Sofort verfügbar, um in Zukunft weitere VMs hinzuzufügen

Ich denke, das wichtigste davon wären die Schnappschuss-Fähigkeiten. Wir verwenden VMWare überall in unserem Unternehmen. Daher ist es für uns sinnvoll, den Server "bereit" zu haben, wenn mehr VMs benötigt werden.

Safado
quelle
1
+1 für die Schnappschüsse erwähnen. Obwohl es nicht für "Backups" verwendet wird, ist es eine großartige Sache, es vor dem Upgrade dieser serverseitigen App in einer Umgebung ohne Test-Server zu verwenden.
TheCleaner
+1 Ganz zu schweigen davon, dass eine virtualisierte Umgebung ideal für die Erstellung des Testservers ist . Es ist sicherlich nicht so gut wie dedizierte Testhardware, aber es ist viel besser als nichts.
Calrion
10

Dies ist keine lange Antwort, aber trotzdem:

Der überzeugendste Grund für die Verwendung eines Hypervisors für einen einzelnen Server, insbesondere bei Windows Server, ist, dass Sie über eine vollständige Hardwareabstraktion für das Produktionsbetriebssystem verfügen und es bei Bedarf problemlos auf eine vollständig neue Serverhardware verschieben können. Ich halte dies für ein wirklich wertvolles Feature, das die Nachteile eines praktisch unnötigen Hypervisors, der im Hintergrund ausgeführt wird, bei weitem überwiegt.

Sven
quelle
7

Ich werde hier keine so ausführliche Antwort geben wie andere, daher sage ich nur, dass es heutzutage immer schwieriger ist, das Server - Betriebssystem auf Bare Metal zu installieren, als einen Hypervisor (von Ihnen) zu installieren Auswahl) und Virtualisierung der Workloads. Die Vorteile dabei sind meines Erachtens:

  1. Kosten-Nutzen. Wenn ich auf lange Sicht zusätzliche Workloads bereitstellen muss, muss ich nicht mehr Hardware für diese zusätzlichen Workloads bereitstellen. In einigen Fällen kann ich bei der Verwendung von Hyper-V sogar Lizenzkosten sparen.

  2. Einfache Bereitstellung und Neuverteilung.

  3. Einfache Implementierung von Hochverfügbarkeit und Failover.

  4. Portabilität. Ich kann die VM wahrscheinlich fast überall hin verschieben, wenn ich den aktuellen Host außer Betrieb nehmen oder auslagern muss.

  5. Zukunftssicherheit. Ihr Mit-Systemadministrator sieht derzeit möglicherweise keinen zukünftigen Bedarf für eine Hypervisor-basierte Infrastruktur, aber ich gehe davon aus, dass er innerhalb von 12 bis 24 Monaten die Virtualisierungsroute wählen wird .

  6. Katastrophale Erholung. Ich kann eine gesamte VM sichern und in wenigen Minuten wiederherstellen oder auf einen anderen Host replizieren.

Und so weiter und so fort ...

Joeqwerty
quelle
6

Hier sind ein paar Gründe, warum ich sagen würde, dass eine VM besser ist:

  • Integriertes "KVM over IP" - Sie können über die Konsole remote auf Ihren Server zugreifen, ohne ein KVM over IP zu benötigen. Manchmal möchten Sie einfach nichts über RDP tun und benötigen Konsolenzugriff. Mit einer VM starten Sie das Verwaltungstool Ihrer Wahl (XenCenter, vSphere-Client usw.) und befinden sich auf der Konsole Ihrer VM.

  • Bei VMs (und bei Nicht-VM-Servern mit KVM over IP) muss ich mich nicht mehr stundenlang in meinem kalten Serverraum aufhalten.

  • Migration auf neue Hardware - Betriebssystem-Upgrade beiseite, um Ihre neue Hardware einzubauen, müssen Sie das System migrieren, Dinge verschieben usw. Bei einer VM müssen Sie (normalerweise) nichts tun. Sie aktualisieren Ihre Hardware, platzieren die VM-Dateien auf der neuen Hardware und starten.

  • Man sieht zwar keine zukünftige VM voraus, " wenn Sie sie erstellen, werden sie kommen ". Sie möchten eine neue VM starten, um etwas zu testen und neue Dinge auszuprobieren. Es gibt einfach so viel mehr Möglichkeiten.

  • Mit VMs können Sie mit Snapshots zurücksetzen, eine Kopie davon erstellen, einen Klon der VM erstellen (zur Laufzeit) und diese dann hochfahren - ob Sie etwas testen möchten, bevor Sie sie in Betrieb nehmen, oder nur eine Sekunde davon haben möchten zuerst. Es gibt viele Dinge, die Sie mit VM-Snapshots und dergleichen tun können.

  • Redundanz - Wenn Sie einen zweiten VM-Server einsetzen, können Sie über redundante Hardware verfügen. Ich kenne zwar die aktuellen VMWare-Lizenzierungsschemata nicht, XenServer enthält XenMotion jedoch anscheinend als Teil des kostenlosen Pakets, sodass die zusätzlichen Kosten möglicherweise nicht anfallen.

Die Gründe, warum ich keine VM verwenden würde:

  • Gemeinkosten - kaum, aber es gibt offensichtlich einige Gemeinkosten.

  • Komplexer in der Handhabung - etwas komplexer, aber leicht zu erlernen. Wenn Sie sich nicht für eine sehr große virtualisierte Umgebung entscheiden, ist das Training trivial.

ETL
quelle
1
+1 für die "kvm over IP". Schön, diese Funktionalität zu haben, wenn ein "Server" neu startet und beim Booten hängt und Sie plötzlich kein RDP oder Ping von zu Hause über VPN mehr ausführen können. Nicht vorbeifahren zu müssen, um zu sehen, was passiert ist, ist ein echter Vorteil.
TheCleaner
2
Husten Sie sollten heute alle Server mit bandexternem Verwaltungszugriff verwenden .
Ewwhite
@ewwhite - alle meine neuen Server haben das, aber nicht meine alten. Aber ich habe keine Lizenz für das "KVM". Ich kann neu starten, die Daten über Lights-Out überprüfen, aber nicht über die Konsole. Ich brauche es in meinem Fall nicht wirklich, da ich bereits über ein KVM over IP verfüge, das mir in Kombination mit Lights-Out alles bietet, was ich brauche.
ETL
5

Ich komme zu spät und habe das Gefühl, dass die Leute bereits einige der Punkte angesprochen haben, die ich gerne gemacht hätte, aber ich fasse kurz zusammen:

  • Zukunftssicherheit: Einfacheres Hinzufügen von mehr RAM / CPU / Disk / etc. wie die Notwendigkeit entsteht.
  • Portabilität: Einfacherer Umstieg auf neue Hardware, insbesondere im Katastrophenfall.
  • Virtualisierung ist besser, als schreckliche alte Hardware zu behalten, um etwas laufen zu lassen, das Sie nicht loswerden können.
  • Die Management-Software ist oft so gut wie KVM oder DRAC. (Wenn Sie zufällig etwas erben, bei dem der vorherige Administrator ohne Angabe des Kennworts abgereist ist, können Sie es als "physischen Zugang" zum Einbruch verwenden. So praktisch wie die Bolzenschneider, die ich aus demselben Grund in meinem Auto habe - früher Der Administrator hat bei einem Job Vorhängeschlösser auf der Hardware verwendet. Ich habe die Server, aber nicht den Schlüssel geerbt.)
  • Schnappschusserstellung und Erstellen von Kopien, damit ich riskante Verfahren testen kann, bevor ich sie bereitstelle.

Die Sache, die noch niemand erwähnt hat und die wahrscheinlich erwähnt werden sollte: Wenn Sie in einem Geschäft sind, in dem Leute möglicherweise einen Testserver benötigen, und diese Notwendigkeit wahrscheinlich lösen, indem Sie sich einen Ersatzdesktop schnappen und auf ein Server-Betriebssystem klicken Wenn Sie ihnen eine VM anbieten können, wird dies wahrscheinlich viel besser zu Ihren und ihren Bedürfnissen passen. Die Virtualisierung des neuen Servers kann der "Grund" für eine zukünftige virtuelle Erweiterung sein. (Und ehrlich gesagt, wenn Sie nicht in einem solchen Geschäft sind, haben Sie wahrscheinlich bereits Virtualisierung.)

Natürlich virtualisiert nicht alles. Ich bewertete die physische Hardware für die Management-Software, die PXE enthielt, indem ich ihnen beschrieb, was sie tun mussten, um das TCP-Segment-Offloading zu deaktivieren ( PXE lief wie ein einbeiniger Hund mit eingeschaltetem TSO , aber sie hätten es deaktivieren müssen für das gesamte virtuelle VLAN, und sie waren nicht geneigt, dies zu tun). Also, wenn der neue Server etwas ist, das so spezialisiert ist, dass es ungeeignet ist, ist das egal.

Wenn ich diese Spezialisierung nicht berücksichtige, wäre es mir wert, ein paar (möglicherweise nicht verwaltete) Computer der PC-Klasse loszuwerden, auf denen Server-Betriebssysteme ausgeführt werden, die jetzt oder in Zukunft herumliegen.

Katherine Villyard
quelle
3

Ich virtualisiere, wann immer ich kann. Auf diese Weise kann ich mich darauf vorbereiten, in Zukunft Folgendes zu tun:

  • Vollständige Systemsicherungen, die viel einfacher und oft auch billiger sind.
  • Das Betriebssystem kann portabel sein. Ich kann die VM auf einen anderen Host verschieben, wenn dies mit oder ohne Ausfallzeit und Clustering erforderlich ist
  • Unter bestimmten Umständen kann die Windows-Lizenzierung günstiger werden
  • Wenn die Hardware knapp ist, kann ich nach der Erstellung eines Schnappschusses mithilfe von Produktionssystemen Aktualisierungen testen (nicht die beste Vorgehensweise, sondern Budget, Budget ...). Dies ist auf einem normalen Host nur möglich, wenn er über ein teures SAN gestartet wird
  • Wenn ich die niedrigstmögliche End-Server-Hardware erhalte, bekomme ich immer noch mehr Ressourcen, als ich für eine bestimmte Serverrolle benötige. Könnte auch bessere Hardware bekommen und alles mit VMs verwenden.
  • Virtualisierungsfunktionen können häufig unnötige Software ersetzen. Zum Beispiel habe ich Doubletake eingerichtet und habe nie viel versagt, um DR-Replikate von Windows-Servern einzurichten. Mit Virtualisierung kann ich das auf Hypervisor-Ebene tun, indem ich viel billigere Technologien verwende und zuverlässigere und flexiblere Lösungen verwende.

Kurz gesagt, wenn auf dem Server keine bestimmte Software mit Einschränkungen ausgeführt wird, die eine Virtualisierung verhindert (normalerweise sind strenge Netzwerk- oder Festplatten-E / A-Latenzzeiten erforderlich und mit der richtigen Hardware lassen sich auch diese mit Virtualisierung erzielen), versuche ich, die Dinge beizubehalten so virtuell wie möglich.

dyasny
quelle
"Windows-Lizenzen können unter bestimmten Bedingungen billiger werden " Können Sie mir einige dieser Bedingungen mitteilen?
Uwe Keim
3
Einfaches Beispiel - Ich muss einen AD / DNS / DHCP-Server und einen Terminalserver ausführen. Ich kann zwei Windows-Lizenzen erwerben, erhalte jedoch eine 2012r2std-Lizenz und führe zwei VMs mit dieser Lizenz aus. 700 Dollar Ersparnis genau dort.
Dyasny
2

Ein Grund, warum ich mir vorstellen kann, einen einzelnen Server in eine VM auf einem einzelnen Host zu virtualisieren, ist die Möglichkeit, mit einer Testumgebung für diesen "Server" herumzuspielen.

Wenn die Hardware mehr als leistungsfähig ist, können Sie die Server-VM klonen und ihre NIC- / Netzwerkfähigkeiten entfernen und diesen Klon als "Testplattform" isolieren, um sich damit zu beschäftigen, bevor Sie ihn auf dem "Produktions" -Server ausprobieren. Ein Beispiel wäre, wenn auf dem Server eine ERP-Software ausgeführt wird und Sie testen möchten, was passieren würde, wenn Sie ein bestimmtes Skript für die ERP-Software / -Datenbank ausführen. Sie können dies zunächst als Test auf der geklonten VM durchführen. Dies könnte dann in Verbindung mit einem Snapshot der Live-VM vor deren Bereitstellung erfolgen, mit dem zusätzlichen Vorteil, dass Sie wissen, dass diese ordnungsgemäß funktionieren sollte.

Das Erstellen derselben geklonten "Test" -Umgebung könnte mit einem P2V-Server eines vorhandenen physischen Servers erfolgen. Sie benötigen jedoch einen zusätzlichen physischen Host, um Ihre neue Test-VM zu installieren Hardware (was heutzutage für eine einzelne VM fast immer zu viel ist)

Der Reiniger
quelle
2

Wenn Ihr Anwendungsfall nicht 100% der Leistung von dedizierter Hardware erfordert, werde ich jedes Mal virtuell. Es bietet Flexibilität, Snapshot-Funktion und integrierten Konsolenzugriff (auch wenn Sie auch die Out-of-Band-Verwaltung verwenden sollten).

tomstephens89
quelle
-1

Ein einzelner Punkt, der die Hauptfrage eher tangiert:

Ich hatte kürzlich eine VM, deren Festplatte nicht groß genug war. Es wurde etwas ausgeführt, das große Datenmengen in einer relationalen Datenbank generierte, die sich aus Leistungsgründen auf demselben Computer befinden musste.

Nachdem ich das Image zweimal erweitert hatte, war nicht mehr genügend Speicherplatz auf dem Host verfügbar, um das Image sicher zu kopieren und erneut zu erweitern. Ich hätte mir ein paar Tage Arbeit gespart, um dies von Anfang an auf einer dedizierten Maschine zu erledigen, selbst wenn es sich um einen billigen PC und keinen Hochleistungsserver handelte.

Mit einem dedizierten Computer können Sie ihn einfach herunterfahren und weitere Festplatten hinzufügen. Wenn es sich um einen Server handelt, auf dem andere VMs ausgeführt werden, es sei denn, Sie haben Ersatz-Hot-Swap-Einschübe, kann dies zu Problemen beim Herunterfahren führen.

Shalom Krone
quelle
1
Das ist eine Frage der Kapazitätsplanung, nein? Auf Hardware der Serverklasse können Änderungen am Festplattensubsystem auch mit einem Hypervisor im Handumdrehen vorgenommen werden.
Ewwhite
1
With a dedicated machine you can just shut it down, and add more disks. If it's a server running other VM's, unless you have spare hot-swap bays, you might have a problem shutting it down for this.- huh? Wenn Sie keine Ersatzschächte auf einem dedizierten Computer haben, werden Sie auch keine weiteren Festplatten hinzufügen. Das ist einfach entsprechend auf Ihre Festplattengrößen im Voraus zu planen.
TheCleaner