En résumé
Cette machine a pour but de faire tourner les machines virtuelles de Grenode et de certains de ses membres.
- IP: 91.216.110.19
Matériel
- Dell poweredge R210
- Stockage : 2 x disques SATA 1 To WD1001FALS – RAID1
- Mémoire vive : 12 Go = 2 x 2Go (?) + 2 x 4Go (DDR3 1333 ECC)
Réseau / vlan / Xen
Tant que les vlan de Grenode ne sont pas mis en place, nous utilisons une configuration réseau façon debian avec l'inteface eth0 qui participe au bridge br-eth0. Nous chuntons les srcipts de configuration réseau du dom0 de xen dans la config de xend (/etc/xen/xend-config.sxp) :
(network-script 'network-dummy')
et nous utilisons des ligne du type dans la config des domU :
vif = [ 'mac=00:1A:31:E5:33:10,bridge=br-eth0' ]
Attention : avec ce type configuration, il ne faut pas appeler le bridge xenbr[0-9]+ car les bridge nommés ainsi sont traités d'une manière particulière par Xen l'amenant à se prendre les pieds dans le tapis.
Plusieurs liens intéressants sur la question des vlan et de xen :
- http://renial.net/weblog/2007/02/27/xen-vlan
- http://tuttodebian.blogspot.com/2008/03/howto-debian-xen-e-vlan.htm
- http://wiki.xensource.com/xenwiki/XenNetworking
Stockage
Objectifs
- Tout en raid 1
- Chiffrement pour grenode avec une seule clé pour toutes ses machines virtuelles.
- La possibilité de choisir si la machine est cryptée pour les membres
- La possibilité de tout dimensionner....
- La possibilité de rajouter des paires de disques pour augmenter la taille si besoin est.
Schéma de partitionnement
d1
\
raid 1 ◼ ext3 (boot)
/ | ◼ ext3 (dom0)
d2 ◼ pv ◼ swap (dom0-swap)
\ |
vg1 −◼ crypt −− pv −− vg2 −◼ ext3 (outils.grenode.net-disk)
| ◼ swap (outils.grenode.net-swap)
| |
| …
|
|
◼ crypt −− pv −− vg3 −◼ ext3 (membre1-disk)
| ◼ swap (membre1-swap)
|
◼ ext3 (membre2-disk)
◼ swap (membre2-swap)
|
…
vg1 / vg-data ~ 1To
- lv-grenode
- lv-membre1
- lv-membre2-disk
- lv-membre2-swap
vg2 / vg-grenode ~ 300 Go
- palanquee.grenode.net-disk
- palanquee.grenode.net-swap
- outils.grenode.net-disk
- outils.grenode.net-swap
vg3 / un membre
Il reste deux volumes logiques dans le vg grenode dom0 et dom0-swap. Ces deux volumes étaient ceux de palanquee lorsqu'elle tournait sur une archi 32 bit. À priori, ils peuvent être supprimés. Mais par précaution, cela n'a pas encore été fait (2010/09/03).
Redimensionement
Il est possible d'augmenter la taille des partitions à chaud. Par contre pour réduire il faut démonter les partition. Pour cela, il est possible d'utiliser les outils : lvresize, cryptsetup, resize2fs.
Xen: manipulation des domU
On utilise les outils du paquet xen-tools qui sont configurés dans /etc/xen-tools/xen-tools.conf
Voir la page Xen du wiki debian :
- résolution du bug «clocksource/0: Time went backward»
Créer une machine virtuelle
une machine virtuelle pour Grenode
xen-create-image --lvm=grenode \
--ip=80.67.166.9 --hostname=outils.grenode.net \
--size=9GB --swap=512MB --memory=384 --role=udev
une machine virtuelle pour un membre
Voir ce document pratique
Lancer automatiquement une machine virtuelle au démarage.
Normalememt, pour chaque machine virtuelle se trouve un fichier de configuration dans le repertoire /etc/xen/ . Il suffit de créer un lien symbolique comme suit :
ln -s /etc/xen/<machine>.cfg /etc/xen/auto/
Graphe des températures
Pour connaître la température sur palanquee, il est possible d'utiliser la commande ipmitool après avoir ajouté les modules ipmi-si et ipmi-devintf dans le noyau (ils ont été rajouté dans le fichier /etc/modules) :
sudo ipmitool sensor # Liste tous les indicateurs
sudo ipmitool sensor get "CPU0 TEMP" # Affiche les information concerant CPU0 TEMP
Ensuite on trouve sur le web, plein de plugin ipmi pour munin. Celui de palanquee a été récupéré ici et adapté à nos besoins. Pour l'activer, il faut faire un lien symbolique dans /ect/munin/plugin comme ceci :
cd /etc/munin/plugins
sudo ln -s ipmi_sensor_u_degrees /usr/local/share/munin/plugins/ipmi_sensor_
Utilisation de xen-shell
- Paquet debian
- Site officiel
- Document de référence :
man xen-shell
Xen fournit un petit utilitaire fourni par xen-tools dont le but est permettre la gestion d'un domU par son/ses administrateurs. Cet utilitaire se présente sous la forme d'une invite de commande avec laquelle il est possible d'utiliser les directives de 'xm' spécifique au domU concerné.
Il est donc possible de définir un compte unix pour chacun des domU avec comme shell xen-shell.
Limitations / Remarques
ce shell ne permet pas de modifier le mot de passe d'un compte unix. Une manière de contourner ce problème est de permettre l'accès en ssh uniquement avec authentification par clé.
Un compte unix peut gérer plusieurs machines virtuelles.
Concrètement
Création du compte unix
<user>
et désactivation de son mot de passeadduser --shell /usr/bin/xen-shell --disabled-password
Ajout de l'utilisateur dans la configuration du domU
/etc/xen/<domU>.cfg
echo "xen_shell = ''" >> /etc/xen/.cfg
Création d'un groupe xen-shell, autorisation sudo à exécuter 'xm', ajout de l'utilisateur dans ce groupe
addgroup xen-shell adduser xen-shell echo '%xen-shell ALL=(root) NOPASSWD: /usr/sbin/xm' >> /etc/sudoers
Ajout des clés SSH des administrateurs du domU
sudo su mkdir /home//.ssh echo "" >> /home//.ssh/authorized_keys chown -R : /home//.ssh exit