Проброс USB устройства из материнской хост-системы внутрь виртуальной машины под управлением Rosa Virtualization (oVirt 3.5) — различия между версиями

Материал из Rosalab Wiki
Перейти к: навигация, поиск
Строка 1: Строка 1:
 +
[[Файл:Снимок-2.png|мини|Снимок-2]]
 +
  
 
[[Категория:ROSA Enterprise Linux Server]]
 
[[Категория:ROSA Enterprise Linux Server]]
Строка 13: Строка 15:
 
*  Функциональность USB устройств с интерфейсом USB 3.0 нами не проверялась, ввиду отсутствия на наши серверах аппаратной поддержки USB 3.0.
 
*  Функциональность USB устройств с интерфейсом USB 3.0 нами не проверялась, ввиду отсутствия на наши серверах аппаратной поддержки USB 3.0.
  
В моем примере я использую обычную USB флешку, размером 8 GB, отформатированную в FAT32, установленную в хост-систему и смонтированную там в каталог /mnt
+
В моем примере я использую обычную USB флешку, размером 8 GB, отформатированную в FAT32, установленную в хост-систему и смонтированную там в каталог '''/mnt'''
 +
 
 
Хост-система носит название hammer2 (см. Снимок 2).
 
Хост-система носит название hammer2 (см. Снимок 2).
 +
 +
[[Файл:Снимок-2.png|Снимок-2]]<br />
 +
 
Виртуальная машина, на которую я делаю проброс флешки называется rels67_min (ip - 192.168.231.108, FQDN - rels76minimal).<br />
 
Виртуальная машина, на которую я делаю проброс флешки называется rels67_min (ip - 192.168.231.108, FQDN - rels76minimal).<br />
  
Строка 23: Строка 29:
 
2. Установите на нужную ноду (в моем случае - это хост-система hammer2), и на управляющую систему oVirt (в моем случае это система с названием head) пакет vdsm-hook-hostusb:
 
2. Установите на нужную ноду (в моем случае - это хост-система hammer2), и на управляющую систему oVirt (в моем случае это система с названием head) пакет vdsm-hook-hostusb:
  
'''#yum install vdsm-hook-hostusb'''
+
'''#yum install vdsm-hook-hostusb</nowiki>'''
  
 
3. На управляющей системе oVirt выполните команду:
 
3. На управляющей системе oVirt выполните команду:
 +
 
'''#engine-config -s UserDefinedVMProperties='hostusb=[\w:&]+''''
 
'''#engine-config -s UserDefinedVMProperties='hostusb=[\w:&]+''''
  
 
После этого, система предложит выбор соответствующей версии oVirt.
 
После этого, система предложит выбор соответствующей версии oVirt.
 +
 
В моем случае, я выбрал версию 3.5, нажав на клавиатуре цифру шесть.
 
В моем случае, я выбрал версию 3.5, нажав на клавиатуре цифру шесть.
  
Строка 36: Строка 44:
  
 
5. Перестартуйте интерфейс управления oVirt на управляемой хост-системе (в моем случае на узле hammer2, куда подключен накопитель):
 
5. Перестартуйте интерфейс управления oVirt на управляемой хост-системе (в моем случае на узле hammer2, куда подключен накопитель):
#/etc/init.d/vdsmd restart
+
 
 +
'''#/etc/init.d/vdsmd restart'''
 +
 
 
6. На хост-системе с USB устройством проверьте, что устройство подключено и опозналось верно:
 
6. На хост-системе с USB устройством проверьте, что устройство подключено и опозналось верно:
#lsusb
+
 
(если команда lsusb не доступна установите пакет usbutils: yum install usbutils)
+
'''#lsusb'''
 +
 
 +
(если команда '''lsusb''' не доступна установите пакет '''usbutils''': '''yum install usbutils''')
 +
 
 
В моем случае, устройство опозналось как:
 
В моем случае, устройство опозналось как:
Bus 001 Device 004: ID 8564:1000 Transcend Information, Inc. JetFlash
+
 
 +
'''Bus 001 Device 004: ID 8564:1000 Transcend Information, Inc. JetFlash'''
 +
 
 
См. Снимок 1.
 
См. Снимок 1.
 +
 +
[[Файл:Снимок-1.png||Снимок-1]]
 +
 
7. Зайдите в свойства желаемой ВМ, нажав ПКМ и выбрав Edit в меню. ВМ при этом должна быть выключена.
 
7. Зайдите в свойства желаемой ВМ, нажав ПКМ и выбрав Edit в меню. ВМ при этом должна быть выключена.
 +
 
Закрепите ВМ за нужным узлом (как на Снимке 3, выбран узел hammer2)
 
Закрепите ВМ за нужным узлом (как на Снимке 3, выбран узел hammer2)
8. В меню Custom Properties у вас появится новый пункт в разделе Please select a key
+
 
Выбирайте там hostusb и прописывайте там ID USB устройства, указав перед идентификатором 0x.
+
[[Файл:Снимок-3.png||Снимок-3]]
Т.е. в моем случае я прописываю 0x8564:0x1000
+
 
 +
