A mon retour de vacances j'ai reçu mon nouveau jouet... La nouvelle infra avec de la virtualisatioin, du SAN, du NAS... Enfin tout les trucs à la mode en ce moment. Après une semaine de mise en place de la baie, des serveurs et la formation, cette semaine c'est bricolage et triturage de VmWare. La première fonction que je vais détailler est les templates.
Le but d'un template est d'avoir l'équivalent du master sur cd ou dvd ou encore en image disque déployable mais avec l'avantage d'être beaucoup plus souple au niveau configuration matériel grâce à la virtualisation. Lors de mes tests je me suis préparé un template basé sur RedHat Entreprise 5.5 avec le minimum de paquet et un partitionnement un peu près logique mais à l'utilisation je me suis rendu compte que mon partitionnement n'allait pas fonctionner pour toutes mes VM. Il me restait deux solutions :
- Faire une installation à chaque fois;
- Bricoler les partitions.
J'ai choisi la deuxième solution à condition que le partitionnement ai été fait avec le couche LVM.
ATTENTION : Avant de faire cette manipulation sauvegarder toute vos données. Je l'ai réalisé 2 fois je n'ai pas eu de problème mais dès qu'on touche au partitionnement il y a toujours un risque.
En temps normal il est très simple d'agrandir un volume mais je voulais pousser l'idée plus loin en voulant agrandir la raçine de mon disque donc tout doit se faire sur LiveCD.
Première étape, télécharger system-rescue. Pendant le téléchargement transformer votre template en VM. Ensuite vous devez monter l'iso de system-rescue dans la VM que vous venez de créer, deux possibilités :
- La monter depuis votre pc;
- La transférer dans la banque de données.
J'ai choisi cette dernière option, de cette façon l'iso est accessible depuis n'importe où. J'ai réalisé le transfert via scp
# scp systemrescuecd-x86-1.5.8 user@hote:/vmimages/tools-isoimages
Dans vsphere :
Attention : si vous possédez plusieurs serveurs ESX, la banque de données n'est pas commune donc ne soyez pas étonné si votre iso n'apparait pas dans la banque de données, c'est que vous n'êtes pas sur le bon serveur ;)
Avant de lancer la VM aller dans les options de celle-ci pour modifier la taille du disque dur, pour mon test j'ai ajouté 4Go. Démarrer votre VM en bootant sur system-rescue, il faut être rapide pour accéder au boot menu de vmware ;) Chosissez le boot qui convient à votre VM. Une fois le LiveCD lancé vous arrivé au prompt habituel.
Pour mon exemple je suppose que le disque dur est /dev/sda, avec fdsik nous allons augmenter la taille :
# fdisk /dev/sda
La partition qui nous intéresse est /dev/sda2, notez la valeur dans la colonne Start et End. Supprimez la partition avec la touche "d" et entrez le numéro de votre partition, ici c'est la 2.
Re-créez la partition avec la touche "n", choisissez une partition primaire avec la touche "p" et donnez le même numéro que votre ancienne partition, "2" dans notre cas. A la question First cylinder tapez 14 , normalement il devrait vous proposer comme valeur par défaut celle que vous avez noté avant du supprimer la partition. A la question Last cylinders vous pouvez soit indiquer une valeur soit prendre la valeur par défaut. Si vous faites ce dernier choix, la totalité du disque sera utilisé pour cette partition.
Il va falloir changer le type de partition, avec la touche "t", donner le numéro de votre partition, ici 2 et le code qui correspond au type lvm soit 8e.
Pour le moment la table de partition n'est pas écrite, si tout est bon vous pouvez appuyer sur la touche "w" pour écrire la nouvelle configuration. Il sort avec un message d'erreur pas très sympa mais rien de grave. Pour activer votre nouvelle configuration il vous suffit de re-démarrer la VM. Pensez bien à booter de nouveau du le LivceCD, nous n'avons pas fini.
Une fois revenue au prompt du LiveCD il va falloir adapter la configuration de lvm. Tout est prévue, dans un premier temps il va falloir agrandir de Physical Volume :
# pvresize /dev/sda2
Comme je ne lui précise pas de taille il va prendre tout l'espace disponible sur /dev/sda2. Maintenant passons au Logical Volume :
Attention à la taille que vous donnez, elle doit être égale à celle que vous avez ajouté au disque dur dans votre vsphère.
# lvextend -L +4G /dev/VolGroup00/LogVol00
Ensuite il faut adapter le système de fichier à ce nouvel espace :
# e2fsck -f /dev/VolGroup00/LogVol00 # resize2fs /dev/VolGroup00/LogVol00
Voila la raçine de votre disque dur vient de gagner 4G d'espace disque.