Александр Горбач


программирование, админство

Настройка KVM под Ubuntu Server 10.04 LTS. Часть 1 — Установка

без комментариев

В одном проекте пришлось сильно заморочиться виртуализацией. Так как опыта было маловато, то рылся серп на полную катушку. Самый толковый мануал оказался, как ни странно на сайте убунту, но в английском варианте. В общем для себя и всех делаем перевод, кое-где будут ремарки от себя). Так же опущены инструкции для систем ниже 10.04


Установка

Проверка

Во-первых проверяем, что процессор поддерживает вирутализацию.

Для того, чтобы установить KVM, необходимо чтобы процессор поддерживал аппаратную виртуализацию. Intel и AMD обе разработали поддержку в своих процессорах, соотвественно Intel VT-x (кодове имя Vanderpool) и AMD-V (кодовое имя Pacifica). Для того, чтобы видеть поддерживает ли процессор виртуализацию выполните команду:

egrep -c '(vmx|svm)' /proc/cpuinfo

Если увидели 0, то это значит что ваш процессор не поддерживает аппаратную виртуализацию.
Если 1 (или более) — поддерживает, но вы все еще должны убедиться, что вирутализация включена в BIOS.

По умолчанию, если вы загрузились в ядро в окружении XEN вы не увидите установленные флаги svm или vmx процессора с помощью команды grep. Для того чтобы увидеть вклюены они или нет из окружения xen, введите:

cat /sys/hypervisor/properties/capabilities

Вы должны увидеть флаги hvm в выводе.

Или же вы можете выполнить:

kvm-ok 

который выведет на экран что-то вроде вот этого:

INFO: Your CPU supports KVM extensions
INFO: /dev/kvm exists
KVM acceleration can be used

Если вы увидели :

INFO: Your CPU does not support KVM extensions
KVM acceleration can NOT be used

Вы все-таки можете запускать виртуальные машины, но они будут работать гораздо медленнее без расширений KVM.

Используйте по возможности 64-х битное ядро

Запуск 64-х битного ядра на хостовой операционной системе рекомендуется, но не обязательно.

  1. Для использования 2Гб оперативной памяти для ваших виртуальных машин, вы должны использовать 64-х битное ядро(см. 32bit_and_64bit). На 32-х битном ядре, вы сможете использовать не более 2 Гб оперативной памяти для каждой виртуальной машины.
  2. Так же на 64-х битной системе можно запускать 32-х и 64-х битные гостевые система. На 32-х битной только 32-х битные гостевые системы.

Для того, чтобы убедиться что ваш проецссор 64-х битный запустите команду:

egrep -c ' lm ' /proc/cpuinfo

Если выводится 0, то это хначит, что ваш процессор не 64-х битный.

Если 1 или больше, то оно самое. Примечание: lm — сокращение для Long Mode (Длинный Режим :)) что эквивалентно обозначению 64-х битный процессор.

Теперь, чтобы убедиться что запущено 64-х битное ядро, просто смотрим команду:

uname -m

x86_64 обозначает, что запущено 64х битное ядро. Если вы увидели i386, i486, i586 или i686, у вас запущено 32-х битное ядро.

Примечание: x86_64 это синоним для amd64.

Установка KVM

Установка необходимых пакетов

Для нижеследующей инструкции по установке, мы принимаем во внимание, что вы запускаете KVM на сервере, и, следовательно, мы не не имеем никаких X серверов на машине.

Вам необходимо сперва установить неcколько пакетов:

$ sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils
  • libvirt-bin устанавливает libvirtd который необходим для администрирования экземпляров qemu и kvm использующих libvirt
  • qemu-kvm это бакэнд — набор управляющих утилит
  • ubuntu-vm-builder удобный инструмент для создания виртуальных машин
  • bridge-utils создает мост (bridge) из вашей сети на виртуальные машины

Вы так же можете установить virt-viewer, для просмотра экземпляров виртуальных машин.

Добавление пользователей и групп

Пакет libvirtd-bin автоматически добавит вас в группу libvirtd. Вам нет необходимости добавлять себя в группу kvm.

После установки необходимо перелогиниться, чтобы пользователь стал эффективным членом группы libvirtd. Члены этой группы могут запускать виртуальные машины. (Вы так же можете написать ‘newgrp kvm’ в терминале, но это бдует иметь эффект только для этого терминала.)

Проверка установки

Вы можете проверить успешность установки следующей командой:

$ virsh -c qemu:///system list
 Id Name                 State
----------------------------------

$

Если же вы увидели что-то вроде этого:

$ virsh -c qemu:///system list
libvir: Remote error : Permission denied
error: failed to connect to the hypervisor
$

Что-то где-то напортачено.( к примеру, забыли перелогиниться) и вы, возможно заимеете безумное желание исправить это, до того как продвинетесь дальше. Собственно ошибка означает, что вы не можете получить доступ на запись к /var/run/libvirt/libvirt-sock.

Файл сокета должен иметь разрешения аналогичные этому:

$ sudo ls -la /var/run/libvirt/libvirt-sock
srwxrwx--- 1 root libvirtd 0 2010-08-24 14:54 /var/run/libvirt/libvirt-sock

На любителя: Установка virt-manager (графическое приложение)

Если вы работаете на десктопе, вы можете пожелать установить графический инструмент для управления виртуальными машинами.

$ sudo apt-get install virt-manager

Virtual Machine Manager будет находиться в Applications -> System Tools menu. Сначала создайте новое соединения с локальным экземпляром QEMU из меню File -> Add Connection. Localhost (QEMU) должен появиться в списке виртуальных машин. Примечание: там уже присутствует соединения (QEMU Usermode) но оно не работает, по крайней мере на Ubuntu 10.04.

Создайте виртуальную машину нажатием кнопки в верхнем левом углу Create a new virtual machine.

Автор Sash(k)a

Август 22nd, 2011 at 12:14 дп

Опубликовано в Без рубрики

Тэги , , ,

Яндекс.Метрика