Baie de disque DELL MD3200 sous Debian GNU/Linux


-- mode: rst --
-- coding: utf-8 --

Installation et utilisation d’une baie de disque DELL MD3200 sous Debian Squeeze

Ce documént décrit l’installation de l’utilisation d’une baie de disque MD3200
sous Debian GNU/Linux Squeeze. (Fonctionne aussi sous Lenny)

Téléchargement des outils à partir du CDROM DELL

Le mieux, c’est de construire un mirroir du CDROM, afin de ne plus en avoir besoin
plus tard.

dd if=/dev/cdrom of=md3200.iso bs=1024k

Ou alors un rsync, peu importe, il faut récupérer les données qui sont dessus.

Ce qui nous intéresse surtout c’est le fichier dans mdsm / SMIA-LINUX*.bin

Installation des outils MD SM

Executer le programme SMIA-LINUX-*.bin

System Message: WARNING/2 (md3200_install.rst, line 27); backlink

Inline emphasis start-string without end-string.

bash SMIA*

Faire une installation complète.

Voici ce qui doit s’afficher

===============================================================================
Installation terminée
---------------------

Félicitations. PowerVault Modular Disk Storage Manager a été installé avec
succès dans :

   /opt/dell/mdstoragemanager

Extraction des archives rpm

Dell installe les outils rpm dans /opt/dell/mdstoragemanager/, on va les décompresser,
pour récupérer ce qui nous intéresse, et installer les outils.

apt-get install alien
cd /opt/dell/mdstoragemanager
alien -t -c *.rpm

Ensuite, on extrait les fichier tarball générés par alien, et on va installer
le nécessaire.

mkdir SMagent; tar -C SMagent -xvf SMagent*.tgz
mkdir SMclient; tar -C SMclient -xvf SMclient*.tgz
mkdir SMruntime; tar -C SMruntime -xvf SMruntime*.tgz
mkdir SMutil; tar -C SMutil -xvf SMutil*.tgz

Analyse des scripts RPM et des différent packages

SMruntime

predoinst.sh

Rien d’intéressant, juste des vérifications.

doinst.sh

Génère le fichier /var/opt/SM/LAUNCHER_ENV, nécessaire au fonctionnement de tous les autre scripts dell.
CE CHEMIN DOIT ÊTRE /var/opt/SM/LAUNCHER_ENV.

mkdir -p /var/opt/SM
chown root:root /var/opt/SM
chmod 755 /var/opt/SM
echo "BASEDIR=/opt/dell/mdstoragemanager" >/var/opt/SM/LAUNCHER_ENV

Le contenu du programme consiste en une JRE 1.6.0, donc on s’en fiche, on va installer openjdk a la place tout simplement.
Par contre, les binaire DELL sont compilés uniquement pour java 32 bits.

Il faut donc installer sur une machine x86_64 le java ia32 de SUN.

Machine i386:

apt-get install openjdk-6-jre
ln -s /usr/lib/jvm/java-6-openjdk/jre /opt/dell/mdstoragemanager/jre

Machine x86_64:

apt-get install ia32-sun-java6-bin
ln -s /usr/lib/jvm/ia32-java-6-sun/jre /opt/dell/mdstoragemanager/jre

SMutil

predoinst.sh

Rien d’intéressant, juste des vérifications

doinst.sh

Créer des nodes (sg*, sd*, …), pour gérer plein de disques.
Nous on est sous debian, ça marche bien avec udev, on oublie.

Le seul truc intéressant c’est le ln -s de l’executable SMdevices dans /usr/sbin.

Le script nécessite aussi bash, et non pas dash, comme c’est le cas dans Debian Squeeze.
On prendra soin de modifier le script pour y mettre /bin/bash plutot que /bin/sh dans le sheebang.

Une fois fait,

rsync -a /opt/dell/mdstoragemanager/SMutil/opt/ /opt/
sed -i 's,#!/bin/sh,#!/bin/bash,' /opt/dell/mdstoragemanager/util/SMdevices
ln -s /opt/dell/mdstoragemanager/util/SMdevices /usr/sbin

