Netzwerk-Grundlagen – Rechenzentrumsnetze im Umbruch, Teil 4

Transaktionsverarbeitung und VM-Kommunikation in virtuellen Systemen

Seite: 4/5

Firmen zum Thema

Die Grundidee eines virtuellen Ethernet Switches

Wir bauen hierfür eine virtuelle Maschine auf, die als einzige Anwendung eine Software hat, die einen Ethernet-Switch nachbildet. In allen Virtualisierungskonzepten gibt es die Möglichkeit der Kommunikation zwischen den virtuellen Maschinen vermöge des Schedulers, denn, wie wir uns erinnern, gibt es eine Kommunikation zwischen den Elementarprozessen. Diese ist einheitlich und auf das System beschränkt.

Im Grunde genommen wird durch diese Konstruktion das Problem elegant verlagert und damit gelöst. Die allen virtuellen Maschinen grundsätzlich zur Verfügung stehende Kommunikation auf der Ebene der Elementarprozesse ist nicht mit einem allgemeinen IPC-Konzept zu verwechseln. Beim IPC-Konzept würden diejenigen Prozesse kommunizieren, die von den virtuellen Maschinen zur Unterstützung der auf den VMs arbeitenden Anwendungen zur Verfügung gestellt werden. Das ist wie schon dargestellt problematisch und z.B. zwischen einer Windows-VM und einer Unix-VM fast unmöglich. Also kommunizieren nicht die Virtuellen Maschinen, sondern die auf ihnen befindlichen Anwendungen mittels Ethernet-Paketen, was sie alle können. Denn im Rahmen eines Virtualisierungskonzeptes wird ja neben z.B. einer Speicherschnittstelle auch eine Schnittstelle zur Ethernet-Kommunikation bereitgestellt, und zwar von einem virtuellen systemunterstützenden Elementarprozess.

Bildergalerie
Bildergalerie mit 8 Bildern

Dieser wird wie alle anderen Elementarprozesse einer vrtuellen Maschine durch einen realen systemunterstützenden Elementarprozess implementiert. Daher steht ihm in diesem Zusammenhang auch die Kommunikation der realen Elementarprozesse zur Verfügung.

Was wir bisher beschrieben haben, war die Implementierung eines virtuellen Ethernet-Switches auf einem gehosteten System. Das ist zwar möglich, aber unpraktisch, denn es gibt ja die Hypervisoren.

Da ein Hypervisor ohnehin massiv auf die physikalischen Prozessoren und Geräte zugreift, kann man den virtuellen Ethernet-Switch besser hier ansiedeln. Er benutzt dann zwar im Grunde immer noch das grade beschriebene Kommunikationskonzept, ist aber durch die engere Integration in den Hypervisor näher an der Hardware; siehe Abbildung 6.

Ein Hypervisor hat grundsätzlich die Möglichkeit, die Kommunikation zwischen den virtuellen Maschinen, auch für unterschiedliche Gastsysteme, zu realisieren. Er hat aber keine Oberfläche, die sich so bedienen lässt wie die eines Switches. Also muss der virtuelle Ethernet Switch als Ergänzung des Hypervisors, und zwar implementiert auf dessen Ebene, gesehen werden. Dadurch erhält der virtuelle Switch einen fast direkten Zugriff auf den HBA und damit die direkte Möglichkeit der Kommunikation nach draußen; siehe Abbildung 7.

Speicherkommunikation

Wir haben das hier bisher mit Ethernet-Paketen erklärt. Es gibt aber noch eine weitere wichtige Kommunikationsart: den Speicherverkehr. In anspruchsvolleren Umgebungen mit Storage Area Networks gibt es hier den Fibre Channel. Führende Hersteller in diesem Bereich, wie Brocade, lassen natürlich die virtuellen Maschinen nicht im Regen stehen sondern bieten ebenfalls vergleichbare Lösungen an.

Virtuelle Switches können mit den gleichen Merkmalen ausgestattet werden wie ihre physikalischen Brüder. Man kann also z.B. VLANs bilden, um die Kommunikation nur auf bestimmte virtuelle Maschinen zu beschränken oder eine Priorisierung vorsehen, um bestimmte Verkehrsflüsse bevorzugt behandeln zu können. Da virtuelle Switches reine Software sind, kann man natürlich alle relevanten bestehenden Standards implementieren und in Zukunft neue Standards leicht integrieren. Lediglich ihre Leistung lässt sich nicht wie üblich in Schnittstellenanzahl multipliziert mit Schnittstellenleistung beschreiben, denn sie hängt einzig und alleine vom Hypervisor und seinen Möglichkeiten in der Multi-Core-Umgebung ab.

Da ein virtueller Ethernet Switch einen Zugriff zum HBA hat, kommen wir über ihn endlich dazu, virtuelle Maschinen systemübergreifend verbinden zu können. Dazu müssen die betroffenen HBAs lediglich an eine vorhandene Ethernet-Infrastruktur angeschlossen werden, siehe Abb. 8

In einem Zuge wird damit das physikalische Netz ebenfalls virtualisiert, denn die virtuellen Maschinen können die physikalischen Systemgrenzen nicht sehen und „denken“, dass sie über eine virtuelle Ethernet-Struktur miteinander verbunden sind. Das wäre in Abb. 8 der dicke graue Doppelpfeil.

Der Nexus 1000 V von Cisco Systems ist ein virtueller Ethernet-Switch. Er wurde von Cisco und VMware gemeinsam entwickelt. Mit entsprechenden Supervisor-Modulen lässt er sich genauso steuern wie ein physikalischer Switch. Es gibt von Cisco ein Video dazu, wo man sehen kann, wie einfach das ist. So kann man z.B. leicht und mit wenigen Klicks VLANs definieren und virtuelle Maschinen in diese VLANs einbinden.

Aber damit sind die wirklichen Fähigkeiten dieses Virtuellen Switches längst nicht erschöpft.

weiter mit: Herausforderung wandernde Maschinen

Artikelfiles und Artikellinks

(ID:2045843)