LINUX.ORG.RU
ФорумAdmin

XEN 4.2.2 + Debian 7: не запускается xenstored


0

2

Доброго времени суток!
Излагаю суть проблемы:
На свежеустановленный Debian 7 установлен из исходников Xen 4.2.2, руководствовалась при этом статьями http://how-it.ru/public/root/457-ustanovka_xen_4_2_na_debian_squeeze.html и http://wiki.xen.org/wiki/Compiling_Xen_From_Source
Ядро использовала текущее, то есть новое отдельно не устанавливала, так как в wheezy-backports специализированного под xen ядра нет, а доступно то же самое ядро, что уже установлено, а в http://wiki.xen.org/wiki/Compiling_Xen_From_Source говорится, что с недавних пор под dom0 портированное ядро не требуется и можно брать любое, которое удовлетворяет ваши нужды.
В общем, стартует ядро с Xen 4.2.2, вроде все штатно, запускаю xl list, в ответ:

libxl: error: libxl.c:87: libxl_ctx_alloc:  Is xenstore daemon running?
failed to stat /var/run/xenstored.pid: No such file or directory
cannot init xl context 

В /etc/init.d ни xenstore, ни xenstored нет, команда /etc/init.d/xencommos start возвращает No xenstored found.
Погуглила, нашла что возможно это из-за того, что модуль xen_evtchn не установлен - добавила, но это не помогло.

Подскажите плиз, кто сталкивался, куда копать?


У вас xen-tools точно установлены ?

Xen no longer ships with its own Linux kernel for either dom0 or domU use. This is because now that Xen is supported by the upstream Linux kernel tree there is no need for a separate kernel port. There is no requirement for a domain 0 (or guest) kernel to match your hypervisor so you are free to pick the kernel which best suits your needs (e.g. many distributions supply a kernel which is compatible with Xen, which is a quick and easy path). Dom0 Kernels for Xen contains some guidance on this issue.

Здесь сказано, что больше не делается сборка xen-sources, т.е. исходников ядра линух с интегрированным кодом xen. Код xen уже интегрирован в ядро Linux. Но ядро, как мне кажется всё же должно быть собрано с поддержкой dom0 и xen.

kostik87 ★★★★★
()
Ответ на: комментарий от kostik87

Точно-точно, я делала make dist - в этом случае все компоненты устанавливаются и tools, и docs и все остальное. Только вот про ядро не совсем понятно, если в него xen уже интегрирован, то что еще требуется?

Incher
() автор топика
Ответ на: комментарий от Incher

Что бы опции поддержки xen были включены в ядре.

CONFIG_XEN
CONFIG_XEN_DOM0
CONFIG_XEN_BLKDEV_BACKEND
CONFIG_XEN_ACPI_PROCESSOR
CONFIG_HVC_XEN

И прочие, относящиеся к XEN.

Проверьте включены ли эти опции в вашем ядре.

если в него xen уже интегрирован,

Имеется ввиду, что код поддержки XEN включен в основное дерево исходных кодов ядра Linux, а вот собрано ваше ядро с задействованием этого кода или нет, разбирайтесь.

failed to stat /var/run/xenstored.pid: No such file or directory

Но эта ошибка не имеет отношения к ядру.

kostik87 ★★★★★
()
Последнее исправление: kostik87 (всего исправлений: 2)
Ответ на: комментарий от kostik87

Ядро дефолтное, которое ставилось при установке ОС (как определить, вошел ли туда код поддержки xen? в репозиториях другого более подходящего ядра нет, либо точно такое же - linux-image-3.2.0-4-amd64, либо linux-image-3.2.0-4-rt-amd64), в нем следующие опции, касающиеся XEN:

