Installation de AoE

Les notes disponibles ci-dessous sont issues des rushs de documentation d'installation sur le cluster du CBP : 48 noeuds Sun v22z.

L'objectif est d'installer AoE sur les noeuds v22z de 17 à 24 avec la machine x2100 comme maître.

Prérequis

  • le système installé est une Debian stable Squeeze 6, sur le maître comme sur les noeuds
  • le paquet clustershell est installé sur le maître
  • le maître peut se connecter sur les noeuds sans login/mot de passe

Parmi les outils de clustershell se trouve clush, lequel permet de lancer sur un ensemble de noeuds la même commande. Dans notre cas, il s'agit des noeuds 17 à 24 des v22z à disposition. Pour simplifier l'appel des fonctions distantes, nous définissons l'alias :

alias jacadi='clush -w v22z[17-24]'

Installation

Préparation sur le maître

Les commandes suivantes sont à taper comme root :

tee /root/AOEID <<EOF
#!/bin/bash
/sbin/ifconfig eth0 | grep -v inet6 | grep inet | awk '{ print \$2 }' | awk -F"." '{ print \$4 }'
EOF
chmod 755 /root/AOEID

jacadi 'mkdir /etc/scripts'
jacadi --copy AOEID --dest /etc/scripts/AOEID
# Activation manuelle
jacadi "/usr/sbin/vbladed \$(/etc/scripts/AOEID) 0 eth0 /dev/sda" 
# Activation persistante
jacadi "/usr/sbin/vblade-persist setup \$(/etc/scripts/AOEID) 0 eth0 /dev/sda" 
v22z17: Service vblade-e117.0 added.
v22z21: Service vblade-e121.0 added.
v22z19: Service vblade-e119.0 added.
v22z22: Service vblade-e122.0 added.
v22z20: Service vblade-e120.0 added.
v22z23: Service vblade-e123.0 added.
v22z18: Service vblade-e118.0 added.
v22z24: Service vblade-e124.0 added.
jacadi "/usr/sbin/vblade-persist auto \$(/etc/scripts/AOEID) 0" 
jacadi "/usr/sbin/vblade-persist start \$(/etc/scripts/AOEID) 0" 
v22z17: ok: run: /var/lib/vblade-persist/vblades/e117.0: (pid 4397) 0s
v22z21: ok: run: /var/lib/vblade-persist/vblades/e121.0: (pid 4289) 0s
v22z18: ok: run: /var/lib/vblade-persist/vblades/e118.0: (pid 4334) 0s
v22z19: ok: run: /var/lib/vblade-persist/vblades/e119.0: (pid 4273) 0s
v22z20: ok: run: /var/lib/vblade-persist/vblades/e120.0: (pid 4394) 0s
v22z22: ok: run: /var/lib/vblade-persist/vblades/e122.0: (pid 4308) 0s
v22z24: ok: run: /var/lib/vblade-persist/vblades/e124.0: (pid 4402) 0s
v22z23: ok: run: /var/lib/vblade-persist/vblades/e123.0: (pid 4394) 0s
jacadi "/usr/sbin/vblade-persist mac \$(/etc/scripts/AOEID) 0 add 00:e0:81:5d:c1:a1" 
v22z17: ok: run: /var/lib/vblade-persist/vblades/e117.0: (pid 4428) 0s
v22z19: ok: run: /var/lib/vblade-persist/vblades/e119.0: (pid 4304) 0s
v22z20: ok: run: /var/lib/vblade-persist/vblades/e120.0: (pid 4424) 0s
v22z23: ok: run: /var/lib/vblade-persist/vblades/e123.0: (pid 4425) 0s
v22z18: ok: run: /var/lib/vblade-persist/vblades/e118.0: (pid 4364) 0s
v22z22: ok: run: /var/lib/vblade-persist/vblades/e122.0: (pid 4335) 0s
v22z24: ok: run: /var/lib/vblade-persist/vblades/e124.0: (pid 4433) 0s
v22z21: ok: run: /var/lib/vblade-persist/vblades/e121.0: (pid 4320) 0s
# Sur le client
apt-get install aoetools
eth2 dans /etc/default/aoetools
/etc/init.d/aoetools restart

aoe-discover (aucune sortie)

aoe-stat 

    e117.0       146.815GB cluster up            
    e118.0       146.815GB cluster up            
    e119.0       146.815GB cluster up            
    e120.0       146.815GB cluster up            
    e121.0       146.815GB cluster up            
    e122.0       146.815GB cluster up            
    e123.0       146.815GB cluster up            
    e124.0       146.815GB cluster up  
  1. Création d'un volume RAID6 sur tous les volumes
    mdadm --create /dev/md5 -binternal --level=6 --force --raid-devices=8 /dev/etherd/e???.0 
    
  1. Vérification de la création
    cat /proc/mdstat 
    Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] 
    md5 : active (auto-read-only) raid6 etherd/e124.0[7] etherd/e123.0[6] etherd/e122.0[5] etherd/e121.0[4] etherd/e120.0[3] etherd/e119.0[2] etherd/e118.0[1] etherd/e117.0[0]
          430116864 blocks super 1.2 level 6, 512k chunk, algorithm 2 [8/8] [UUUUUUUU]
              resync=PENDING
          bitmap: 1/1 pages [4KB], 65536KB chunk
    
  1. Création d'un VG de nom aoe
    vgcreate aoe /dev/md3
      No physical volume label read from /dev/md3
      Physical volume "/dev/md3" successfully created
      Volume group "aoe" successfully created
    
# Création d'un système de fichiers
mkfs.btrfs /dev/md3

# Création du point de montage
mkdir /media/aoe.raid6/

# Montage
mount -o noatime,nodiratime /dev/md5 /media/aoe.raid6/
mdadm --examine --brief --scan >> /etc/mdadm/mdadm.conf
# Pour relancer sa grappe après un arrêt :
mdadm -A /dev/md3 /dev/etherd/e1[1-2]?.0
  1. Pour exporter la définition de sa grappe dans la configuration mdadm

Autres commandes d'administration

# Arrêt des partages
jacadi "/usr/sbin/vblade-persist stop \$(/etc/scripts/AOEID) 0" 

# Suppression des entrées MAC
jacadi "/usr/sbin/vblade-persist mac \$(/etc/scripts/AOEID) 0 clear" 

# Suppression des partages
jacadi "/usr/sbin/vblade-persist destroy \$(/etc/scripts/AOEID) 0" 

Création d'un volume ZFS

zpool create -f aoepool raidz /dev/etherd/e11?.0 /dev/etherd/e12[0-3].0 spare /dev/etherd/e124.0
zpool status
  pool: aoepool
 state: ONLINE
 scan: none requested
config:

    NAME        STATE     READ WRITE CKSUM
    aoepool     ONLINE       0     0     0
      raidz1-0  ONLINE       0     0     0
        e117.0  ONLINE       0     0     0
        e118.0  ONLINE       0     0     0
        e119.0  ONLINE       0     0     0
        e121.0  ONLINE       0     0     0
        e122.0  ONLINE       0     0     0
        e123.0  ONLINE       0     0     0
    spares
      e124.0    AVAIL   

errors: No known data errors