Виртуализация · 3 min read · Feb 04, 2026
Виртуализация с KVM на сервере Mandriva 2010.0
Виртуализация с KVM на сервере Mandriva 2010.0
Версия 1.0
Автор: Фалько Тимме
Следите за мной в Twitter
Это руководство объясняет, как вы можете установить и использовать KVM для создания и запуска виртуальных машин на сервере Mandriva 2010.0. Я покажу, как создать виртуальные машины на основе образов, а также виртуальные машины, которые используют логический том (LVM). KVM - это сокращение от Kernel-based Virtual Machine и использует аппаратную виртуализацию, т.е. вам нужен процессор, который поддерживает аппаратную виртуализацию, например, Intel VT или AMD-V.
Я не даю никаких гарантий, что это сработает для вас!
1 Предварительная заметка
Я использую сервер Mandriva 2010.0 с именем хоста server1.example.com и IP-адресом 192.168.0.100 в качестве моего хоста KVM.
Нам также нужна настольная система, на которой мы установим virt-manager, чтобы мы могли подключиться к графической консоли виртуальных машин, которые мы установим. Я использую настольный компьютер Mandriva 2010.0.
2 Установка KVM
Хост KVM Mandriva 2010.0:
Сначала проверьте, поддерживает ли ваш процессор аппаратную виртуализацию - если это так, команда
egrep '(vmx|svm)' --color=always /proc/cpuinfoдолжна отобразить что-то, например, вот так:
[root@server1 administrator]# 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 rep_good extd_apicid pni cx16 lahf_lm cmp_legacy
svm extapic cr8_legacy 3dnowprefetch
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 rep_good extd_apicid pni cx16 lahf_lm cmp_legacy
svm extapic cr8_legacy 3dnowprefetch
[root@server1 administrator]#Если ничего не отображается, значит, ваш процессор не поддерживает аппаратную виртуализацию, и вам нужно остановиться здесь.
Чтобы установить KVM и virtinst (инструмент для создания виртуальных машин), мы выполняем
urpmi kvm libvirt0 python-virtinst libvirt-utilsЗатем запустите демон libvirt:
/etc/init.d/libvirtd startЧтобы проверить, успешно ли установлен KVM, выполните
virsh -c qemu:///system listОн должен отобразить что-то вроде этого:
[root@server1 administrator]# virsh -c qemu:///system list
Id Name State
----------------------------------
[root@server1 administrator]#Если отображается ошибка, значит, что-то пошло не так.
Далее нам нужно настроить сетевой мост на нашем сервере, чтобы наши виртуальные машины могли быть доступны с других хостов, как если бы они были физическими системами в сети.
Для этого мы устанавливаем пакет bridge-utils…
urpmi bridge-utils… и настраиваем мост.
Чтобы настроить мост, создайте файл /etc/sysconfig/network-scripts/ifcfg-br0 (пожалуйста, используйте значения BOOTPROTO, DNS1 (плюс любые другие настройки DNS, если они есть), GATEWAY, IPADDR, NETMASK и SEARCH из файла /etc/sysconfig/network-scripts/ifcfg-eth0):
vi /etc/sysconfig/network-scripts/ifcfg-br0| DEVICE=br0 TYPE=Bridge BOOTPROTO=static DNS1=145.253.2.75 GATEWAY=192.168.0.1 IPADDR=192.168.0.100 NETMASK=255.255.255.0 ONBOOT=yes SEARCH="example.com" |
Измените /etc/sysconfig/network-scripts/ifcfg-eth0 следующим образом (закомментируйте BOOTPROTO, DNS1 (и все другие DNS-серверы, если они есть), GATEWAY, IPADDR, NETMASK и SEARCH и добавьте BRIDGE=br0):
vi /etc/sysconfig/network-scripts/ifcfg-eth0| DEVICE=eth0 #BOOTPROTO=static #IPADDR=192.168.0.100 #NETMASK=255.255.255.0 #GATEWAY=192.168.0.1 ONBOOT=yes METRIC=10 MII_NOT_SUPPORTED=no USERCTL=no #DNS1=192.168.0.1 #DNS2=145.253.2.75 RESOLV_MODS=no LINK_DETECTION_DELAY=6 IPV6INIT=no IPV6TO4INIT=no ACCOUNTING=no BRIDGE=br0 |
Перезапустите сеть:
/etc/init.d/network restartЗатем выполните
ifconfigТеперь он должен показать сетевой мост (br0):
[root@server1 administrator]# ifconfig
br0 Link encap:Ethernet HWaddr 00:1E:90:F3:F0:02
inet addr:192.168.0.100 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::21e:90ff:fef3:f002/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:76 errors:0 dropped:0 overruns:0 frame:0
TX packets:88 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:8583 (8.3 KiB) TX bytes:15970 (15.5 KiB)
eth0 Link encap:Ethernet HWaddr 00:1E:90:F3:F0:02
inet6 addr: fe80::21e:90ff:fef3:f002/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:34905 errors:0 dropped:0 overruns:0 frame:0
TX packets:21722 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:48048128 (45.8 MiB) TX bytes:2539734 (2.4 MiB)
Interrupt:28
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:56 errors:0 dropped:0 overruns:0 frame:0
TX packets:56 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:5304 (5.1 KiB) TX bytes:5304 (5.1 KiB)
virbr0 Link encap:Ethernet HWaddr 4A:2C:D4:86:08:14
inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:44 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:9276 (9.0 KiB)
[root@server1 administrator]#3 Установка virt-manager на ваш настольный компьютер Mandriva 2010.0
Настольный компьютер Mandriva 2010.0:
Нам нужно средство для подключения к графической консоли наших гостей - мы можем использовать для этого virt-manager. Я предполагаю, что вы используете настольный компьютер Mandriva 2010.0.
Станьте root…
su… и выполните…
urpmi virt-manager… чтобы установить virt-manager.
(Если вы используете настольный компьютер Ubuntu 9.10, вы можете установить virt-manager следующим образом:
sudo aptitude install virt-manager)
4 Создание гостя Debian Lenny (на основе образа)
Хост KVM Mandriva 2010.0:
Теперь давайте вернемся к нашему хосту KVM Mandriva 2010.0.
Посмотрите на
man virt-installчтобы узнать, как его использовать.
Чтобы создать гостя Debian Lenny (в режиме моста) с именем vm10, 512 МБ ОЗУ, двумя виртуальными процессорами и образом диска ~/vm10.qcow2 (размером 12 ГБ), вставьте CD-диск Debian Lenny Netinstall в CD-привод и выполните
virt-install --connect qemu:///system -n vm10 -r 512 --vcpus=2 -f ~/vm10.qcow2 -s 12 -c /dev/cdrom --vnc --noautoconsole --os-type linux --os-variant debianlenny --accelerate --network=bridge:br0 --hvmКонечно, вы также можете создать ISO-образ CD-диска Debian Lenny Netinstall…
dd if=/dev/cdrom of=~/debian-500-amd64-netinst.iso… и использовать ISO-образ в команде virt-install:
virt-install --connect qemu:///system -n vm10 -r 512 --vcpus=2 -f ~/vm10.qcow2 -s 12 -c ~/debian-500-amd64-netinst.iso --vnc --noautoconsole --os-type linux --os-variant debianlenny --accelerate --network=bridge:br0 --hvmВывод будет следующим:
[root@server1 administrator]# virt-install --connect qemu:///system -n vm10 -r 512 --vcpus=2 -f ~/vm10.qcow2 -s 12 -c ~/debian-500-amd64-netinst.iso --vnc --noautoconsole --os-type linux --os-variant debianlenny --accelerate --network=bridge:br0 --hvm
Starting install...
Creating storage file vm10.qcow2 | 12 GB 00:00
Creating domain... | 0 B 00:00
Domain installation still in progress. You can reconnect to
the console to complete the installation process.
[root@server1 administrator]#Теперь нам нужно перенастроить наш SSH-демон, чтобы он разрешал подключения root (чтобы мы могли подключаться с нашего настольного компьютера Mandriva 2010.0 как root). Откройте /etc/ssh/sshd_config…
vi /etc/ssh/sshd_config… и измените строку PermitRootLogin следующим образом:
| [...] PermitRootLogin yes [...] |
Перезапустите SSH-демон после этого:
/etc/init.d/sshd restartGet new posts in your inbox
No spam. Unsubscribe anytime.