Photo

Полезные команды XenServer

Этот пост скорее для меня самого, но вдруг кому понадобится...

По работе установил в качестве гипервизора Citrix Xenserver, потому что он умеет беспроблемно пробрасывать PCI карты (и PCIe если они работают через PCI/PCIe bridge) в гостевые машины.

У этой системы многие вещи делаются через линукс-консоль. Напишу некоторые тут, чтоб не забыть.

Общие команды линукс

lspci
- выдает список всех PCI устройств, тождественна той же команде в "нормальном" линуксе

lsusb
- выдает список всех USB устройств

nano ...
- nano - мелкий встроенный текстовый редактор вместо кривого и непонятного vi
выход Ctrl-X

Общие команды Xen

xe vm-list
- выдает список сконфигурированных виртуалок и их UUID

xe pool-list
- выдает список и UUID пула

xe vm-param-set uuid=... other-config:pci=0/0000:02.00.1,0/0000:02.00.2,...
- проброс устройств в виртуалку

xe vm-param-set uuid=... other-config:pci
- с пустым параметром other-config:pci сбрасывает все пробросы к данной виртуалке

Отключение PCI устройств от хоста

Для корректной работы проброса и старта виртуалок необходимо запретить хосту находить пробрасываемые устройства. У хоста этим занимается драйвер pciback. Для запрета их нужно внести в конфиг-файл на хосте.

1. Редактируем конфиг
nano /boot/extlinux.conf

Добавляем в файле в строке в блоке "label xe", начинающейся на "append" в конце перед "--- /boot/initrd-..." данные в следующем виде:
pciback.hide=(04:00.0)(04:00.1)
перечисляем все устройства, которые пробрасываются в виртуалки (полностью со всеми подфункциями!)

2. Выполняем команду (пока не знаю зачем...)
extlinux -i /boot

3. Перезагружаем хост
reboot -n

Размер памяти виртуалки

xe vm-param-set uuid=... memory-static-min=1024MiB
- по умолчанию виртуалка с Win7 не может имень меньше 2GB памяти, эта команда корректирует нижний предел

Автостарт

Автостарт для виртуалок при старте сервера:

1. Нужно установить флаг у пула
xe pool-param-set uuid=... other-config:auto_poweron=true

2. Нужно установить флаг у всех виртуалок
xe vm-param-set uuid=... other-config:auto_poweron=true
Три первых мона было и не писать, интуитивно понятны без man... ;))))
Имх0 они соответствуют концепции любой nix системы, как бы их можно выдумать заново, взять прямо из головы (и не высечь из мозга "топором")... ;))))
Если вдруг будет желание поизучать nix, рекомендую начать вот с этих сборок для сисадминов под FreeBSD, с них можно бутится в уже собранном виде и документации там море ;))))
http://frenzy.org.ua/
пока что желания нету :)
прикладные вещи изучаются по мере необходимости, минимального знания набора команд хватает
за линк спасибо :)
> он умеет беспроблемно пробрасывать PCI карты

а чо, обычный xen не умеет? мне просто интересно: я знаю о наличии такой возможности, но попробовать не на чем.
странно, что я сразу не ответил, сорри :)

обычный Xen, само собой, умеет, но его нужно ставить на какой-то *nix, а сборка от Citrix устанавливает все необходимое автоматом (гипервайзор "с нуля") и дает мне возможность заниматься моей проблемой, а не администрацией "еще одного сервера"... как-то так...