CONFIG_XEN=y
CONFIG_XEN_DOM0=y
CONFIG_XEN_PRIVILEGED_GUEST=y
CONFIG_XEN_PVHVM=y
CONFIG_XEN_MAX_DOMAIN_MEMORY=128
CONFIG_XEN_SAVE_RESTORE=y
# CONFIG_XEN_DEBUG_FS is not set
CONFIG_MICROCODE_XEN=y
CONFIG_PCI_XEN=y
CONFIG_XEN_PCIDEV_FRONTEND=m
CONFIG_XEN_BLKDEV_BACKEND=m
CONFIG_XEN_BLKDEV_FRONTEND=m
CONFIG_XEN_NETDEV_BACKEND=m
CONFIG_XEN_NETDEV_FRONTEND=m
CONFIG_INPUT_XEN_KBDDEV_FRONTEND=y
CONFIG_HVC_XEN=y
CONFIG_XEN_WDT=m
CONFIG_XEN_FBDEV_FRONTEND=y
CONFIG_XEN_BALLOON=y
# CONFIG_XEN_BALLOON_MEMORY_HOTPLUG is not set
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DEV_EVTCHN=m
CONFIG_XEN_BACKEND=y
CONFIG_XENFS=m
CONFIG_XEN_COMPAT_XENFS=y
CONFIG_XEN_SYS_HYPERVISOR=y
CONFIG_XEN_XENBUS_FRONTEND=y
CONFIG_XEN_GNTDEV=m
CONFIG_XEN_GRANT_DEV_ALLOC=m
CONFIG_SWIOTLB_XEN=y
CONFIG_XEN_PCIDEV_BACKEND=m

Но эта ошибка не имеет отношения к ядру.

Понятно, xenstored в /etc/init.d нет и он не стартует, следовательно, и xenstored.pid не с чего там взяться. Но вот первопричина, почему xenstored отсутствует в /etc/init.d и не запускается, абсолютно неясна - вроде модули все на месте, собралось все без ошибок. Совершенно не представляю, куда двигаться...

Incher
() автор топика
Ответ на: комментарий от Incher

Кажется, нашла. В общем сначала должен запускаться демон xencommons, который в свою очередь запускает xenstored, но он ищет его не в /usr/local/..., куда был установлен xen, а в /usr..., куда он обычно ставится по дефолту:

if [ -n "$XENSTORED" ] ; then
   81 		    echo -n Starting $XENSTORED...
   82 		    $XENSTORED --pid-file /var/run/xenstored.pid $XENSTORED_ARGS
   83 		elif [ -x /usr/sbin/oxenstored ] ; then
   84 		    echo -n Starting oxenstored...
   85 		    /usr/sbin/oxenstored --pid-file /var/run/xenstored.pid $XENSTORED_ARGS
   86 		elif [ -x /usr/sbin/xenstored ] ; then
   87 		    echo -n Starting C xenstored...
   88 		    /usr/sbin/xenstored --pid-file /var/run/xenstored.pid $XENSTORED_ARGS
   89 		else
   90 		    echo "No xenstored found"
   91 		    exit 1

окей, сделала линк из /usr... в /usr/local/... Запускаю, стартует, но ругается, что не может найти /usr/lib/xen/bin/qemu-system-i386 - делаю линк, перезапускаю xencommons - перестают отображаться печатаемые символы в консоли, команды выполняются, но не видно, что нажимаешь... Посмотрела вывод xl list, в ответ получила:

Name      ID    Mem    VCPUs    State    Time
(null)    0     3037   24       r-----   20.0(s)
Теперь непонятно, почему dom0 не получил свое имя и почему ему выдано памяти 3037М - в grub.conf явно прописано dom0_mem=4096M

Incher
() автор топика
Ответ на: комментарий от Incher

перезапускаю xencommons - перестают отображаться печатаемые символы в консоли, команды выполняются, но не видно, что нажимаешь...

Коллеги, ни у кого не случалось подобного? С чем это может быть связано?

Incher
() автор топика
Ответ на: комментарий от Incher

Хм, ладно, решение не нашлось, пока проехали.

Всплыл новый косяк: развернула гостевой домен под убунтой, подключаюсь к нему командой xl vncviewer <domID> - все норм, но при попытке подключиться к консоли xl console <domID> - пишет ошибку: «xenconsole: Could not read tty from store: No such file or directory». Демон xonconsoled запущен. Добавила в конфиг гостевого домена строку serial='pty' - теперь при запуске команды xl console <domID> консоль putty виснет намертво, приходится перелогиниваться в putty.

Коллеги, подскажите,куда копать?

Incher
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.