Virtualisierung · 4 min read · Jan 31, 2026

Virtualisierung mit KVM auf einem CentOS 5.2 Server

Virtualisierung mit KVM auf einem CentOS 5.2 Server

Version 1.0
Autor: Falko Timme

Dieser Leitfaden erklärt, wie Sie KVM installieren und verwenden können, um virtuelle Maschinen auf einem CentOS 5.2 Server zu erstellen und auszuführen. Ich werde zeigen, wie man bildbasierte virtuelle Maschinen und auch virtuelle Maschinen erstellt, die ein logisches Volume (LVM) verwenden. KVM steht für Kernel-basierte Virtual Machine und nutzt die Hardwarevirtualisierung, d.h. Sie benötigen eine CPU, die Hardwarevirtualisierung unterstützt, z.B. Intel VT oder AMD-V.

Ich gebe keine Garantie, dass dies bei Ihnen funktioniert!

1 Vorbemerkung

Ich verwende hier einen CentOS 5.2 Server mit dem Hostnamen server1.example.com und der IP-Adresse 192.168.0.100 als meinen KVM-Host.

Wir benötigen auch ein Desktop-System, auf dem wir virt-manager installieren, damit wir eine Verbindung zur grafischen Konsole der virtuellen Maschinen herstellen können, die wir installieren. Ich verwende hier ein Ubuntu 8.10 Desktop.

2 KVM installieren

CentOS 5.2 KVM-Host:

Führen Sie aus

system-config-securitylevel

und setzen Sie SELinux auf Permissive (virt-install funktioniert nicht, wenn Sie SELinux auf Disabled setzen).

Überprüfen Sie dann, ob Ihre CPU Hardwarevirtualisierung unterstützt - wenn dies der Fall ist, sollte der Befehl

egrep '(vmx|svm)' --color=always /proc/cpuinfo

etwas anzeigen, z.B. so:

[root@server1 ~]# egrep '(vmx|svm)' --color=always /proc/cpuinfo  
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall  
 nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy misalignsse  
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall  
 nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy misalignsse  
[root@server1 ~]#

Wenn nichts angezeigt wird, unterstützt Ihr Prozessor keine Hardwarevirtualisierung, und Sie müssen hier aufhören.

Jetzt importieren wir die GPG-Schlüssel für Softwarepakete:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*

Um KVM und virtinst (ein Tool zur Erstellung virtueller Maschinen) zu installieren, führen wir aus

yum install kvm kmod-kvm qemu libvirt python-virtinst

Starten Sie dann das System neu:

reboot

Nach dem Neustart sollte das KVM-Kernelmodul geladen sein:

lsmod | grep kvm
[root@server1 ~]# lsmod | grep kvm  
kvm_amd                50452  0  
kvm                    109264  1 kvm_amd  
[root@server1 ~]#

(Diese Ausgabe stammt von einem System mit einem AMD-V-Prozessor. Wenn Ihr System eine Intel VT-CPU verwendet, sollte etwas wie kvm_intel angezeigt werden.)

Um zu überprüfen, ob KVM erfolgreich installiert wurde, führen Sie aus

virsh -c qemu:///system list

Es sollte etwas wie folgt anzeigen:

[root@server1 ~]# virsh -c qemu:///system list  
 Id Name                 State  
----------------------------------  
  
[root@server1 ~]#

Wenn stattdessen ein Fehler angezeigt wird, ist etwas schiefgegangen.

Als nächstes müssen wir einen Netzwerkbrücke auf unserem Server einrichten, damit unsere virtuellen Maschinen von anderen Hosts wie physische Systeme im Netzwerk erreicht werden können.

Dazu installieren wir das Paket bridge-utils…

yum install bridge-utils

… und konfigurieren eine Brücke. Erstellen Sie die Datei /etc/sysconfig/network-scripts/ifcfg-br0 (bitte verwenden Sie die Werte BOOTPROTO, BROADCAST, IPADDR, NETMASK und NETWORK aus der Datei /etc/sysconfig/network-scripts/ifcfg-eth0):

