Debian iSCSI SAN boot setup guide for NetApp Storage Controller
SAN boot configuration for iSCSI hardware, software initiators
When you set up a SAN boot device, you use a SAN-attached disk, such as a LUN, as a root device for a host. A SAN boot LUN can be implemented either by an iSCSI HBA or a network interface card (NIC) and software iSCSI stack.
Software iSCSI: For a software initiator to implement a SAN boot device, you can have the root device on an iSCSI LUN, and you can use any of the following options to load the kernel:
1. A host’s locally attached disk (for storing kernel and initrd images)
2. A preboot execution environment (PXE) server
3. Hardware iSCSI
If the SAN boot LUN uses an iSCSI HBA, then, because the protocol stack runs on the HBA, it is ready to communicate with the storage system and discover a LUN when it starts up. In that case, you can have both the boot device and root device on an iSCSI LUN.
Debian installer doesn’t have out-of-the-box support OS installation on an iSCSI LUN. On an existing Debian host, follow the steps mentioned below to boot off of a NetApp Storage Controller LUN.
1. Map a new LUN to an existing Debian host. This is the root LUN for Debian image.
2. Ensure open-iscsi, multipath-tools, lvm2 and debootstrap are installed and configured. Refer to Task 3 of Debian iSCSI Setup Guide.
3. Rescan the new LUN.
iscsiadm –m session -R
4. Find out multipath device name for the root LUN.
multipath –ll
5. Create a partition on multipath device and format it.
6. Mount the partition.
7. Run debootstrap on newly mounted LUN.
debootstrap squeeze <mount point>
This will bootstrap a new Debian installation at the specified mount point
8. Mount the following file systems under the bootstrapped Debian install. As an example, assuming you bootstrapped your Debian installation to /mnt/Debian.
mount -o bind /dev /mnt/Debian/dev
mount -t sysfs none /mnt/Debian/sys
mount -t proc none /mnt/Debian/proc
mount /dev/sda1 /mnt/Debian/boot
If you chose to store kernel and initrd images from the host’s locally attached disk, mount this boot disk’s partition under the chroot boot directory.
9. Change root to /mnt/Debian
chroot /mnt/Debian
10.Create an iscsi.initramfs file with iscsi initiator, target and IP details.
cat /etc/iscsi/iscsi.initramfs
ISCSI_INITIATOR=iqn.1993-08.org.debian:01:testsan
ISCSI_TARGET_NAME=iqn.1992-08.com.netapp:sn.135026614
ISCSI_TARGET_IP=10.72.201.72
13. Install grub on the local boot disk
grub-install /dev/sda
14. Set proper mirrors on /etc/apt/sources.list.
cat /etc/apt/sources.list
deb http://security.debian.org/ squeeze/updates main contrib non-free
deb-src http://security.debian.org/ squeeze/updates main contrib non-free
deb http://ftp.debian.org/debian squeeze main contrib non-free
deb-src http://ftp.debian.org/debian squeeze main contrib non-free
16. run aptitude update
17. Install open-iscsi, scsitools, multipath-tools, multipath-tools-boot and lvm2
18. Install the kernel
aptitude install linux-image-2.6-amd64
This will install kernel and create new initramfs under boot dir. In any case if you want to update initramfs, use update-initramfs -ck all
19. Unmount the chroot and boot your system with newly installed kernel by using local disks boot partition.

Recent comments
12 weeks 6 days ago
14 weeks 10 hours ago
14 weeks 10 hours ago
28 weeks 9 hours ago
33 weeks 6 days ago
50 weeks 16 hours ago
1 year 2 weeks ago
1 year 8 weeks ago
1 year 9 weeks ago
1 year 10 weeks ago