Transformer vMA en appliance PXE pour ESXi
Posted by NiTRo | Filed under HowTo, Tips & Tricks, VMware
La vSphere Management Assistant (aka vMA/VIMA) devient indispensable lorsqu’il s’agit d’administrer ESXi en masse. A ce titre, nous utilisons régulièrement la commande <esxcfg-cfgbackup> qui permet comme vous le savez/devinez le backup de la config d’un ESXi et la restaurer en cas de besoin (pour un changement de serveur par exemple).
Alors que nous nous intéressions de près à une solution de déploiement stateless PXE d’ESXi, il devenait évident qu’il allait falloir à un moment ou à un autre partager ou extraire les fichiers configBundle de la vMA (ou d’un Windows avec Power CLI) pour que le serveur TFTP puissent les transmettre aux ESXi lors du boot. Mais il y a aussi plus simple : installer les services DHCP et TFTP sur la vMA.
L’appliance de VMware est un RHEL 5 x64, nous avons donc fouillé dans les CD d’install originaux de cette version que nous avions sous la main (attention à la licence…) et en avons extrait dhcp-3.0.5-18.el5.x86_64.rpm et tftp-server-0.42-3.1.x86_64.rpm qui feront parfaitement l’affaire pour notre petite expérience
Pour rendre certaines manipulations plus simple, nous avons préalablement déverrouillé le compte root (dans le fichier /etc/passwd). Il faut ensuite installer les packages et configurer les services associés, puis autoriser le tftp dans le firewall. Nous avons également augmenté la taille des partitions pour plus de confort :
- rpm -i ./dhcp-3.0.5-18.el5.x86_64.rpm
- rpm -i ./tftp-server-0.42-3.1.x86_64.rpm
- /sbin/chkconfig –level 345 xinetd on
- /sbin/chkconfig –level 345 tftp on
- /sbin/chkconfig –level 345 dhcpd on
- ajouter -A RH-Firewall-1-INPUT -p udp -m udp –dport 69 -j ACCEPT dans /etc/sysconfig/iptables
- augmenter la taille des partitions de la vMA
Vous modifiez le dhcpd.conf selon vos besoins, ainsi que les réservations MAC/IP :
Il faut ensuite configurer la partie tftp tel que décrit par Jim McCann et William Lam. Nous avons opté pour une arborescence organisée par version d’ESXi (installable & embedded) ainsi qu’un répertoire dédié aux configBundle et un autre pour les agents vpxa (vcenter) et aam (cluster HA) :
le répertoire pxelinux.cfg est quant à lui dédié aux réservations MAC/ESXi :
Voici un extrait d’un de nos fichiers de configuration pxelinux :
default menu.c32
menu title PXE Boot VMware ESXi ESX4i-8
timeout 30label ESXi 4.0.0 b208167
menu label Boot VMware ESXi 4.0.0 b208167
kernel ./mboot.c32
append /eESX4.0b208167/vmkboot.gz — /eESX4.0b208167/vmk.gz — /eESX4.0b208167/sys.vgz — /eESX4.0b208167/cim.vgz — /eESX4.0b208167/oem.tgz — /eESX4.0b208167/license.tgz — /agents/vpxa-208111.vgz — /agents/aam-208111.vgz — /configBundle/configBundle-ESX4i-8.tgz
ipappend 2label ESXi 4.0.0 b193498
menu label Boot VMware ESXi 4.0.0 b193498
kernel ./mboot.c32
append /eESX4.0b193498/vmkboot.gz — /eESX4.0b193498/vmk.gz — /eESX4.0b193498/sys.vgz — /eESX4.0b193498/cim.vgz — /eESX4.0b193498/oem.tgz — /eESX4.0b193498/license.tgz — /agents/vpxa-208111.vgz — /agents/aam-208111.vgz — /configBundle/configBundle-ESX4i-8.tgz
ipappend 2
Les configBundle sont recueillis par un script éxécuté par la crontab (le fichier esxi.csv peut contenir une liste de noms ou d’IP) :
awk -F’;’ ‘{ print $1 }’ ./esxi.csv | while read name
do
esxcfg-cfgbackup –server $name –username root –password ” -s /tftpboot/configBundle/configBundle-$name.tgz
done
Les agents vpxa et aam sont extraits du répertoire /bootbank d’un ESXi “type”. Ces agents évoluant au fil des version de vCenter, il faut les mettre à jour pour ne pas que le vCenter le fasse à chaque reboot des ESXi :
Lorsque tous les composants sont opérationnels, c’est magique :
December 1st, 2009 at 16:26
nice !
January 27th, 2010 at 13:41
Encore un excellent article, j’adore!
Il faut le traduire en englishe pour le reste de la communaute… Valdaaaaan!? )
January 27th, 2010 at 13:45
Tu te dévoue ?
January 27th, 2010 at 16:00
Si j’ai ton autorisation c’est avec plaisir!
January 27th, 2010 at 16:02
Tout le plaisir serait pour moi
January 27th, 2010 at 17:51
[...] } This is the translation of a great article posted in French on Hypervisor.fr. All credits go to [...]
January 27th, 2010 at 17:59
Et voila qui est fait
http://deinoscloud.wordpress.com/2010/01/27/transform-your-vma-appliance-into-a-pxe-server-for-your-esxi/
Dis moi si tu vois qqch a changer…