From: Charles Plessy Date: Sun, 7 Aug 2011 22:26:23 +0000 (+0900) Subject: Premiers pas dans les nuages. X-Git-Url: https://source.charles.plessy.org/?a=commitdiff_plain;h=ceb32c0fade8a466dd566e8f73d88fe0d325988b;p=source%2F.git Premiers pas dans les nuages. --- diff --git "a/Debian/debi\303\242neries/nuage.mdwn" "b/Debian/debi\303\242neries/nuage.mdwn" new file mode 100644 index 00000000..0bcfc293 --- /dev/null +++ "b/Debian/debi\303\242neries/nuage.mdwn" @@ -0,0 +1,92 @@ +[[!meta date="Sun, 07 Aug 2011 21:59:09 +0900"]] +[[!meta updated="Sun, 07 Aug 2011 21:59:09 +0900"]] +[[!tag Debian brouillon]] + +[[!meta title="Installer Debian dans un nuage"]] + +Cela fait longtemps que je voudrais préparer une [[!debwiki +Cloud/AmazonEC2Image desc="image virtuelle pure Debian"]] pour le +[nuage élastique de calcul de chez Amazon][cloud], qui contiendrait les +[outils de bio-informatique][bioinfo] que nous empaquetons au sein de +[Debian Med][med]. + +[cloud]: http://aws.amazon.com/ec2/ +[bioinfo]: http://debian-med.alioth.debian.org/tasks/cloud/ +[med]: http://www.debian.org/devel/debian-med/ + +La plupart des méthodes discutées dans le groupe [ec2debian][] utilisent [[!debpkg +debootstrap]] et terminent la préparation avec des scripts externes. Étant +donné que les images peuvent désormais [démarrer avec leur noyau d'origine][pvgrub], je +préférerai simplement utiliser l'[installeur Debian][di]. + +L'idée est de préparer une machine virtuelle qui démarre sur l'installeur et +met en place un système Debian sur un [blocs élastiques de stockage][ebs], +cela devrait permettre de créer des systèmes vierges sans effort. + +L'installeur Debian peut être [démarré par GRUB][di-grub] et +[pré-configuré][preseed] via un fichier téléchargé au démarrage. Dans le nuage +Amazon, ce fichier peut être déposé à l'adresse +http://169.254.169.254/latest/user-data avec les autres [données +d'instance][instancedata]. + +[ec2debian]: http://groups.google.com/group/ec2debian/ +[pvgrub]: http://aws.amazon.com/articles/3967 +[di]: http://www.debian.org/devel/debian-installer/ +[ebs]: http://aws.amazon.com/ebs/ +[di-grub]: http://d-i.alioth.debian.org/manual/en.amd64/ch05s01.html#boot-initrd +[preseed]: http://d-i.alioth.debian.org/manual/en.amd64/apb.html +[instancedata]: http://docs.amazonwebservices.com/AmazonEC2/dg/2007-01-03/AESDG-chapter-instancedata.html + +N'ayant que peu d'expérience, j'avance lentement sur l'automatisation de la +procédure. Pour le moment, la préconfiguration n'est pas complète, mais permet +au moins de [lancer la console SSH de l'installeur][network-console]. Dans +l'idéal, il faudrait se [[!debbug 592550 desc="connecter avec des clés"]], mais +pour le moment j'utilise un mot de passe. + +Je coince sur le partitionnement du disque dur: l'installeur de trouve pas le +disque qui est à la racine: No root file system is defined.. Je +le trouve pourtant monté sur /dev/xvda1, mais curieusement +/dev/xvda n'est pas disponible. + +Voici quelques détails techniques. Je travaille pour le moment en 32 bits sur +des instances [t1.micro][], moins chères. J'ai téléchargé sur +un volume élastique de 1 Go que j'ai formatté en ext2. Ne sachant pas si son +nom de périphérique sera stable (/dev/sda1 ou +/dev/xvda1), j'y ai collé une étiquette, comme j'ai vu le faire +dans les [machines virtuelles Ubuntu][alestic]. + +
+ +ARCH=i386 +DIST=squeeze +DI_VERSION=20110106+squeeze3 +MIRROR=jp + +mke2fs -L debian-installer /dev/sdb -F +mount LABEL=debian-installer /mnt/ && cd /mnt/ + +wget http://ftp.$MIRROR.debian.org/debian/dists/$DIST/main/installer-$ARCH/$DI_VERSION/images/netboot/xen/initrd.gz +wget http://ftp.$MIRROR.debian.org/debian/dists/$DIST/main/installer-$ARCH/$DI_VERSION/images/netboot/xen/vmlinuz + +mkdir -p boot/grub +cat > boot/grub/menu.lst <<__END__ +default 0 +timeout 3 + +title Debian Installer ($DI_VERSION $ARCH) +root (hd0) +kernel /vmlinuz root=LABEL=debian-installer ro console=hvc0 auto=true priority=critical url=http://169.254.169.254/latest/user-data +initrd /initrd.gz +__END__ + +
+ +Un instantané de ce volume peut ensuite être enregistré comme image machine +(AMI). Le [noyau à utiliser][kernel] dépendra de si le système a été installé +sur le volume entier ou une partition. Debian distribue des outils pour toutes +ces opérations, comme [[!debpkg euca2ools]]. + +[kernel]: http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/index.html?UserProvidedkernels.html +[t1.micro]: http://aws.amazon.com/ec2/instance-types/ +[alestic]: http://alestic.com/ +[toykokernels]: https://forums.aws.amazon.com/thread.jspa?messageID=237108