| VMware |
2. Chemnitzer Linux-Tag
TU CHEMNITZ, UNIVERSITÄTSRECHENZENTRUM
11.-12. März 2000
| Was ist VMware? |
- Virtuelle Plattform, voll funktionstüchtiger PC in einem Fenster
- VMware erlaubt die gleichzeitige Ausführung mehrerer Betriebssysteme zur gleichen Zeit
- kein Betriebssystememulator (API-Emulator), kein Hardwareemulator
![]()
(Quelle VMware, Inc.)
- Virtual Platform Application
- grafisches Interface als Anwendung unter dem Wirtssystem
- Virtual Platform Monitor
- arbeitet privilegiert mit direktem Hardwarezugriff
- Virtual Platform Driver
- realisiert die Kommunikation zwischen VP Application und VP Driver
Wirtssystem bezeichnet das real gebootete Betriebssystem
Gastsystem ist das in der virtuellen Umgebung (VMware) laufende Betriebssystem
| Entwicklung |
Januar 1998 Gründung der VMware, Inc. Mai 1999 VMware 1.0 für Linux 3. September 1999 VMware 1.0 für WindowsNT, Windows2000 Oktober 1999 VMware 1.1 für Linux Januar 2000 VMware 2.0BETA für Linux 3. M&aumL;rz 2000 VMware 2.0 für Linux und WindowsNT, Windows2000 Stand Oktober 1999
- ca. 180,000 registrierte Nutzer
- Anteil US-Markt/Internationale 50/50
- Interesse von ca. 200 Universitäten in den ersten 30 Tagen
| Hardwareumgebung für Gastsystem |
Konkurierender Gerätezugriff
- Prozessor (abhängig vom Wirt, MMX wenn im Wirt vorhanden, bei SMP-Wirt nur 1 Prozessor je VM)
- Speicher (bis 512 MB, abhängig vom Wirt)
- Grafikadapter (VGA oder VMwareeigene Treiber (SVGA))
- Festplatten und CD-ROM (4 IDE-Geräte)
- SCSI-Controller mit bis zu 7 Geräten ( BusLogic) *)
- Floppy (2 x bis 1.44MB, auch als Image)
- 4 serielle Ports (Verbunden mit Device oder File)
- 2 parallele Ports (Verbunden mit Device oder File (bidirektional))
- Keyboard (104-Tasten)
- Mouse, Tabletts (PS/2-Mouse)
- Netzwerkadapter (bis zu 3 Adapter (AMD PCNet Family))
- Sound (SoundBlaster 16)
- BIOS (Phoenix, Y2K fest)
- Geräte wie Floppy, CD-ROM, serielle und parallele Ports sowie raw-Partitions können nur von einer VMware oder dem Wirtssystem genutzt werden.
*) ab Version 2.0
| Systemvoraussetzungen |
Hardware:Software (Wirtssystem):
- Ein- oder Mehrprozessorsystem (x86)
- Pentium II-Prozessor 266MHz (auf 133MHz auch noch lauffähig)
- mindestens 64MB RAM, besser 128MB und mehr (abhängig vom Gastsystem)
- XFree86-unterstützte Grafikkarte
- Linux glibc-basiert
- Kernel 2.0.32 oder 2.2.x bei SMP
- XFree86 Version 3.3.4 oder höher mit DGA-Unterstützung
- oder WindowsNT, Windows2000
| Gastbetriebssystem |
- MS-DOS 6
- Windows 3.1
- Windows 95
- Windows 98
- Windows NT 4.0
- Windows 2000
- Linux
- FreeBSD
- Netware 4, Netware 5
- Solaris 7 (Intel-Plattform)
- SCO UNIX, UNIX-Ware, OS/2 laufen nicht unter VMware
| Installation (VMware) |
- Softwaredownload von www.vmware.com
- 30-Tage Evaluierungsschlüssel kostenlos erhältlich (email)
- Schlüssel für VMware 1.x funktioniert nicht mit VMware 2.0BETA
- tar-Archive mit Programmbinaries und Modulen
- Installation und Konfiguration durch Perlscript
- Moduln auch als Quelle im Archiv
- seit Version 1.1 für Linux auch RPM-Paket
- Installation nach /usr/bin, bisher /usr/local/bin/
- manuelle Konfiguration durch Perlscript
| Konfiguration (VMware) |
- license-File nach $(HOME)/.vmware/ kopieren
- Konfiguration durch Script /usr/bin/vmware-config.pl
- Suche nach passenden Kernelmoduln
Quellen für Kernelmoduln werden mitgeliefert und wenn notwendig übersetzt
- vmmon Hardwaremonitor -- Kommunikation mit CPU
- vmppuser, parport_pc, parport Kommunikation mit Parallelport
- wird Networking eingeschalten, werden /dev/vmnet1..4 installiert
- vmnet Gerätetreiber für virtuelle Interfaces
- vmnet-dhcpd vmwareeigener DHCP-Daemon
- ggf. Korrektur der DHCP-Konfiguration (Gateway wird nicht gesetzt)
| Konfiguration und Installation des Gastsystems |
- Konfiguration der Umgebung des Gastsystemes mit Wizard
- ggf. Feineinstellung der Umgebung mit dem Configuration Editor
- Einlegen einer bootfähigen CD-ROM oder Diskette mit dem Gastbetriebssystem
- ggf. im VMware-BIOS die Bootsequenz ändern
- "klassische" Installation und Konfiguration des Gastbetreibssystems
![]()
| Laufwerke |
- 4 IDE-Geräte an 2 Kanälen möglich
- 2 Floppys
- virtuelle Festplatten werden als File angelegt (oder rawdisk)
- Plattenkapazität wird bei der Konfiguration des Gastsystemes festgelegt, nachträglich nicht änderbar
- virtuelles HD-File wächst mit steigendem Füllstand im Gastsystem
- Verkleinerung bisher nur mit Zusatzwerkzeugen möglich (Symantec Ghost)
ab Version 2.0 ist Shrink für HD-Files möglich (auch zur Laufzeit im Gastsystem)- virtuelles HD-File kann auf anderes Wirtssystem übertragen werden oder Zugriff über Netzwerkfilesysteme (AFS)
- Floppy und CD-ROM werden direkt als Geräte vom Wirtssystem durchgereicht
- von VM genutze Geräte sind im Wirtssystem nicht verfügbar und umgekehrt
- Settings -> Removable Devices -> /dev/cdrom
| Laufwerke: HD-Modes |
- Persistent:
- alle Änderungen werden sofort geschrieben
- Undoable:
- während der Sitzung kein schreibender Zugriff auf HD-File
- Änderungen werden in einem redo-log-File gespeichert
- nach Sitzungsende bestehen folgende Möglichkeiten
- Commit
- Discard
- Keep ... führt zu weiterer Abfrage vor der nächsten Sitzung
- VMware-Crash wird wie Keep behandelt
- Nonpersistent:
- nur lesender Zugriff auf Disk-File
- nach Sitzungende werden alle Änderungen verworfen
- für den Betrieb mehrerer VMs mit gemeinsamer HD
| Netzwerkadapter |
- VM unterstützt bis zu 3 Netzwerkadapter
- Jeder Adapter kann mit folgenden Connection Types installiert werden:
- Bridged
- Host-only
- Custom
- jedes Adapter hat eindeutige Adresse (00:50:56:xx:yy:zz)
- Wertebereich für xx zwischen 00h und 3Fh
- Wertebereich für yy und zz zwischen 00h und FFh
- manuell gesetzt
- Hash aus IP (Wirt)
- zufällig
| Netzwerk: Bridged Mode |
- das im Gastsystem installierte Adapter wird mit dem Subnetz des Wirtes verbunden
- klassische Netzwerkkonfiguration im Gastsystem (eigene IP erforderlich)
- DHCP nutzbar, da Gast eigene MAC-Adresse besitzt
- Problem: Adapter des Wirtes wird in Promiscuous-Mode geschalten
![]()
(Quelle VMware, Inc.)
| Netzwerk: Host-only Mode |
- im Wirt wird ein virtuelles Adapter /dev/vmnet1 angelegt
- Kommunikation zwischen VMs und Wirt erfolgt über internes Netz
- Verbindung der VMs an Subnetz des Wirtes muss über Proxy bzw. IP-Forwarding erfolgen
![]()
(Quelle VMware, Inc.)
| Netzwerk: Custom Mode |
- /dev/vmnet2, /dev/vmnet3
- vollständig vom Wirt isolierte Netzwerkumgebung
- geeignet für Testumgebungen
![]()
(Quelle VMware, Inc.)
| weitere Geräte |
Schnittstellen
- 4 serielle Ports
- 2 parallele Port
- Zugriff direkt auf Device oder File
Mouse
- Hostmouse wird durchgereicht
- autodetect oder Mousetyp festlegen
Sound
- unterstützt der Wirt Audio (/dev/dsp), kann Sound aktiviert werden
- VM stellt einen SoundBlaster16 bereit (IO=0x220, IRQ=7, DMA=1,5)
- keine MIDI (MPU 401 disable)
Speicher
- einstellbar
- abhängig vom Wirt
| VMware Tools |
- VMware-Tools für Gastsystem
- Grafiktreiber (beschleunigt Grafikdarstellung, DGA 1.1)
- Registryschlüssel setzt Klartextpasswort für Sambaserver
- VMtool
- Release Mouse
- Cut and Paste zwischen Wirt- und Gastsystem
- Shrink für HD-Files *)
- Removeable Devices
![]()
*) ab Version 2.0
| VMware Tools |
- VMware-Tools für Wirtssystem
- Mountwerkzeug für virtuelle Platten
! nur "unbenutzte" Images mounten
% vmware-mount.pl -p nt4.dsk --------------------------------------------
VMware for Linux - Virtual Hard Disk Mounter
Version: 1.0 build-291
Copyright (C) 1999 VMware, Inc.
--------------------------------------------Nr Start Size Type Id Sytem
-- ---------- ---------- ---- -- ------------------------
1 63 2455425 BIOS 7 HPFS/NTFS
- Netzwerk Sniffer
% vmnet-sniffer -e /dev/vmnet1 len 98 src 00:50:56:db:19:08 dst 00:50:56:8a:00:00 IP src 192.168.208.131 dst 192.168.208.1 ICMP ping request
len 98 src 00:50:56:8a:00:00 dst 00:50:56:db:19:08 IP src 192.168.208.1 dst 192.168.208.131 ICMP ping reply
len 98 src 00:50:56:db:19:08 dst 00:50:56:8a:00:00 IP src 192.168.208.131 dst 192.168.208.1 ICMP ping request
len 98 src 00:50:56:8a:00:00 dst 00:50:56:db:19:08 IP src 192.168.208.1 dst 192.168.208.131 ICMP ping reply
len 42 src 00:50:56:8a:00:00 dst 00:50:56:db:19:08 ARP sender 00:50:56:8a:00:00 192.168.208.1 target 00:00:00:00:00:00 192.168.208.131 ARP request
len 42 src 00:50:56:db:19:08 dst 00:50:56:8a:00:00 ARP sender 00:50:56:db:19:08 192.168.208.131 target 00:50:56:8a:00:00 192.168.208.1 ARP reply
| IP Masquerading |
Das Gastsystem nutzt zur internen Kommunikation mit dem Wirt (Sambaserver) ein privates Subnetz.Wird Kommunikation des Gastsystemes mit dem Subnetz des Wirtes benötigt, müssen die IP-Pakete des Gastes mit der IP-Adresse des Wirtes maskiert werden.
z.B. Internetzugang via PPP
- verfeinern der DHCP-Konfiguration
Gateway setzten, DNS-Server modifizieren
% cat /etc/vmware/vmnet1/dhcpd/dhcpd.conf
allow unknown-clients;
default-lease-time 1800; # 30 minutes
max-lease-time 7200; # 2 hourssubnet 192.168.208.0 netmask 255.255.255.0 {
range 192.168.208.128 192.168.208.254;
option broadcast-address 192.168.208.255;
option domain-name-servers 134.109.132.51;
option routers 192.168.208.1;
}Einschalten von IP-Forwarding im Wirtssystem.
- VMware-Umgebung mit host-only-Netzwerk konfigurieren
- Gastsystem für DHCP konfigurieren und starten
- IP erhalten ? (cat /etc/vmware/vmnet1/dhcpd/dhcpd.leases)
% echo 1 > /proc/sys/net/ipv4/ip_forward % modprobe ip_masq_ftp
% /sbin/ipchains -P forward DENY
% /sbin/ipchains -A forward -s 192.168.208.0/24 -j MASQ
| Geräte an serieller/paralleler Schnittstelle |
- erfolgreich getestet:
- Drucker an paralleler Schnittstelle
- Modem an serieller Schnittstelle
- Digitalkamera an serieller Schnittstelle
- funktionieren nicht:
- Connectix QuickCam am Parallelport
| Neu in Version 2.0BETA |
- gesteigerte Performance
- SCSI-Disk und CD-ROM support
- Einfrieren der VM mit Speicherfreigabe
- VMware Tools in der Installation enthalten, Floppyimage aktivierbar
- Installation enthält vmwareeigenen Sambaserver für Zugriff auf Hostfilesysteme
- Shrink disk, anpassen der virtuellen Diskfiles an real genutzte Größe
- Unterstützung für Soundeingänge
| Kommunikation mit Hostfilesystemen |
Das Gerätemanagement für Disks und Floppys erlaubt keine gemeinsame Nutzung einer Ressource zur gleichen Zeit.Ausweg: Netzwerk (mit Gastsystem Windows ... Sambaserver)
Sambakonfiguration (Wirtssystem)
- VMware 2.0 bringt bei der Installation eigenen Sambaserver mit
- Konfiguration von VMware "allow access the host filesystem"
- Networking einschalten, vmnet laden
- Host-only networking aktiviert, vmnet-dhcpd starten
- CIFS/SMB, Sambaserver für privates Subnetz konfigurieren und starten
- Nutzer für Sambaserver einrichten
/usr/bin/vmware-smbpasswd vmnet1 -a <username>
setzt Sambapasswort für am Wirt bekannten NutzerNetzwerkumgebung im Gastsystem
- Zugriff nur vom privatem Subnetz erlaubt
- Authentifizierung:
- User mit verschlüsselten Passwort
- nur im Wirtssystem registrierte Nutzer
- Passworte explizit in /etc/vmware/vmnet1/smb/private/smbpasswd
- Ressourcen:
- Homeverzeichnisse
- Filesystemwurzel des Wirtes
- alle Drucker des Wirtssystemes (/etc/printcap)
- Sambaserver mit Namen des Wirtssystems ist Mitglied der WORKGROUP
- Homeverzeichnis: \\hostname\username
- Wurzel: \\hostname\HostFS
- Drucker: \\hostname\printername
| rawdisk-Konfiguration |
- Nutzung eines bereits lokal installierten Betriebssystemes in VMware
- vorhandene Betriebssysteminstallation mit Hardwareprofilen konfigurieren
- Zugriffsmodi (persistent, undoable, nonpersistent) einstellbar
- Zugriffsrechte für Gerätefiles (/dev/hda ...) setzen
- vmware-wizard -rawdisk
![]()
! lilo erfordert lesenden Zugriff auf /boot
! keine gemounteten Partitionen für VMware schreibbar freigeben
| Anwendungsmöglichkeiten |
- Softwareentwicklung und -test unter verschiedenen Plattformen
- Analysieren von Netzwerkprotokollen
- Hilfestellung im Bereich Hotline und Support
- Softwaretests in gesicherter Umgebung (Viren)
- Netzwerkversuche in isolierter Umgebung
- Anwendungen, welche z.B. MS-Betriebssystemplattform erfordern
- Testen von Webseiten (Netscape, IE)
- ...
| Probleme |
- nach Versionsupdates kann es zur Änderung der MAC-Adresse einer VM-Konfiguration kommen (DHCP)
- manuell festgelegte MAC-Adressen werden z.T. abgelehnt
- VMware prüft keine doppelt vergebenen MAC-Adressen
- AFS-Client unter WindowsNT arbeitet nicht stabil mit IP-Masquerading
- WindowsNT-Domänenfunktionalität funktioniert nicht mit IP-Masquerading
- Kommunikation mit bidirektionalen Parallelport problematisch
- SCSI-Unterstützung nicht für Scanner, Tapes, ...
| Kosten |
- 1 kommerzielle Lizenz kostet z.Zt. 299 $
- 1 Lizenz für nichtkommerzielle Nutzung kostet 99 $
- Update auf Version 2.0 kostenlos, wenn Lizenz nach dem 01.Januar 2000 erworben
gültig bis 01.Juni 2000- 1 Lizenz mit vorinstalliertem SuSE Linux kostet 309$
| Links |
- www.vmware.com
- news.vmware.com
- VMware an der TU Chemnitz
- www.freemware.org
- www.bochs.com (Hardwareemulator, kommerziell 30-Tage-Test)