Suchen und Finden
Service
Infos und Kontakt
Inhalt
5
Vorwort
11
Zu diesem Buch
11
Zielgruppe des Buchs
12
Voraussetzungen
12
Aufbau
13
Hinweise zur Lektüre
16
Typografische Konventionen
17
Danksagung
18
Die Website zum Buch
19
Anmerkungen, Fehler und Kritik
19
Einführung in die Virtualisierung
21
1.1 Was ist Virtualisierung?
21
Versteckte Virtualisierung im Alltag
22
Virtualisierung außerhalb der Informatik
22
1.2 Die Geschichte der Virtualisierung
23
Virtualisierung aus der Sicht der Mathematik
24
Siehe auch
25
1.3 Einsatzgebiete und Vorteile
26
Kosteneffizienz
26
Virtualisierung und Abstraktion
26
Harmonisierung
27
Flexibilität
27
Sicherheit
27
Einsparung von Hardware
28
1.4 Virtualisierungsarten
28
Virtualisierung bei Programmiersprachen
28
Interpretation und Simulation/Emulation
29
Systemvirtualisierung
32
Prozessvirtualisierung
34
Full Virtualization/Hardware-Virtualisierung
34
Paravirtualisierung
36
Hardware-Virtualisierung durch Partitionierung
36
1.5 Was ist Xen?
37
Die Xen-Terminologie
39
Was kann ich mit Xen machen?
40
Wo kann ich Xen herbekommen?
40
Was ist neu in Xen 3.2?
40
Xen installieren und das Hostsystem vorbereiten (Domain-0)
42
2.1 Xen-Installation auf Basis des Quellcodes
43
Problem
43
Lösung
43
Diskussion
43
Mercurial
44
Siehe auch
46
Hinweis zur Physical Address Extension (PAE)
46
2.2 Erstellung einer initialen RAM-Disk
47
Problem
47
Lösung
47
Diskussion
48
Siehe auch
48
2.3 Anpassung des Boot-Managers
49
Problem
49
Lösung
49
Diskussion
49
Die Boot-Einträge nicht-virtualisierter Systeme
50
Siehe auch:
52
2.4 Xen unter Ubuntu installieren
52
Problem
52
Lösung
52
Diskussion
53
Paketauswahl abhängig von der vorhandenen Hardware
54
Siehe auch
55
2.5 Xen unter Debian installieren
55
Problem
55
Lösung
55
Diskussion
56
Siehe auch
57
2.6 Xen unter openSUSE installieren
57
Problem
57
Lösung
57
Diskussion
57
Siehe auch
58
2.7 Xen unter Fedora installieren
59
Problem
59
Lösung
59
Fedora 9 und Xen
59
Diskussion
60
Siehe auch
61
2.8 Installation der Binärpakete von xensource.com
61
Problem
61
Lösung
61
Diskussion
62
Siehe auch
63
2.9 Die TLS-Bibliothek deaktivieren
63
Problem
63
Lösung
63
Diskussion
64
Siehe auch
64
Näheres zu TLS
64
2.10 Starten, Stoppen und Neustarten des Xen-Daemons
66
Problem
66
Lösung
66
Diskussion
67
Siehe auch
67
2.11 Deinstallation von Xen unter Debian und Ubuntu
68
Problem
68
Lösung
68
Diskussion
68
Siehe auch
69
2.12 Deinstallation von Xen unter Fedora
69
Problem
69
Lösung
69
Diskussion
69
Siehe auch
69
2.13 Deinstallation von Xen unter openSUSE
70
Problem
70
Lösung
70
Diskussion
70
Gestatten: yum
70
Siehe auch
71
2.14 Deinstallation von Xen als Binärpaket
71
Problem
71
Lösung
71
Diskussion
71
Siehe auch
72
2.15 Deinstallation eines aus den Quellen kompilierten Xen
72
Problem
72
Lösung
72
Diskussion
72
Siehe auch
73
2.16 Xen unter Debian und Ubuntu aktualisieren
73
Problem
73
Lösung
73
Diskussion
74
Siehe auch
74
2.17 Xen unter openSUSE aktualisieren
74
Problem
74
Lösung
75
Diskussion
75
Siehe auch
75
2.18 Xen unter Fedora-Linux aktualisieren
75
Problem
75
Lösung
75
Diskussion
75
Siehe auch
76
2.19 Ein aus den Quellen oder als Binärpaket installiertes Xen aktualisieren
76
Problem
76
Lösung
76
Diskussion
77
2.20 Xend in den Boot-Vorgang einbinden
77
Problem
77
Lösung
77
Diskussion
78
Siehe auch
79
2.21 Automatisches Starten der Gastsysteme
79
Problem
79
Lösung
79
Diskussion
79
Siehe auch
79
Konfiguration des Hostsystems (Domain-0)
80
3.1 Konfiguration des Xen-Daemons (xend)
80
Problem
80
Lösung
80
Diskussion
83
Siehe auch
85
Hinweis
85
3.2 Ein Bridging-Netzwerk einrichten
86
Problem
86
Lösung
86
Diskussion
87
Siehe auch
92
3.3 Ein Routing-Netzwerk einrichten
93
Problem
93
Lösung
94
Diskussion
94
Siehe auch
95
3.4 Ein Netzwerk mit Network Address Translation konfigurieren
95
Problem
95
Lösung
96
Diskussion
96
Siehe auch
99
Einsatz von Xen mit einem DHCP-Server
99
Siehe auch
100
Vorbereitung des Systems auf die Gäste (Paravirtualisierung)
101
4.1 Speicherplatz auf Basis physikalischer Geräte einrichten
101
Problem
101
Lösung
101
Diskussion
102
Konfiguration des Storage Backends
102
4.2 Speicherplatz auf Basis physikalischer Geräte mit LVM einrichten
103
Problem
103
Xen2 vs. Xen3
103
Lösung
104
Diskussion
104
Siehe auch
108
4.3 Dateibasierte Geräte als Storage Backend einsetzen
109
Problem
109
Lösung
109
Diskussion
109
Siehe auch
111
4.4 Zugriff auf die root-Partition über NFS
111
Problem
111
Lösung
111
Diskussion
112
Siehe auch
112
4.5 Erstellung des Dateisystems
113
Problem
113
Lösung
113
Diskussion
113
4.6 Konfiguration des Gastsystems
114
Problem
114
Lösung
114
Diskussion
115
Vergabe von MAC-Adressen
116
4.7 Booten des Gastsystems
117
Problem
117
Lösung
117
Diskussion
117
Siehe auch
120
Distributionsspezifische Gast-Installation (Paravirtualisierung)
121
5.1 Gastsysteme mit virt-install unter Fedora installieren
121
Problem
121
Lösung
121
Diskussion
122
NFS-Export als Installationsquelle
123
Siehe auch
124
5.2 Gastsysteme mit YaST auf SUSE installieren
125
Problem
125
Lösung
125
Diskussion
125
Siehe auch
128
5.3 Gastsysteme für Debian und Ubuntu mit Xen-Tools installieren
128
Problem
128
Lösung
128
Diskussion
129
Siehe auch
130
5.4 Paravirtualisiertes NetBSD
130
Problem
130
Lösung
130
Diskussion
131
Siehe auch
134
Unmodifizierte Gastsysteme
135
6.1 Einführung:
135
6.2 Xen und die x86-Ringe paravirtualisiert
138
Hypercalls
138
Xen und die x86-Ringe hardwarevirtualisiert
139
Einschränkungen für die Hardwarevirtualisierung
139
6.3 Hardware-Unterstützung prüfen
139
Problem
139
Lösung
140
Diskussion
140
Unterstützte Hardware
140
Siehe auch
141
6.4 Konfiguration für unmodifizierte Gastsysteme
142
Problem
142
Lösung
142
Diskussion
142
6.5 Von einem CD/DVD-Laufwerk booten
143
Problem
143
Lösung
143
Diskussion
143
Siehe auch
144
6.6 Von einer (virtuellen) Festplatte booten
144
Problem
144
Lösung
144
Diskussion
144
Siehe auch
145
6.7 Booten einer Live-CD/DVD
145
Problem
145
Lösung
145
Diskussion
145
Simple DirectMedia Layer (SDL)
146
Siehe auch
147
Virtual Network Computing ( VNC)
147
6.8 Installation von Linux
148
Problem
148
Lösung
148
Diskussion
149
Siehe auch
151
6.9 Installation von Windows
151
Problem
151
Lösung
151
Diskussion
152
Vista
155
Windows 2008
155
6.10 Benutzung der virtuellen Windows-Systeme
155
Problem
155
Lösung
155
Diskussion
156
Siehe auch
157
Hardwarezugriff
158
7.1 Hotplugging virtueller Festplatten
158
Problem
158
Lösung
158
Diskussion
159
Siehe auch
160
7.2 Hotplugging virtueller Netzwerkkarten
160
Problem
160
Lösung
160
Virtuelle Festplatten mit dem Block-Tap-System
160
Diskussion
161
Siehe auch
162
7.3 Ein virtuelles Trusted Platform-Module (TPM) nutzen
162
Problem
162
Lösung
162
Diskussion
163
Siehe auch
164
7.4 Der virtuelle Framebuffer
164
Problem
164
Lösung
164
Diskussion
165
Siehe auch
166
7.5 PCI-Karten in einem Gastsystem zugänglich machen
166
Problem
166
Lösung
166
Diskussion
167
Siehe auch
167
7.6 Eine Backend-Domain konfigurieren
167
Problem
167
Lösung
168
Diskussion
169
Siehe auch
169
7.7 OpenGL-Hardware-3-D-Beschleunigung für virtuelle Maschinen: VMGL
169
Problem
170
Lösung
170
Diskussion
171
Siehe auch
171
Die VMGL-Architektur
172
Automatische Installation
173
8.1 Einführung
173
Automatisierte Linux-Installation
173
Siehe auch
174
Installation in ein Verzeichnis
174
Klonen virtueller Maschinen
174
8.2 Installation minimaler Linux-Systeme in ein Verzeichnis
174
Problem
175
Lösung
175
Diskussion
176
chroot()
177
Siehe auch
178
8.3 Installation eines minimalen SUSE-Systems für eine virtuelle Maschine
178
Problem
178
Lösung
178
Diskussion
179
Siehe auch
181
8.4 Installation einer virtuellen Maschine auf Basis einer RPM- basierten Linux- Distribution
181
Problem
181
Lösung
181
Diskussion
183
Siehe auch
183
8.5 Einsatz vorgefertigter DomUs (paravirtualisiert)
184
Problem
184
Lösung
185
Diskussion
185
Siehe auch
186
8.6 Austausch der Kernel-Module innerhalb der virtuellen Maschine
186
Problem
186
Heterogene Xen-Umgebung
186
Lösung
187
Diskussion
187
Siehe auch
188
8.7 Klonen virtueller Maschinen
188
Problem
189
Lösung
189
Siehe auch
191
8.8 Vorbereitungen zum Klonen einer hardwarevirtualisierten Windows- Domäne mittels sysprep
191
Problem
191
Lösung
191
Diskussion
191
Siehe auch
192
Backup & Restore
193
9.1 Den Zustand einer virtuellen Maschine speichern
193
Problem
193
Lösung
194
Diskussion
194
Siehe auch
195
9.2 Eine virtuelle Maschine anhalten
195
Problem
195
Lösung
196
Diskussion
196
Siehe auch
196
9.3 Backup via FTP
196
Lösung
197
Diskussion
197
Siehe auch
198
9.4 Backup mit rsync
198
Problem
198
Lösung
198
Diskussion
199
Siehe auch
200
9.5 Backup mit LVM
201
Problem
201
Lösung
201
Diskussion
202
Siehe auch
203
9.6 Xen & RAID: Virtuelle Maschinen auf einem Software- RAID- 1 betreiben
203
Problem
203
Lösung
203
Copy-On-Write (COW)
204
Diskussion
207
Siehe auch
208
Migration virtueller Maschinen
209
10.1 Einführung: Unterschiedliche Migrationskonzepte im Überblick
209
10.2 Physical-to-Virtual-Migration (P2V) mit Hardwarevirtualisierung
210
Problem
210
Lösung
210
Diskussion
211
Siehe auch
215
10.3 P2V-Migration ohne Hardwarevirtualisierung
215
Problem
215
Lösung
216
Datenübertragung mit rsync
217
Diskussion
218
Siehe auch
219
10.4 Ein physikalisches Fedora/Red Hat Enterprise Linux virtualisieren
219
Problem
219
Lösung
219
Diskussion
220
Siehe auch
221
10.5 P2V von OpenSUSE/SUSE Linux Enterprise-Servern
222
Problem
222
Lösung
222
Diskussion
223
Siehe auch
224
10.6 Von VMware zu Xen migrieren
224
Problem
224
Lösung
224
Virtual-to-Physical-Migration (V2P)
224
Diskussion
226
Siehe auch
227
Live-Migration
228
11.1 Konfiguration des Xen-Relocation-Servers
228
Problem
228
Lösung
228
Diskussion
229
Siehe auch
230
11.2 Live-Migration zwischen verschiedenen Hosts
231
Problem
231
Lösung
231
Diskussion
232
Siehe auch
236
Offline-Migration
237
Hochverfügbarkeit
238
12.1 Verteilte Replikation von Dateisystemen via DRBD
240
Problem
240
Lösung
240
Loadbalancing
240
Diskussion
243
Siehe auch
245
12.2 Xen-Cluster mit Ganeti verwalten
246
Problem
246
Lösung
246
Unterstützung weiterer Distributionen durch Ganeti
246
Diskussion
250
Ganeti in a Nutshell
251
Siehe auch
259
12.3 Hochverfügbarkeitscluster mit Heartbeat einrichten
260
Problem
260
Lösung
260
Diskussion
262
Siehe auch
264
12.4 Virtuelle Xen-Gäste im Hochverfügbarkeitscluster
264
Problem
264
Lösung
265
Diskussion
267
Siehe auch
268
Monitoring
269
13.1 Einführung
269
Warum Monitoring?
269
Typische Fragen, die ein Monitoring beantworten soll
270
13.2 Monitoring mit Xens Bordmitteln
270
Problem
270
Lösung
270
Diskussion
272
Das S-Expression-Format
275
Siehe auch
281
13.3 Virtuelle Maschinen unter Fedora Linux überwachen
281
Problem
281
Lösung
281
Diskussion
282
Siehe auch
282
13.4 Die CPU-Auslastung mit XenStats auswerten
283
Problem
283
Lösung
283
Diskussion
286
Siehe auch
286
13.5 Monitoring virtueller Maschinen mithilfe von Nagios – vorbereitende Schritte
287
Problem
288
Lösung
288
Diskussion
296
Siehe auch
303
13.6 Monitoring von Domain-0s und ihren virtuellen Maschinen mit Nagios
304
Problem
304
Lösung
304
Diskussion
307
Siehe auch
311
13.7 Alternative Lösungen
311
Problem
311
Lösung
311
Diskussion
313
Siehe auch
313
Virtuelle Maschinen verwalten
315
14.1 Textbasierte Verwaltung virtueller Maschinen mit der Xen- Shell
316
Problem
316
Lösung
316
Diskussion
317
Einige wichtige Xen-Shell-Kommandos
318
Siehe auch
319
14.2 Webbasierte Verwaltung mit Enomalism
319
Problem
319
Lösung
319
Diskussion
320
Siehe auch
321
14.3 Grafische Verwaltung virtueller Maschinen mit XenMan
321
Problem
321
Lösung
322
Diskussion
322
Siehe auch
323
14.4 Grafische Verwaltung virtueller Maschinen mit dem Virtual Machine Manager (virt-manager)
323
Problem
323
Lösung
324
Diskussion
324
Siehe auch
325
Eigene Anwendungen zum Xen- Management entwickeln
326
15.1 Einführung: Die libvirt-Bibliothek
326
15.2 Die libvirt unter Fedora installieren
328
Problem
328
Lösung
328
Diskussion
328
Siehe auch
329
15.3 Die libvirt unter openSUSE installieren
329
Problem
329
Lösung
329
Diskussion
329
Siehe auch
330
15.4 Die libvirt unter Debian installieren
330
Problem
330
Lösung
330
Diskussion
330
Siehe auch
330
15.5 Die libvirt aus dem Quellcode installieren
331
Problem
331
Lösung
331
Diskussion
333
Siehe auch
333
15.6 Das erste C-Programm mit libvirt
334
Problem
334
Lösung
334
Diskussion
334
Siehe auch
335
Connection-URIs
335
15.7 Das erste Python-Programm mit libvirt
336
Problem
336
Lösung
336
Diskussion
336
Siehe auch
337
15.8 Die Fähigkeiten des Hypervisors in C-Programmen anzeigen
337
Problem
337
Lösung
337
Diskussion
338
Siehe auch
338
15.9 Die Fähigkeiten des Hypervisors in Python-Skripten anzeigen
338
Problem
338
Lösung
339
Diskussion
339
Siehe auch
339
15.10 Eine Domäne verwalten
339
Problem
340
Lösung
340
Diskussion
340
Siehe auch
340
15.11 Eine neue Domäne anlegen
341
Problem
341
Lösung in C
341
Lösung in Python
341
Diskussion
341
Siehe auch
342
15.12 Eine Domäne herunterfahren
342
Problem
342
Lösung in C
342
Lösung in Python
343
Diskussion
343
Siehe auch
343
15.13 Eine Domäne »einschlafen« lassen
343
Problem
343
Lösung in C
343
Lösung in Python
343
Diskussion
344
Siehe auch
344
15.14 Eine Domäne aufwecken
344
Problem
344
Lösung in C
344
Lösung in Python
344
Diskussion
344
Siehe auch
345
15.15 Die Gastsysteme in einem C-Programm auflisten
345
Problem
345
Lösung
345
Diskussion
346
Siehe auch
347
15.16 Die Gastsysteme in einem Python-Skript auflisten
347
Problem
347
Lösung
347
Diskussion
347
Siehe auch
348
15.17 Die Geräte einer Domäne mit einem C-Programm verwalten
348
Problem
348
Lösung
348
Diskussion
349
Siehe auch
349
15.18 Die Geräte einer Domäne mit einem Python-Skript verwalten
349
Problem
349
Lösung
349
Diskussion
350
Siehe auch
350
Der XenStore
351
16.1 Einführung: Aufbau und Navigation der XenStore- Verzeichnisstruktur
352
16.2 Informationen auslesen
353
Problem
353
Lösung
353
Diskussion
353
16.3 Einträge anlegen und modifizieren
354
Problem
354
Lösung
354
Diskussion
354
16.4 Einträge entfernen
355
Problem
355
Lösung
355
Diskussion
355
Siehe auch
355
Ressourcenkontrolle
356
17.1 Einführung in die Speicherverwaltung
356
17.2 Speicherlimits für virtuelle Maschinen einrichten
357
Problem
357
Lösung
357
Diskussion
358
Siehe auch
359
17.3 Einführung: CPUs verwalten
360
17.4 Zuordnung zwischen virtuellen CPUs und Gastsystemen
360
Problem
360
Lösung
361
Die virtuellen CPUs einer Domain anzeigen
361
Diskussion
362
Siehe auch
363
17.5 Zuordnung zwischen logischen CPUs und Gastsystemen
363
Problem
363
Lösung
363
Diskussion
363
Siehe auch
364
17.6 Scheduling von CPU-Zyklen
364
Problem
364
Lösung
364
Diskussion
364
Siehe auch
365
17.7 Traffic Shaping mit Xen
366
Problem
366
Lösung
366
Funktionsweise des Credit-Based-Schedulers
366
Diskussion
367
Siehe auch
367
Sicherheit
368
18.1 Einführung
368
Sicherheit durch virtualisierte Betriebssystemumgebungen
369
18.2 Die Daten virtueller Maschinen verschlüsseln
370
Problem
370
Lösung
370
Performance
371
Diskussion
375
Siehe auch
377
18.3 Vorüberlegungen zum Firewall-Setup unter Xen
378
Problem
378
Lösung
378
Diskussion
378
Siehe auch
379
18.4 Firewall-Konfiguration in einem Bridge-Setup (Dom0)
379
Problem
379
Lösung
379
Diskussion
380
Siehe auch
386
18.5 Firewall-Konfiguration in einem NAT-Setup (Dom0)
386
Problem
386
Lösung
386
Diskussion
387
Siehe auch
388
18.6 Firewall-Konfiguration in einem Routing-Setup (DomU)
388
Problem
388
Lösung
388
Diskussion
389
Siehe auch
391
18.7 Firewall-Setup mit der DTC-Xen-Firewall unter Debian GNU/ Linux oder Ubuntu
391
Problem
391
Lösung
391
Diskussion
391
Siehe auch
394
18.8 Mechanismen zur Zugriffskontrolle einrichten
394
Problem
395
Lösung
395
Partitionen/LVM
400
Diskussion
401
Covert Channels
403
Siehe auch
407
18.9 Xen und Intrusion-Detection-Systeme (IDS)
408
Problem
408
Lösung
408
Diskussion
408
Siehe auch
410
Xen & Trusted Computing
410
Troubleshooting
411
19.1 Zeitabweichung in der virtuellen Maschine
411
Problem
411
Lösung
411
Diskussion
412
Siehe auch
413
19.2 Die Fehlermeldung »Backend Device not found«
413
Problem
413
Lösung
413
Diskussion
414
Siehe auch
415
19.3 Die Meldung »Is a directory«
416
Problem
416
Lösung
416
Siehe auch
417
19.4 Die Meldung »Error: (22, 'Invalid argument')«
417
Problem
417
Lösung
417
Siehe auch
419
19.5 »4gb seg fixup« – eine Fehlermeldung unter Debian
419
Problem
419
Lösung
419
Diskussion
419
Siehe auch
420
19.6 Einen Bugreport einreichen
420
Problem
420
Lösung
420
Diskussion
422
Siehe auch
423
Erweiterte Netzwerkkonfiguration
424
20.1 Eine VLAN-Umgebung einrichten
424
Problem
424
Lösung
425
Diskussion
425
Siehe auch
426
20.2 Zugriff auf ein VLAN von der Domain-0 einrichten
426
Problem
426
Lösung
426
Diskussion
427
Siehe auch
428
20.3 Zugriff auf ein VLAN von einer Domain-U einrichten
428
Problem
428
Lösung
428
Diskussion
428
Siehe auch
429
20.4 Einer virtuellen Maschine den Zugriff auf ein VLAN ermöglichen
429
Problem
429
Lösung
429
Diskussion
429
Siehe auch
430
20.5 Bonding-Unterstützung aktivieren
430
Problem
430
Lösung
430
Diskussion
431
Siehe auch
432
20.6 Ein Bonding-Device einsetzen
432
Problem
432
Lösung
432
Diskussion
433
Siehe auch
435
Das Programm xm im Überblick
436
Virtuelle Maschinen verwalten
437
Befehle zur Steuerung der Domain-0
443
Virtuelle Blockgeräte verwalten
444
Virtuelle Netzwerkadapter verwalten
446
Virtuelle TPM-Geräte
447
Access Control Lists
448
Policies verwalten
448
Informationen abfragen
449
Labels hinzufügen
449
Labels entfernen
450
Sonstige Befehle
451
Glossar
452
Weiterführende Informationen
458
Literaturhinweise
458
Mailinglisten
459
Das Xen-Projekt
459
Debian GNU/Linux
461
Red Hat/Fedora
461
OpenSuSE
462
Ubuntu
463
NetBSD
463
OpenSolaris
463
Internet Relay Chat (IRC)
464
Webseiten
464
Xen
464
Debian
464
Fedora
465
Red Hat
465
openSUSE
465
Ubuntu
466
Veranstaltungen
466
Index
467
Alle Preise verstehen sich inklusive der gesetzlichen MwSt.; Ersparnis im Vergleich zur Printversion





