vi /etc/sysconfig/network-scripts/ifcfg-br0

| DEVICE=br0 TYPE=Bridge BOOTPROTO=static BROADCAST=192.168.0.255 IPADDR=192.168.0.100 NETMASK=255.255.255.0 NETWORK=192.168.0.0 ONBOOT=yes |

Ändern Sie /etc/sysconfig/network-scripts/ifcfg-eth0 wie folgt (kommentieren Sie BOOTPROTO, BROADCAST, IPADDR, NETMASK und NETWORK aus und fügen Sie BRIDGE=br0 hinzu):

vi /etc/sysconfig/network-scripts/ifcfg-eth0

| # Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ DEVICE=eth0 #BOOTPROTO=static #BROADCAST=192.168.0.255 HWADDR=00:10:A7:05:AF:EB #IPADDR=192.168.0.100 #NETMASK=255.255.255.0 #NETWORK=192.168.0.0 ONBOOT=yes BRIDGE=br0 |

Starten Sie das Netzwerk neu…

/etc/init.d/network restart

… und führen Sie aus

ifconfig

Es sollte jetzt die Netzwerkbrücke (br0) anzeigen:

[root@server1 ~]# ifconfig  
br0       Link encap:Ethernet  HWaddr 00:10:A7:05:AF:EB  
          inet addr:192.168.0.100  Bcast:192.168.0.255  Mask:255.255.255.0  
          inet6 addr: fe80::210:a7ff:fe05:afeb/64 Scope:Link  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  
          RX packets:17 errors:0 dropped:0 overruns:0 frame:0  
          TX packets:53 errors:0 dropped:0 overruns:0 carrier:0  
          collisions:0 txqueuelen:0  
          RX bytes:1160 (1.1 KiB)  TX bytes:14875 (14.5 KiB)  
  
eth0      Link encap:Ethernet  HWaddr 00:10:A7:05:AF:EB  
          inet6 addr: fe80::210:a7ff:fe05:afeb/64 Scope:Link  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  
          RX packets:13662 errors:7 dropped:160 overruns:4 frame:0  
          TX packets:11646 errors:0 dropped:0 overruns:0 carrier:0  
          collisions:0 txqueuelen:1000  
          RX bytes:15144608 (14.4 MiB)  TX bytes:1379942 (1.3 MiB)  
          Interrupt:74 Base address:0xcc00  
  
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0  
          inet6 addr: ::1/128 Scope:Host  
          UP LOOPBACK RUNNING  MTU:16436  Metric:1  
          RX packets:38 errors:0 dropped:0 overruns:0 frame:0  
          TX packets:38 errors:0 dropped:0 overruns:0 carrier:0  
          collisions:0 txqueuelen:0  
          RX bytes:4308 (4.2 KiB)  TX bytes:4308 (4.2 KiB)  
  
virbr0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00  
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0  
          inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0  
          TX packets:35 errors:0 dropped:0 overruns:0 carrier:0  
          collisions:0 txqueuelen:0  
          RX bytes:0 (0.0 b)  TX bytes:9987 (9.7 KiB)  
  
[root@server1 ~]#

3 Installation von virt-viewer oder virt-manager auf Ihrem Ubuntu 8.10 Desktop

Ubuntu 8.10 Desktop:

Wir benötigen ein Mittel, um eine Verbindung zur grafischen Konsole unserer Gäste herzustellen - wir können dafür virt-manager verwenden (siehe KVM-Gastverwaltung mit Virt-Manager auf Ubuntu 8.10). Ich gehe davon aus, dass Sie ein Ubuntu 8.10 Desktop verwenden.

Führen Sie aus

sudo aptitude install virt-manager

um virt-manager zu installieren.

(Wenn Sie ein Fedora 10 Desktop verwenden, können Sie virt-manager wie folgt installieren:

Werden Sie root…

su

… und führen Sie aus

yum install virt-manager

)

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.