Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I would like to setup a diskless XenServer 5.6 FP 1 machine that boots from an iSCSI target. I think installation onto an iSCSI should be pretty easy: start the installer, open up a shell, use iscsiadm to connect to the iSCSI target, and have the installer install to it.

I'm not sure how to get the server to boot from the iSCSI target though. I'm thinking I could have the server's NIC perform a PXE boot to load gPXE, which in turn would load the boot loader from the iSCSI target, which would load Xen/Linux. However, how would I get Xen/Linux to mount the root filesystem from the iSCSI target?

Note that this server does not have an HBA iSCSI adapter, so I'm trying to boot it from a regular NIC.

I did a test installation inside a virtual machine. When using gPXE to boot from the iSCSI target, EXTLINUX just hangs. I then replaced the boot loader with GRUB, which was successful in booting the kernel. However, it was not able to mount the root filesystem. I see the following messages, which were printed after messages indicating that a DHCP lease was obtained successfully:

Attaching to iSCSI storage
iscsistart: transport class version 2.0-870. iscsid version 2.0-871
iscsistart: Portal Group not set. Exiting iscsistart
...
Waiting  for driver initialization.
share|improve this question
add comment

2 Answers

up vote 0 down vote accepted

I was able to get it to work. Turns out the initrd image had the initiator name missing in /init when it was created during the installation. Setting /etc/iscsi/initiatorname.iscsi and re-executing the mkinitrd using the command that was listed in /boot/initrd-2.6.32.12-0.7.1.xs5.6.100.323.170596xen.img.cmd did the trick. I.e.:

mkinitrd -v --theme=/usr/share/splash --without-multipath /boot/initrd-2.6.32.12-0.7.1.xs5.6.100.323.170596xen.img 2.6.32.12-0.7.1.xs5.6.100.323.170596xen
share|improve this answer
add comment

Your going to have to add this flag to the pxe boot config "device_mapper_multipath=yes" for example:

default xenserver
label xenserver
       kernel mboot.c32
       append /tftpboot/xenserver/xen.gz dom0_mem=752M com1=115200,8n1 \
       console=com1,vga --- /tftpboot/xenserver/vmlinuz \
       xencons=hvc console=hvc0 console=tty0 \ 
       device_mapper_multipath=yes \
       --- /tftpboot/xenserver/install.img

KDB Article here :

http://docs.vmd.citrix.com/XenServer/5.6.0fp1/1.0/en_gb/installation.html#boot_from_san

share|improve this answer
    
I ended up doing a test installation and tried passing the device_mapper_multipath=yes option. This option does not seem to make a difference - it isn't able to find the iSCSI target. –  Alex May 19 '11 at 19:22
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.