Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: KVM & QEMU\несколько вопросов  (Прочитано 47957 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн arrecck

  • Старожил
  • *
  • Сообщений: 1725
    • Просмотр профиля
Re: Гипервизор KVM/QEMU
« Ответ #15 : 19 Апреля 2012, 11:16:23 »
не проще юзера добавить в группу kvm?

Оффлайн thunderamur

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6846
    • Просмотр профиля
Re: Гипервизор KVM/QEMU
« Ответ #16 : 19 Апреля 2012, 11:44:30 »
не проще юзера добавить в группу kvm?
это позволит и удалять ВМ и полноценно рулить сетью из virt-manager?

Оффлайн arrecck

  • Старожил
  • *
  • Сообщений: 1725
    • Просмотр профиля
Re: Гипервизор KVM/QEMU
« Ответ #17 : 19 Апреля 2012, 12:07:54 »
на этот вопрос не могу ответить я virt-manager не ставил, пользую qemu-kvm (не для работы, а так поиграться, arch понадобился)


Оффлайн MadKox

  • Активист
  • *
  • Сообщений: 441
  • =)
    • Просмотр профиля
    • Моя страница на Launchpad
Re: Гипервизор KVM/QEMU
« Ответ #18 : 19 Апреля 2012, 12:14:20 »
Пользователь, добавленный в группы kvm и libvirt сможет рулить из virt-manager'а виртуальными сетями, создавать в lvm логические тома, создавать/удалять/запускать и т.д. гостей, но не сможет рулить реальными сетевыми интерфейсами (т.к. не root). Решается созданием мостов (по мосту на каждый интерфейс). Ещё виртуальные сети можно описать вручную в xml файле и подгрузить с помощью virsh net-* (virsh help даст полный список команд).
Homo homini admini est...

Оффлайн thunderamur

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6846
    • Просмотр профиля
Re: Гипервизор KVM/QEMU
« Ответ #19 : 19 Апреля 2012, 16:41:04 »
я вот мост и сделал... но почему-то не могу удалять ВМ из virt-manager. Пользователь добавлен в группу libvirtd.

Оффлайн oermolaev

  • Старожил
  • *
  • Сообщений: 1477
    • Просмотр профиля
Re: Гипервизор KVM/QEMU
« Ответ #20 : 19 Апреля 2012, 17:17:29 »
делал схему из 2-х серваков железных, которые друг друга дублируют, т.е. типа облако или как их щас модно называют?

это вроде кластером называется?

4) как я понял гипервизор может ставиться (скорее всего у серьёзных дядей обычно так и работает) без иксов, а подключаться к нему можно с другой машины с графикой и рулить ВМ, верно?

я вот у себя proxmox наладил, так в нём рулится ВМ "на ура".
это ведь то же самое о чём вы говорите?

Оффлайн MadKox

  • Активист
  • *
  • Сообщений: 441
  • =)
    • Просмотр профиля
    • Моя страница на Launchpad
Re: Гипервизор KVM/QEMU
« Ответ #21 : 19 Апреля 2012, 20:19:18 »
я вот мост и сделал... но почему-то не могу удалять ВМ из virt-manager. Пользователь добавлен в группу libvirtd.
А в группу kvm?

Про мосты - они не для удаления гостя нужны, просто имея мост можно его из virt-manager'а назначить гостю. Если же нужно что-то более специфичное (например проброс tun-интерфейса openvpn с хоста в гостя) - то можно описать все в xml конфиге сети и подгрузить его через virsh.

Про формат xml для сети:http://libvirt.org/formatnetwork.html.
Про настройку прав: https://help.ubuntu.com/community/KVM/Installation - раздел "Add Users to Groups".
Homo homini admini est...

Оффлайн thunderamur

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6846
    • Просмотр профиля
Re: Гипервизор KVM/QEMU
« Ответ #22 : 20 Апреля 2012, 16:30:37 »
спасибо за годные ссылки.
да так то понятно, что мост не для удаления, как бы...
видимо не удаляется, т.к. вне группы kvm :)

