Добавить физический диск в виртуальную машину KVM

Я настраиваю файловый сервер (nas4free) в качестве виртуальной машины KVM в системе Ubuntu Server 12.04.

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

В частности, жесткий диск, который я хотел бы смонтировать, это / dev / sda (который на данный момент не смонтирован на сервере.)

До сих пор я нашел два решения, но не получил ни того, ни другого.

Первый из Server Fault , где предлагается использовать virt-manager. У меня не получилось заставить это работать, потому что, когда я пытаюсь выбрать существующий диск, ничего не появляется в списке. Мое лучшее предположение о том, почему это так, потому что я использую virt-manager поверх ssh, а не подключаюсь как root, должно ли это иметь значение?

Второе решение, которое я нашел здесь [ 112] - это просто запустить команду (измененную для моей системы)

qm set nas4free -virtio /dev/sda

, но для этого требуется Proxmox, который я не установил и которого нет в репозиториях по умолчанию?

Наконец, после того, как все вышеперечисленное рассортировано и я могу смонтировать диск непосредственно на виртуальную машину, у кого-нибудь есть опыт с тем, должен ли диск быть установлен на виртуальную машину как scsi, ide или virtio? (Я знаю, что virtio рекомендовано на связанной странице ServerFault, но я не слышал об этом раньше, так как в основном использую VMWare).

Спасибо за вашу помощь !!!

11
задан 13 April 2017 в 15:14

2 ответа

Хотя на этот вопрос уже дан ответ, вместо использования / dev / sda следует использовать / dev / disk / by-id /, откуда вы попали из

    ls -l /dev/disk/by-id

. диск меняется с / dev / sda на /dev/sdb.

0
ответ дан 13 April 2017 в 15:14

Имея ту же самую потребность, я нашел следующее:

http://ronaldevers.nl/2012/10/14/adding-a-physical-disk-kvm-libvirt.html

(весь следующий текст взят из вышеуказанного источника)

Это не может быть сделано с помощью virt-manager. Это заняло у меня некоторое время, чтобы понять. Насколько я могу сказать, virt-manager работает с пулами памяти. Вы можете превратить диск в пул хранения, но не можете добавить существующий диск непосредственно в виртуальную машину.

К счастью, это легко исправить: вы добавляете диск в конфигурационный файл xml домена вручную. Так что откройте /etc/libvirt/qemu/.xml в вашем любимом редакторе и добавьте раздел в раздел:

<disk type='block' device='disk'>
  <driver name='qemu' type='raw'/>
  <source dev='/dev/md/storage'/>
  <target dev='vdb' bus='virtio'/>
</disk>

Это сделает хост / dev / md / хранилище доступно в гостевой папке / dev / vdb. После изменения конфигурации домена вручную, вы должны перезагрузить конфигурацию вручную. Войдите на свой хост и введите следующую команду:

# virsh define /etc/libvirt/qemu/jetsetetser.xml
Domain jetser defined from /etc/libvirt/qemu/jetsetetser.xml

Вот хороший ресурс с дополнительной информацией об управлении vms с помощью libvirt: https: //help.ubuntu .com / community / KVM / Managing

Я настоятельно рекомендую вам следовать совету smccloud. Это работает как символ для меня. Остерегайтесь не монтировать ни один том на физических дисках, используемых в вашем госте, иначе вы серьезно повредите его файловую систему!

0
ответ дан 13 April 2017 в 15:14

Другие вопросы по тегам:

Похожие вопросы: