Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
developpement:productions:iscsiboot4wheezy [2013/06/13 08:18] equemene créée |
developpement:productions:iscsiboot4wheezy [2015/01/07 10:04] (Version actuelle) |
||
---|---|---|---|
Ligne 22: | Ligne 22: | ||
Le protocole [[http://fr.wikipedia.org/wiki/ISCSI|iSCSI]] permet à un hôte d'offrir un espace disque (du //mode bloc//) à un hôte distant. | Le protocole [[http://fr.wikipedia.org/wiki/ISCSI|iSCSI]] permet à un hôte d'offrir un espace disque (du //mode bloc//) à un hôte distant. | ||
- | Linux/Debian intègre dans la Squeeze (version 6.0.4) tout ce qui permet d'accéder à des volumes iSCSI ou de les créer. | + | Linux/Debian intègre dans la Wheezy (version 7) tout ce qui permet d'accéder à des volumes iSCSI ou de les créer. |
* [[http://www.open-iscsi.org|Open-ISCSI]] pour accéder à des ressources offertes en iSCSI | * [[http://www.open-iscsi.org|Open-ISCSI]] pour accéder à des ressources offertes en iSCSI | ||
* [[http://iscsitarget.sourceforge.net/|iSCSItarget]] pour offrir des //targets// iSCSI avec un module noyau | * [[http://iscsitarget.sourceforge.net/|iSCSItarget]] pour offrir des //targets// iSCSI avec un module noyau | ||
Ligne 28: | Ligne 28: | ||
De mon expérience (près de 5 ans sur iSCSItarget et un 1 et demi mois sur TGT), j'aurai tendance à préférer iSCSItarget. Le principal avantage de TGT réside dans son absence de module noyau et donc facile implantation sur un serveur, mais il a un problème de taille : impossible de retirer un volume déclaré ! | De mon expérience (près de 5 ans sur iSCSItarget et un 1 et demi mois sur TGT), j'aurai tendance à préférer iSCSItarget. Le principal avantage de TGT réside dans son absence de module noyau et donc facile implantation sur un serveur, mais il a un problème de taille : impossible de retirer un volume déclaré ! | ||
- | |||
- | Sur un noyau rétro-porté (3.2.0), il est nécessaire de rétroporté le paquet iSCSItarget de la Sid, de le compiler et l'installer. Là, le module doit impérativement installé avec DKMS. | ||
- | |||
===== Les prérequis ===== | ===== Les prérequis ===== | ||
Ligne 59: | Ligne 56: | ||
e2label /dev/MyVG/MyLViSCSI MyLViSCSI | e2label /dev/MyVG/MyLViSCSI MyLViSCSI | ||
</code> | </code> | ||
- | * Installation du système de base Squeeze, architecture x86_64 ou i386<code> | + | * Installation au besoin de ''debootstrap''<code>apt-get install debootstrap</code> |
+ | * Installation du système de base Wheezy, architecture x86_64 ou i386<code> | ||
# pour une architecture x86_64 | # pour une architecture x86_64 | ||
debootstrap --arch amd64 wheezy /media/MyLViSCSI http://ftp.fr.debian.org/debian | debootstrap --arch amd64 wheezy /media/MyLViSCSI http://ftp.fr.debian.org/debian | ||
Ligne 68: | Ligne 66: | ||
* Création d'une nouvelle liste de paquets<code> | * Création d'une nouvelle liste de paquets<code> | ||
tee /etc/apt/sources.list <<EOF | tee /etc/apt/sources.list <<EOF | ||
- | deb http://ftp2.fr.debian.org/debian/ wheezy main contrib non-free | + | deb http://ftp.fr.debian.org/debian/ wheezy main contrib non-free |
- | deb-src http://ftp2.fr.debian.org/debian/ sid main contrib non-free | + | deb-src http://ftp.fr.debian.org/debian/ sid main contrib non-free |
- | deb-src http://ftp2.fr.debian.org/debian/ experimental main contrib non-free | + | deb-src http://ftp.fr.debian.org/debian/ experimental main contrib non-free |
deb http://security.debian.org/ wheezy/updates main contrib non-free | deb http://security.debian.org/ wheezy/updates main contrib non-free | ||
deb-src http://security.debian.org/ wheezy/updates main contrib non-free | deb-src http://security.debian.org/ wheezy/updates main contrib non-free | ||
- | |||
EOF | EOF | ||
</code> | </code> | ||
+ | * Mise à jour de la base des paquets : <code>apt-get update</code> | ||
* Montage du /proc pendant l'installation<code> | * Montage du /proc pendant l'installation<code> | ||
mount -t proc none /proc | mount -t proc none /proc | ||
</code> | </code> | ||
- | * Initialisation du mot de passe superutilisateur<code>passwd | + | * Initialisation du mot de passe superutilisateur<code>echo "root:MyStrongPassword" | chpasswd |
</code> | </code> | ||
* Installation de paquets nécessaires<code> | * Installation de paquets nécessaires<code> | ||
apt-get -y install dhcp3-common openssh-server locales initramfs-tools dhcp3-client aufs-tools firmware-linux-nonfree firmware-linux firmware-bnx2 open-iscsi iftop htop iotop emacs mtr lsof tshark mbw memtest86 cpuburn bonnie dbench iozone3 console-setup less && apt-get clean | apt-get -y install dhcp3-common openssh-server locales initramfs-tools dhcp3-client aufs-tools firmware-linux-nonfree firmware-linux firmware-bnx2 open-iscsi iftop htop iotop emacs mtr lsof tshark mbw memtest86 cpuburn bonnie dbench iozone3 console-setup less && apt-get clean | ||
# Pour les architectures i686 | # Pour les architectures i686 | ||
- | apt-get -t squeeze-backports -y install linux-image-3.2.0-4-686-pae | + | apt-get -y install linux-image-3.2.0-4-686-pae |
# Pour les architectures x86_64 | # Pour les architectures x86_64 | ||
- | apt-get -t squeeze-backports -y install linux-image-3.2.0-4-amd64 | + | apt-get -y install linux-image-3.2.0-4-amd64 |
</code> | </code> | ||
+ | * Purge des archives de paquets :<code>apt-get clean</code> | ||
* Suppression du démarrage du démon iSCSI (en noyau 3.2, le script plante et empêche le démarrage)<code>insserv -r open-iscsi</code> | * Suppression du démarrage du démon iSCSI (en noyau 3.2, le script plante et empêche le démarrage)<code>insserv -r open-iscsi</code> | ||
* Paramétrage d'un boot iSCSI<code> | * Paramétrage d'un boot iSCSI<code> | ||
Ligne 108: | Ligne 107: | ||
iface lo inet loopback | iface lo inet loopback | ||
EOF | EOF | ||
- | </code> | ||
- | * Installation ssmtp en lieu et place de exim !<code> | ||
- | apt-get install ssmtp | ||
- | </code> | ||
- | * Arrêt des services démarrés à l'installation<code> | ||
- | /etc/init.d/dbus stop | ||
</code> | </code> | ||
* Démontage du ''/proc''<code> | * Démontage du ''/proc''<code> | ||
Ligne 120: | Ligne 113: | ||
* Sortie de l'environnement chrooté<code> | * Sortie de l'environnement chrooté<code> | ||
exit | exit | ||
+ | </code> | ||
+ | * Arrêt des services démarrés à l'installation<code> | ||
+ | lsof | grep /media/MyLViSCSI | awk '{ print $2 }' | sort -u | xargs -I '{}' kill '{}' | ||
</code> | </code> | ||
Ligne 159: | Ligne 155: | ||
</code> | </code> | ||
* Activation des partages<code> | * Activation des partages<code> | ||
- | ietadm --op new --tid=86 --params Name=iqn.2013-06.MySite.MyHost:MyLViSCSI | + | ietadm --op new --tid=100 --params Name=iqn.2013-06.MySite.MyHost:MyLViSCSI |
- | ietadm --op new --tid=86 --lun=0 --params Path=/dev/MyVG/MyLViSCSI,BlockSize=4096,Type=fileio | + | ietadm --op new --tid=100 --lun=0 --params Path=/dev/MyVG/MyLViSCSI,BlockSize=4096,Type=fileio |
- | ietadm --op new --tid=86 --lun=0 --user --params IncomingUser=inputname,Password=MyInputPwd | + | ietadm --op new --tid=100 --lun=0 --user --params IncomingUser=inputname,Password=MyInputPwd |
</code> | </code> | ||
* Vérification des partages par la commande ''cat /proc/net/iet/volume | grep MyLViSCSI''<code> | * Vérification des partages par la commande ''cat /proc/net/iet/volume | grep MyLViSCSI''<code> | ||
Ligne 188: | Ligne 184: | ||
APPEND console=tty1 initrd=initrd.img-3.2.0-4-amd64-iSCSI ip=dhcp rw ISCSI_TARGET_NAME=iqn.2013-06.MySite.MyHost:MyLViSCSI ISCSI_TARGET_IP=MyHost ISCSI_INITIATOR=iqn.2013-06.MySite.MyHost:default ISCSI_USERNAME=inputname ISCSI_TARGET_GROUP=1 ISCSI_PASSWORD=MyInputPwd root=LABEL=MyLViSCSI rootflags=data=journal | APPEND console=tty1 initrd=initrd.img-3.2.0-4-amd64-iSCSI ip=dhcp rw ISCSI_TARGET_NAME=iqn.2013-06.MySite.MyHost:MyLViSCSI ISCSI_TARGET_IP=MyHost ISCSI_INITIATOR=iqn.2013-06.MySite.MyHost:default ISCSI_USERNAME=inputname ISCSI_TARGET_GROUP=1 ISCSI_PASSWORD=MyInputPwd root=LABEL=MyLViSCSI rootflags=data=journal | ||
- | LABEL linux64 | + | LABEL linux32 |
KERNEL vmlinuz-3.2.0-4-686-pae-iSCSI | KERNEL vmlinuz-3.2.0-4-686-pae-iSCSI | ||
APPEND console=tty1 initrd=initrd.img-3.2.0-4-686-pae-iSCSI ip=dhcp rw ISCSI_TARGET_NAME=iqn.2013-06.MySite.MyHost:MyLViSCSI ISCSI_TARGET_IP=MyHost ISCSI_INITIATOR=iqn.2013-06.MySite.MyHost:default ISCSI_USERNAME=inputname ISCSI_TARGET_GROUP=1 ISCSI_PASSWORD=MyInputPwd root=LABEL=MyLViSCSI rootflags=data=journal | APPEND console=tty1 initrd=initrd.img-3.2.0-4-686-pae-iSCSI ip=dhcp rw ISCSI_TARGET_NAME=iqn.2013-06.MySite.MyHost:MyLViSCSI ISCSI_TARGET_IP=MyHost ISCSI_INITIATOR=iqn.2013-06.MySite.MyHost:default ISCSI_USERNAME=inputname ISCSI_TARGET_GROUP=1 ISCSI_PASSWORD=MyInputPwd root=LABEL=MyLViSCSI rootflags=data=journal | ||
EOF | EOF | ||
</code> | </code> | ||
- | * Création des liens pour chaque machine spécifique<note important>L'adresse MAC de la forme : ''00:AA:BB:CC:DD:EE'' doit être écrite sous la forme 01-00-AA-BB-CC-DD-EE</note><code> | + | * Création des liens pour chaque machine spécifique. Ll'adresse MAC de la forme : ''00:AA:BB:CC:DD:EE'' doit être écrite sous la forme 01-00-aa-bb-cc-dd-ee en MINUSCULE !<code> |
- | ln -sf iscsi 01-00-AA-BB-CC-DD-EE | + | ln -sf iscsi 01-00-aa-bb-cc-dd-ee |
</code> | </code> | ||
--- //[[emmanuel.quemener@ens-lyon.fr|Emmanuel Quemener]] 2013/06/13 06:05// | --- //[[emmanuel.quemener@ens-lyon.fr|Emmanuel Quemener]] 2013/06/13 06:05// |