Пользователь решил продолжить мысль 20 Апреля 2012, 16:31:51:
а что насчёт проброса в ВМ usb-порта? такое возможно на kvm?

Оффлайн MadKox

  • Активист
  • *
  • Сообщений: 441
  • =)
    • Просмотр профиля
    • Моя страница на Launchpad
Re: Гипервизор KVM/QEMU
« Ответ #23 : 20 Апреля 2012, 21:51:34 »
...USB and PCI devices attached to the host can be passed through to the guest using the hostdev element...

Пользователь решил продолжить мысль 21 Апреля 2012, 02:06:10:
Нарыл тут ещё один способ создать виртуальную сеть, как раз для случаев, когда "родного" libvirt'овского xml конфига недостаточно. Создаем мост с dummy-интерфейсом, делается это так:
iface br2 inet static
address 192.168.0.1
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
bridge_ports    dummy0
        bridge_stp      off
        bridge_fd       0
        bridge_maxwait  0
        pre-up          /sbin/modprobe dummy
auto br2
После этого "сажаем" на br2 dnsmasq, или любой удобный dhcp/dns сервер и получаем гибко настраиваемую виртуальную сеть, которую подключаем к виртуалкам как обычный мост.
« Последнее редактирование: 21 Апреля 2012, 02:06:10 от MadKox »
Homo homini admini est...

Оффлайн thunderamur

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6846
    • Просмотр профиля
Re: Гипервизор KVM/QEMU
« Ответ #24 : 01 Мая 2012, 07:23:22 »
MadKox,
Я сделал обычный мост

auto br0
iface br0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.254
dns-nameservers 192.168.1.254
bridge_ports eth0 virbr0

В ВМ работаю как с реальной сетью без НАТа от хоста. Объясни в чём профит, а то я пока не вижу.


И ещё вопросик, как лучше работать с дисками. Для себя вижу удобным разместить ВМ на реальных разделах. Disk Bus - Vitrio, формат хранилища - RAW. Что скажешь про это? Virtio drivers на Линукс надо ставить?

Оффлайн MadKox

  • Активист
  • *
  • Сообщений: 441
  • =)
    • Просмотр профиля
    • Моя страница на Launchpad
Re: Гипервизор KVM/QEMU
« Ответ #25 : 03 Мая 2012, 22:57:09 »
В приведённом примере профит в том, что реальный сетевой интерфейс не используется, dummy - виртуален. При этом все "плюшки" отдельной сети хост <-> гости остаются: возможность понастраивать dnsmasq, прописать свои правила в iptables, убедится в том, что libvirt сам туда (в iptables) ничего не запишет и т.д.

Насчёт дисков - я обычно создаю под это дело отдельную LVM группу, потом или руками, или через virt-manager в этой группе создаю LV с виртуальным "хардом" гостя, который уже из под гостя разбивается на корень, swap и т.д. Нужно больше места - или lvextend или тупо подключаю ещё один "хард".

Насчёт virtio - да, поддерживается с версии ядра 2.65 (т.е. дрова ставить вроде как не нужно), диск в xml конфиге гостя нужно прописывать как-то так:
<disk type='block' device='disk'>
      <source dev='/dev/vg0/disk'/>
      <target dev='vda' bus='virtio'/>
</disk>
У гостя он появится как /dev/vda, если стоит задача переноса системы с одного формата на другой - возможно потребуется подключить корень гостя с хоста через kpartx и поменять все ссылки в fstab, с s(h)da на vda, а потом сделав chroot в гостя сделать ему update-grub. Хотя, у меня при переносе 10.04 ругнулось на изменившиеся разделы, но исправно загрузилось...
Homo homini admini est...

Оффлайн thunderamur

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6846
    • Просмотр профиля
Re: Гипервизор KVM/QEMU
« Ответ #26 : 04 Мая 2012, 04:07:36 »
В итоге просто сделал большой раздел, где и разместил образы, с реальными разделами проблема с разметкой в госте, точнее оно работает, но palimpsest ругается и говорит, что нужно форматировать устройство + установку груба в госте сделать не выходит на устройство, ну оно и понятно :)

Про сетку, теперь понятно зачем, но я пока оставлю так, до тех пор пока не увижу потребности.

Оффлайн MadKox

  • Активист
  • *
  • Сообщений: 441
  • =)
    • Просмотр профиля
    • Моя страница на Launchpad
Re: Гипервизор KVM/QEMU
« Ответ #27 : 04 Мая 2012, 22:19:58 »
В итоге просто сделал большой раздел, где и разместил образы, с реальными разделами проблема с разметкой в госте, точнее оно работает, но palimpsest ругается и говорит, что нужно форматировать устройство + установку груба в госте сделать не выходит на устройство, ну оно и понятно :)
Вот не понял, про что это: про перенос дисков на virtio, или про создание новой машины? Я, если честно, не знаю как это делает virt-manager, но если делать руками - то да, там есть какой-то затык с созданием разделов. Я, создавая ubuntu-гостей через vmbuilder, делал установку в qcow2, а потом просто конвертировал файл-образ в lvm раздел. qemu-img умеет очень многое, достаточно почитать её man.

Конвертирование раздела lvm в файл qcow2:
qemu-img convert -O qcow2 /dev/vg-0/lv-1 /home/user/file.qcow2в /home/user должно быть достаточно места для приёма файла-образа
и из qcow2 в lvm:
qemu-img convert -O host_device file.qcow2 /dev/vg-1/lv-2lv-2 в vg-1 должна существовать и иметь размер не меньше максимального для file.qcow2, который, соответственно можно подсмотреть при помощи
qemu-img info file.qcow2Ну и исправить в конфигурации гостя пути и типы дисков тоже нужно после конвертирования.

А вообще что лучше применять - вопрос задачи, по быстродействию лучший вариант lvm, но по удобству использования qcow2 лучше. Хотя, если просто требуется постоянная работа гостя + периодические бекапы, то lvm со своими снапшотами вполне подойдет, и, кстати, qemu-img convert работает и со снапшотами тоже, т.е. можно сделать lvm снапшот работающей системы и не прерывая её работы сделать из снапшота qcow2-образ, который в свою очередь бекапить, например, в nfs папку. И еще - qemu-img работает быстрее dd  :)
Homo homini admini est...

Оффлайн thunderamur

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 6846
    • Просмотр профиля
Re: Гипервизор KVM/QEMU
« Ответ #28 : 24 Мая 2012, 11:23:35 »
Файл-сервер на ВМ успешно работает уже больше месяца. Вот дошло дело до поднятия вин-сервера. Поставил, подключил virtio-дрова как учил MadKox, настроил сетку, заработала в режиме virtio, но отвалилась сеть на файл-сервере. Остановил винду, ребутнул файл-сервер - не помогло. Остановил файл-сервер, перезапустил сеть на гипервизоре, запустил файл-сервер - порядок.
Теперь нужно понять, что я сделал не верно. Видимо нельзя использовать один сетевой мост br0 для нескольких ВМ?

Оффлайн MadKox

  • Активист
  • *
  • Сообщений: 441
  • =)
    • Просмотр профиля
    • Моя страница на Launchpad
Re: Гипервизор KVM/QEMU
« Ответ #29 : 24 Мая 2012, 23:50:12 »
Один сетевой мост для нескольких ВМ точно можно использовать.
А можно побольше информации? Хочется увидеть выводы:
ip l
ip a
virsh net-list --all
ip l и ip a - для всех 3-х случаев: включён только файл-сервер, включён только win сервер, включены оба.
Homo homini admini est...

 

Страница сгенерирована за 0.048 секунд. Запросов: 25.