User Tools

Site Tools


Sidebar


Здравствуйте!

Меня зовут Михаил!
Я системный администратор
и наполняю эту wiki,
решая разнообразные IT-задачки.

Моя специализация - виртуализация!

Я всегда готов помочь Вам
наладить IT-инфраструктуру
за скромное вознаграждение!

mike@autosys.tk
+7 (910) 911-96-23

citrix:изменение-типа-сетевого-адаптера-в-xenserver-rtl8139-e1000

Предыстория

По-умолчанию, если не установлены драйвера из комплекта Xenserver Tools, Xenserver эмулирует сетевую карту Realtek 8139. Это хорошо, она работает во многих дистрибутивах, но она поддерживает только скорость 100 Мбит/с.
При этом, XenServer способен эмулировать сетевую карту Intel 82540 (E1000). Но выбор этого параметра отсутсвтует где-либо в конфигурации виртуальной машины.

Решение

Для того. чтобы обойти это ограничение можно сочинить небольшую обертку для исполняемого файла эмулятора QEMU - qemu-dm, которая при запуске будет брать строку параметров запуска qemu-dm и подменять в ней rtl8139 на e1000. В результате эмулируемый сетефой адаптер будет поддержиать скорость 1Гбит/c и даже jubmo frames.

Все нижу написанное справдливо как для версий 6.1 и 62, так и для новейшей 6.5, за исключением того, что dom0 в 6.5 имеет архитектуру x64, поэтому qemu-dm лежит в папке /usr/lib64/xen/bin/. Тут я приведу пример для XenServer 6.5.
Начнем.
Логинимся в командную строку xenserver и переименовываем оригинальный /usr/lib64/xen/bin/qemu-dm в /usr/lib64/xen/bin/qemu-dm.orig

mv /usr/lib64/xen/bin/qemu-dm /usr/lib64/xen/bin/qemu-dm.orig

Затем сделам файл обортку с именем /usr/lib64/xen/bin/qemu-dm и таким содержимым:

#!/bin/bash
oldstring=$@
newstring=${oldstring//rtl8139/e1000}
exec /usr/lib64/xen/bin/qemu-dm.orig $newstring

Затем делаем обертку исполняемой и запрещаем ее изменять:

chmod 755 /usr/lib64/xen/bin/qemu-dm
chattr +i /usr/lib64/xen/bin/qemu-dm

Теперь можно перезапустить виртуальные машины и в них уже будут эмулироваться сетевые интерфейсы e1000.
Я проверял этот трюк на Xenserver 6.5 и виртуалке с Kerio Control 7.2. Ничего дополнительно настраивать не пришлось. Интерфейсы не “съехали”. Просто изменилась модель эмулируемого сетевого адаптера.

С помощью chattr мы запретили замену файла qemu-dm. Таким образом, его не получится заменить, нпример, в результате обновления Xenserver.

Отключить эту защиту и разрешить изменение этого файла можно так:

chattr -i /usr/lib64/xen/bin/qemu-dm


Discussion

Enter your comment. Wiki syntax is allowed:
K B J B C
 
citrix/изменение-типа-сетевого-адаптера-в-xenserver-rtl8139-e1000.txt · Last modified: 2016/12/23 15:18 by admin