Я создаю облако для своего университета, используя Eucalyptus с Xen (на ПК установлена 64-разрядная версия Debian Squeeze). У меня проблема со следующей гостевой конфигурацией:
#
# Configuration file for the Xen instance evenmorefinalfoo, created
# by xen-tools 4.2 on Thu May 26 11:03:06 2011.
#
#
# Kernel + memory size
#
kernel = '/boot/vmlinuz-2.6.32-5-xen-amd64'
ramdisk = '/boot/initrd.img-2.6.32-5-xen-amd64'
vcpus = '1'
memory = '128'
#
# Disk device(s).
#
root = '/dev/sda2 ro'
disk = [
'file:/home/xen/domains/evenmorefinalfoo/disk.img,sda2,w',
'file:/home/xen/domains/evenmorefinalfoo/swap.img,sda1,w',
]
Как видите, образы диска и подкачки предназначены для монтирования на sda1 и sda2. Однако, когда я запускаю гостевую систему, они монтируются на xvda1 xvda2, что вызывает ошибку. Что я могу с этим поделать? Похоже, это ошибка Xen.
Заранее спасибо,
Имя загрузочного устройства закодировано в ядре. Вы можете переопределить это, передав соответствующий параметр ядра (или установив bootdev в ядре). Я предполагаю, что ваш "корневой" -параметр не передается ядру DomU - что действительно может быть ошибкой.
Кроме того, лучше использовать xvd, потому что sd по умолчанию будет использовать SCSI / SAS / SATA-драйверы, а не правильный xenblk-драйвер.
Еще один совет: используйте программные ссылки в DomU, чтобы указать на текущее ядро и initrd. Таким образом, вы можете использовать эти программные ссылки в вашей конфигурации DomU на Dom0, и вам не придется изменять эту конфигурацию после обновления ядра в вашем DomU.
Xen использует имена xvda, потому что он обеспечивает оптимизированный доступ ввода-вывода к этим дискам. Если вы используете Xen в режиме PV, все ваши диски будут отображаться как xvd ... Если вы работаете в режиме HVM, вы получите стандартные (и более медленные, менее надежные) диски sd ...
Надеюсь это поможет!