8. В меню '''Custom Properties''' у вас появится новый пункт в разделе '''Please select a key'''
 +
 
 +
Выбирайте там '''hostusb''' и прописывайте там ID USB устройства, указав перед идентификатором '''0x'''.
 +
 
 +
Т.е. в моем случае я прописываю '''0x8564:0x1000'''
 +
 
 
См. Снимок 4
 
См. Снимок 4
 +
 +
[[Файл:Снимок-4.png|Снимок-4]]
 +
 
9. Запустите ВМ штатным способом, подключитесь либо к ней в консоль, либо по SSH и проверьте доступность USB устройства:
 
9. Запустите ВМ штатным способом, подключитесь либо к ней в консоль, либо по SSH и проверьте доступность USB устройства:
#lsusb
+
 
 +
'''#lsusb'''
 +
 
 
Смотрите Снимок 1
 
Смотрите Снимок 1
[[Файл:Снимок-1.png|мини|Снимок-1]]
 
  
 
Теперь устройство USB можно смонтировать внутри ВМ.
 
Теперь устройство USB можно смонтировать внутри ВМ.

Версия 17:52, 11 ноября 2015

Снимок-2

В данной статье мы рассмотрим типовую ситуацию, когда требуется обеспечить доступность USB устройства для виртуальной машины, работающей под управлениеь Rosa Virtualisation (oVirt 3.5). Эта задача может возникнуть если требуется развернуть в виртуальной машине, скажем, сервер "1С Бухгалтерия", и обеспечить доступность для клиентов HASP ключа. Может потребоваться подключить USB Flash накопитель для ВМ, или подключить к ней USB диск. Может потребоваться подключить к ВМ принтер или USB модем. Или мало ли что еще.

Прежде чем я начну описывать процесс, требуется сперва помнить о ряде важных ограничений:

  • Виртуальная машина, которая будет обслуживать USB устройство должна будет жестко закреплена к хост-системе, на которой вставлено USB устройство.
  • USB устройство должно быть установлено в порт хост-системы ДО того, как будет запущена соответствующая виртуальная машина.
  • В случае, если это USB флэш-накопитель, и он уже смонтирован в хост-системе, то при "пробросе" устройства в ВМ и монтировании внутри ВМ, содержимое диска будет недоступно в хост-системе.
  • Функциональность USB устройств с интерфейсом USB 3.0 нами не проверялась, ввиду отсутствия на наши серверах аппаратной поддержки USB 3.0.

В моем примере я использую обычную USB флешку, размером 8 GB, отформатированную в FAT32, установленную в хост-систему и смонтированную там в каталог /mnt

Хост-система носит название hammer2 (см. Снимок 2).

Снимок-2

Виртуальная машина, на которую я делаю проброс флешки называется rels67_min (ip - 192.168.231.108, FQDN - rels76minimal).

Собственно настройка (потребуются полномочия суперпользователя root либо sudo):

1. Подключите USB устройство в желаемую хост-систему (в мооем случае узел hammer2)

2. Установите на нужную ноду (в моем случае - это хост-система hammer2), и на управляющую систему oVirt (в моем случае это система с названием head) пакет vdsm-hook-hostusb:

#yum install vdsm-hook-hostusb</nowiki>

3. На управляющей системе oVirt выполните команду:

#engine-config -s UserDefinedVMProperties='hostusb=[\w:&]+'

После этого, система предложит выбор соответствующей версии oVirt.

В моем случае, я выбрал версию 3.5, нажав на клавиатуре цифру шесть.

4. Перестартуйте систему управления oVirt командой на управляющей системе:

#/etc/init.d/ovirt-engine restart

5. Перестартуйте интерфейс управления oVirt на управляемой хост-системе (в моем случае на узле hammer2, куда подключен накопитель):

#/etc/init.d/vdsmd restart

6. На хост-системе с USB устройством проверьте, что устройство подключено и опозналось верно:

#lsusb

(если команда lsusb не доступна установите пакет usbutils: yum install usbutils)

В моем случае, устройство опозналось как:

Bus 001 Device 004: ID 8564:1000 Transcend Information, Inc. JetFlash

См. Снимок 1.

Снимок-1

7. Зайдите в свойства желаемой ВМ, нажав ПКМ и выбрав Edit в меню. ВМ при этом должна быть выключена.

Закрепите ВМ за нужным узлом (как на Снимке 3, выбран узел hammer2)

Снимок-3

8. В меню Custom Properties у вас появится новый пункт в разделе Please select a key

Выбирайте там hostusb и прописывайте там ID USB устройства, указав перед идентификатором 0x.

Т.е. в моем случае я прописываю 0x8564:0x1000

См. Снимок 4

Снимок-4

9. Запустите ВМ штатным способом, подключитесь либо к ней в консоль, либо по SSH и проверьте доступность USB устройства:

#lsusb

Смотрите Снимок 1

Теперь устройство USB можно смонтировать внутри ВМ.