Я обновил один из своих серверов с Xen 4.1.4 (Debian squeeze) до Xen 4.4.1 (Debian jessie). Поскольку xend / xm устарел, я хотел бы использовать набор инструментов xl с Xen 4.4.1. Но теперь у меня проблемы с сетевой настройкой моих виртуальных машин.
На моих виртуальных машинах используется смешанный маршрутизированный и мостовой интерфейс. Внутренний трафик, а также экспериментальный интерфейс IPv6 передаются по мосту, в то время как интерфейс, содержащий общедоступный IP-адрес, маршрутизируется. Однако Xen 4.4.1, похоже, полностью игнорирует мои переменные script / bridge / vifname в конфигурации vm и использует только сценарии vif по умолчанию и имена интерфейсов.
Как я могу заставить мою существующую конфигурацию vm успешно работать в Xen 4.4.1?
Найдите соответствующие файлы конфигурации / журнала ниже:
Сетевая конфигурация виртуальных машин: (упомянутые мосты предварительно созданы через / etc / network / interfaces, заменены исходным общедоступным IP-адресом)
vif=['mac=fe:fd:1:00:00:0, vifname=int-vm0, script=vif-bridge, bridge=int', 'mac=fe:fd:1:00:00:1, vifname=ext-vm0,ip=a.b.c.d', 'mac=fe:fd:1:00:00:2, vifname=v6-vm0, script=vif-bridge, bridge=v6']
/etc/xen/xl.conf
# default vif script to use if none is specified in the guest config #vif.default.script="vif-bridge" vif.default.script="/etc/xen/scripts/vif-route" # default bridge device to use with vif-bridge hotplug scripts #vif.default.bridge="xenbr0"
Соответствующие записи сетевого системного журнала при запуске виртуального хоста:
Dec 4 15:47:00 host root: /etc/xen/scripts/block: add XENBUS_PATH=backend/vbd/16/51713 Dec 4 15:47:00 host root: /etc/xen/scripts/vif-route: online type_if=vif XENBUS_PATH=backend/vif/16/0 Dec 4 15:47:00 host root: /etc/xen/scripts/vif-route: online type_if=vif XENBUS_PATH=backend/vif/16/1 Dec 4 15:47:00 host root: /etc/xen/scripts/vif-route: online type_if=vif XENBUS_PATH=backend/vif/16/2 Dec 4 15:47:00 host kernel: [83460.131540] IPv6: ADDRCONF(NETDEV_UP): vif16.0: link is not ready Dec 4 15:47:00 host kernel: [83460.135514] IPv6: ADDRCONF(NETDEV_UP): vif16.1: link is not ready Dec 4 15:47:00 host kernel: [83460.140061] IPv6: ADDRCONF(NETDEV_UP): vif16.2: link is not ready Dec 4 15:47:00 host root: /etc/xen/scripts/vif-route: Successful vif-route online for vif16.2. Dec 4 15:47:00 host root: /etc/xen/scripts/vif-route: Writing backend/vif/16/2/hotplug-status connected to xenstore. Dec 4 15:47:00 host root: /etc/xen/scripts/vif-route: Successful vif-route online for vif16.0. Dec 4 15:47:00 host root: /etc/xen/scripts/vif-route: Writing backend/vif/16/0/hotplug-status connected to xenstore. Dec 4 15:47:00 host root: /etc/xen/scripts/vif-route: Successful vif-route online for vif16.1. Dec 4 15:47:00 host root: /etc/xen/scripts/vif-route: Writing backend/vif/16/1/hotplug-status connected to xenstore.
Пожалуйста, дайте мне знать, если вам понадобится дополнительная информация.
Указанные MAC-адреса в разделе конфигурации vif пропускают начальные нули, что, кажется, сбивает с толку парсер MAC-адресов в libxl и заставляет его игнорировать все элементы конфигурации после MAC-адреса.
Вы можете проверить синтаксический анализатор, используя вывод отладки команды xl create
xl create vm0 -d -n
На моей виртуальной машине теперь работает следующая сетевая конфигурация: (Заменен публичный IP-адрес)
vif=['mac=fe:fd:01:00:00:00, vifname=int-vm0, script=vif-bridge, bridge=int', 'mac=fe:fd:01:00:00:01, vifname=ext-vm0, ip=a.b.c.d', 'mac=fe:fd:01:00:00:02, vifname=v6-vm0, script=vif-bridge, bridge=v6']