Vergleich von Containern und virtuellen Computern
Dank der Hardwarevirtualisierung können mehrere isolierte Instanzen von Betriebssystemen gleichzeitig auf der gleichen physischen Hardware ausgeführt werden. Container stellen den nächsten Schritt bei der Virtualisierung von Computingressourcen dar.
Mithilfe der containerbasierten Virtualisierung können Sie das Betriebssystem virtualisieren. Mit diesem Ansatz können Sie mehrere Anwendungen innerhalb derselben Instanz eines Betriebssystems ausführen und gleichzeitig die Isolation zwischen den Anwendungen aufrechterhalten. Die Container auf einem virtuellen Computer bieten Funktionen, die der von virtuellen Computern auf einem physischen Server ähneln.
Wichtige Informationen zu Containern im Vergleich zu virtuellen Computern
Um die containerbasierte Virtualisierung besser zu verstehen, vergleichen wir Container und virtuelle Computer.
Vergleichen | Container | Virtuelle Computer |
---|---|---|
Isolation | Ein Container bietet in der Regel eine einfache Isolierung vom Host und anderen Containern, ein Container jedoch keine so starke Sicherheitsgrenze wie eine VM. | Ein virtueller Computer bietet eine umfassende Isolierung vom Hostbetriebssystem und anderen VMs. Diese Isolierung ist dann sinnvoll, wenn eine wirksame Sicherheitsgrenze von entscheidender Bedeutung ist, z. B. beim Hosten von Apps konkurrierender Unternehmen auf demselben Server oder im selben Cluster. |
Betriebssystem | Container führen den Benutzermodusteil eines Betriebssystems aus und können so angepasst werden, dass nur die für Ihre App benötigten Dienste enthalten sind. Dieser Ansatz hilft Ihnen, weniger Systemressourcen zu verwenden. | VMs führen ein vollständiges Betriebssystem einschließlich des Kernels aus, was mehr Systemressourcen (CPU, Arbeitsspeicher und Speicher) erfordert. |
Bereitstellung | Sie können einzelne Container mithilfe von Docker über die Befehlszeile bereitstellen. Sie können mehrere Container mithilfe eines Orchestrators wie Azure Kubernetes Service bereitstellen. | Sie können einzelne virtuelle Computer mittels Windows Admin Center oder Hyper-V-Manager bereitstellen. Sie können mehrere virtuelle Computer mithilfe von PowerShell oder System Center Virtual Machine Manager bereitstellen. |
Dauerhafte Speicherung | Container verwenden Azure Disks für lokalen Speicher für einen einzelnen Knoten oder Azure Files (SMB-Freigaben) für Speicher, der von mehreren Knoten oder Servern gemeinsam genutzt wird. | VMs verwenden eine VHD (Virtual Hard Disk) als lokalen Speicher für einen einzelnen Computer, oder eine SMB-Dateifreigabe für den Speicher, der von mehreren Servern gemeinsam genutzt wird. |
Fehlertoleranz | Wenn ein Clusterknoten ausfällt, erstellt der Orchestrator auf einem anderen Clusterknoten schnell alle auf dem Knoten ausgeführten Container neu. | Für einen virtuellen Computer kann ein Failover auf einen anderen Server in einem Cluster ausgeführt werden, wobei das Betriebssystem des virtuellen Computers auf dem neuen Server neu gestartet wird. |
Zu beachtende Aspekte bei der Verwendung von Containern
Container bieten gegenüber physischen und virtuellen Computern mehrere Vorteile. Prüfen Sie die folgenden Vorteile, und überlegen Sie, wie Sie Container für die internen Apps für Ihr Unternehmen implementieren können.
Berücksichtigen Sie Flexibilität und Geschwindigkeit. Sie erzielen höhere Flexibilität und Geschwindigkeit beim Entwickeln und gemeinsamen Verwenden Ihres containerisierten Anwendungscodes.
Berücksichtigen Sie das Testen. Wählen Sie Container für Ihre Konfiguration aus, um vereinfachte Tests Ihrer Apps zu ermöglichen.
Berücksichtigen Sie die App-Bereitstellung. Implementieren Sie Container, um eine optimierte und beschleunigte Bereitstellung Ihrer Apps zu erzielen.
Berücksichtigen Sie die Workloaddichte. Unterstützen Sie eine höhere Workloaddichte, und verbessern Sie Ihre Ressourcenauslastung durch die Arbeit mit Containern.