SMclient

predoinst.sh

Des vérifications

doinst.sh

La c’est plus copieux. Installation des binaires dans /usr/bin, etc/init.d & co.

On va faire court, voici une version compacte pour debian

apt-get install x11-utils xauth
rsync -a /opt/dell/mdstoragemanager/SMclient/var/opt/ /var/opt/
rsync -a /opt/dell/mdstoragemanager/SMclient/opt/ /opt/
ln -s /opt/dell/mdstoragemanager/client/SMclient /usr/bin
ln -s /opt/dell/mdstoragemanager/client/SMcli /usr/bin
ln -s /opt/dell/mdstoragemanager/client/SMmonitor /etc/init.d
sed -i 's,#!/bin/sh,#!/bin/bash,' /etc/init.d/SMmonitor /usr/bin/SMcli /usr/bin/SMclient
update-rc.d SMmonitor defaults 99

SMagent

predoinst.sh

Des vérificatiosn

doinst.sh

Même chose que SMutil,
par contre, un script udev doit être placé dans le rules.d pour permettre
a SMagent d’avoir les évènements de branchement/débranchement de la baie (Monitoring des devices Xport)

rsync -a /opt/dell/mdstoragemanager/SMagent/opt/ /opt/
rsync -a /opt/dell/mdstoragemanager/SMagent/etc/udev/rules.d/ /etc/udev/rules.d/
ln -s /opt/dell/mdstoragemanager/agent/SMagent /etc/init.d
sed -i 's,#!/bin/sh,#!/bin/bash,' /etc/init.d/SMagent
update-rc.d SMagent defaults 99
/etc/init.d/udev restart

Test de installation

Première chose, démarrer SMmonitor, et SMagent

/etc/init.d/SMmonitor start
/etc/init.d/SMagent start
ssh -X root@lamachine 'SMclient'

et magie!

Mise en place du multipath

Prérequis

apt-get install multipath-tools kpartx

/etc/multipath.conf

defaults {
   flush_on_last_del no
   user_friendly_names yes
}

blacklist {
    device {
        vendor Dell.*
        product Universal.*
    }
    device {
        vendor Dell.*
        product Virtual.*
    }
    device {
        vendor DELL
        product RD1000
    }
    device {
        vendor DELL
        product "PERC 6/i"
    }
    # System disk
    device {
        vendor ATA
        product *
    }
    # System disk
    device {
        vendor SEAGATE
        product *
    }
}

devices {
    device {
        vendor "DELL"
        product "MD32xx"
        #path_grouping_policy group_by_prio
        prio rdac
        polling_interval  5
        path_checker rdac
        path_selector "round-robin 0"
        hardware_handler "1 rdac"
        failback immediate
        #features "2 pg_init_retries 50"
        no_path_retry 30
        #rr_min_io 100
        prio_callout "/sbin/mpath_prio_rdac /dev/%n"
        getuid_callout "/lib/udev/scsi_id --whitelisted --device=/dev/%n"
    }
}

multipaths {
    multipath {
        device {
            vendor DELL
            product MD32xx
        }
    }
}

Il faut redémarrer multipathd après avoir modifié ce fichier.

/etc/init.d/multipath-tools restart

Test du mutlipath

cbmf1:~# multipath -ll
mpath2 (36782bcb0001de90b000003724da3fca8) dm-0 DELL,MD32xx
size=837G features='1 queue_if_no_path' hwhandler='1 rdac' wp=rw
|-+- policy='round-robin 0' prio=6 status=active
| `- 1:0:0:0 sdd 8:48 active ready running
`-+- policy='round-robin 0' prio=1 status=enabled
  `- 2:0:0:0 sde 8:64 active ghost running

Ce contenu a été publié dans Informatique. Vous pouvez le mettre en favoris avec ce permalien.

Une réponse à Baie de disque DELL MD3200 sous Debian GNU/Linux

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>