Sun Cluster Software Guide d'installation pour le SE Solaris

Création de jeux de disques dans un cluster

Cette rubrique explique comment créer des jeux de disques pour une configuration de cluster. Lorsque vous créez un jeu de disques Solaris Volume Manager dans un environnement Sun Cluster, le jeu de disques est enregistré automatiquement avec le logiciel Sun Cluster en tant que groupe de périphériques du type svm. Pour créer ou supprimer un groupe de périphériques svm, vous devez utiliser les commandes et utilitaires Solaris Volume Manager pour créer ou supprimer le jeu de disques sous-jacent du groupe de périphériques.


Remarque –

Si vous souhaitez créer un jeu de disques Solaris Volume Manager pour Sun Cluster afin qu'il soit utilisé par Oracle RAC, n'utilisez pas ces procédures. À la place, suivez les procédures de la rubrique How to Create a Multi-Owner Disk Set in Solaris Volume Manager for Sun Cluster for the Oracle RAC Database du Sun Cluster Data Service for Oracle RAC Guide for Solaris OS.


Le tableau suivant répertorie les tâches à effectuer pour créer des jeux de disques.

Tableau 4–2 Liste des tâches : installation et configuration du logiciel Solaris Volume Manager

Tâche 

Instructions 

1. Création de jeux de disques via la commande metaset.

Création d'un jeu de disques

2. Ajout d'unités de disque aux jeux de disques. 

Ajout de disques à un jeu de disques

3. (Facultatif) Création de partitions sur les lecteurs des jeux de disques afin d'affecter de l'espace aux différentes tranches.

Modification des partitions de disques dans un jeu de disques

4. Création d'une liste des correspondances des pseudo-pilotes d'ID de périphérique (DID) et définition des volumes dans les fichiers /etc/lvm/md.tab.

Création d'un fichier md.tab

5. Initialisation des fichiers md.tab.

Activation de volumes

ProcedureCréation d'un jeu de disques

Suivez les instructions de cette procédure pour créer des jeux de disques.


Remarque –

Cette procédure fournit les formes longues des commandes Sun Cluster. La plupart des commandes ont également une forme courte. À l'exception des formes des noms de commandes, les commandes sont identiques. Pour obtenir la liste des commandes et leurs formes courtes, reportez-vous à l'Annexe A, Sun Cluster Object-Oriented Commands du Sun Cluster System Administration Guide for Solaris OS.


  1. SPARC : (Solaris 9) Précisez le nombre de jeux de disques dont disposera le cluster après la création des nouveaux jeux : y en aura-t-il plus de 3 ?

    • S'il doit y en avoir 3 au maximum, passez à l'Étape 9.

    • S'il doit y en avoir 4 ou plus, passez à l'Étape 2 pour préparer le cluster. Vous devez effectuer ces tâches, qu'il s'agisse d'une première installation de jeux de disques ou de l'ajout de jeux supplémentaires à un cluster entièrement configuré.

    • Si le cluster dispose de Solaris 10, Solaris Volume Manager modifiera automatiquement la configuration. Passez à l'Étape 9.

  2. À partir d'un noeud du cluster, vérifiez la valeur de la variable md_nsets dans le fichier /kernel/drv/md.conf.

  3. Si le nombre total des jeux de disques du cluster est supérieur à la valeur indiquée pour md_nsets moins un, augmentez la valeur de md_nsets en conséquence.

    Le nombre maximum de jeux de disques autorisé correspond à la valeur configurée de md_nsets moins un. La valeur maximale autorisée pour md_nsets étant de 32, vous pouvez créer au maximum 31 jeux de disques.

  4. Vérifiez que le fichier /kernel/drv/md.conf est identique sur tous les nœuds du cluster.


    Caution – Caution –

    Le non-respect de cette consigne peut occasionner de graves erreurs de Solaris Volume Manager et un risque de pertes de données.


  5. Si vous avez apporté des modifications au fichier md.conf sur l'un des nœuds, vous devez suivre les instructions ci-dessous pour appliquer ces modifications.

    1. Prenez le rôle de superutilisateur sur un nœud.

    2. Arrêtez le cluster depuis un noeud.


      phys-schost# cluster shutdown -g0 -y
      
    3. Réinitialisez tous les noeuds du cluster.

      • Sur les systèmes SPARC, procédez comme suit :


        ok boot
        
      • Sur les systèmes x86, procédez comme suit :

        Lorsque le menu GRUB s'affiche, sélectionnez l'entrée Solaris appropriée, puis appuyez sur Entrée. Le menu GRUB qui s'affiche est similaire à ce qui suit :


        GNU GRUB version 0.95 (631K lower / 2095488K upper memory)
        +-------------------------------------------------------------------------+
        | Solaris 10 /sol_10_x86                                                  |
        | Solaris failsafe                                                        |
        |                                                                         |
        +-------------------------------------------------------------------------+
        Use the ^ and v keys to select which entry is highlighted.
        Press enter to boot the selected OS, 'e' to edit the
        commands before booting, or 'c' for a command-line.

        Pour plus d'informations sur l'initialisation GRUB, reportez-vous au Chapitre 11, GRUB Based Booting (Tasks) du System Administration Guide: Basic Administration.

  6. Exécutez la commande devfsadm(1M) sur chaque nœud du cluster.

    Vous pouvez exécuter cette commande sur tous les nœuds du cluster en même temps.

  7. Dans un nœud du cluster, mettez à jour l'espace de noms de périphériques globaux.


    phys-schost# cldevice populate
    

    Reportez-vous à la page de manuel cldevice(1CL) pour plus d'informations.

  8. Sur chaque nœud, vérifiez que le traitement de la commande est terminé avant de créer des jeux de disques.

    La commande est exécutée à distance sur tous les nœuds, même si elle n'est exécutée qu'à partir d'un seul nœud. Pour savoir si la commande s'est exécutée convenablement, exécutez la commande suivante sur chaque nœud du cluster.


    phys-schost# ps -ef | grep scgdevs
    
  9. Assurez-vous que le jeu de disques que vous prévoyez de créer répond à l'une des exigences suivantes :

    • Si le jeu de disques est configuré avec exactement deux chaînes de disque, il doit être connecté à exactement deux nœuds et utiliser exactement deux hôtes médiateurs. Ces derniers doivent être identiques à ceux utilisés pour le jeu de disques. Pour plus d'informations sur la configuration des médiateurs à deux chaînes, reportez-vous à la rubrique Configuration de médiateurs à deux chaînes.

    • Si le jeu de disques est configuré avec plus de deux chaînes de disques, assurez-vous que, pour tout couple de chaînes de disques S1 et S2, la somme du nombre de lecteurs de disques sur ces chaînes soit supérieure au nombre de lecteurs de disques sur la troisième chaîne S3. Pour résumer cette condition par une formule : nombre(S1) + nombre(S2) > nombre(S3).

  10. Assurez-vous que les répliques locales de la base de données d'état existent.

    Pour plus d'informations, reportez-vous à la rubrique Création de répliques de bases de données d'état.

  11. Connectez-vous en tant que superutilisateur sur le nœud du cluster qui sera le maître du jeu de disques.

  12. Créez le jeu de disques.

    La commande suivante crée le jeu de disques et l'enregistre en tant que groupe de périphériques Sun Cluster.


    phys-schost# metaset -s setname -a -h node1 node2
    
    -s setname

    Spécifie le nom du jeu de disques.

    -a

    Ajoute (crée) le jeu de disques.

    -h nœud1

    Indique le nom du nœud principal qui sera maître du jeu de disques.

    noeud2

    Indique le nom du nœud secondaire qui sera maître du jeu de disques.


    Remarque –

    lorsque vous lancez la commande metaset pour configurer un groupe de périphériques Solaris Volume Manager sur un cluster, celle-ci désigne un nœud secondaire par défaut. Vous pouvez modifier le nombre souhaité de nœuds secondaires du groupe de périphériques à l'aide de l'utilitaire clsetup une fois le groupe de périphériques créé. Pour plus d'informations sur la modification de la propriété numsecondaries, reportez-vous à la rubrique Administering Device Groups du Sun Cluster System Administration Guide for Solaris OS.


  13. Si vous configurez un groupe de périphériques Solstice DiskSuite ou Solaris Volume Manager répliqués, définissez la propriété de réplication du groupe de périphériques.


    phys-schost# cldevicegroup sync device-group-name
    

    Pour plus d'informations sur la réplication de données, reportez-vous au Chapitre 4, Data Replication Approaches du Sun Cluster System Administration Guide for Solaris OS.

  14. Vérifiez l'état du nouveau jeu de disques.


    phys-schost# metaset -s setname
    
  15. Définissez les propriétés du groupe de périphériques si nécessaire.


    phys-schost# cldevicegroup set -p name=value devicegroup
    
    -p

    Indique une propriété de groupe de périphériques.

    nom

    Indique le nom d'une propriété.

    valeur

    Indique la valeur ou le paramètre de la propriété.

    devicegroup

    Indique le nom du groupe de périphériques. Le nom du groupe de périphériques est identique à celui du jeu de disques.

    Reportez-vous à la page de manuel cldevicegroup(1CL) pour plus d'informations sur les propriétés de groupe de périphériques.


Exemple 4–6 Création d'un jeu de disques

La commande suivante crée deux jeux de disques, dg-schost-1 et dg-schost-2, les nœuds phys-schost-1 et phys-schost-2 étant les primaires potentiels.


phys-schost# metaset -s dg-schost-1 -a -h phys-schost-1 phys-schost-2
phys-schost# metaset -s dg-schost-2 -a -h phys-schost-1 phys-schost-2

Étapes suivantes

Ajoutez des disques au jeu de disques. Reportez-vous à la rubrique Ajout de disques à un jeu de disques.

Ajout de disques à un jeu de disques

Lorsque vous ajoutez un disque à un jeu de disques, le logiciel de gestion des volumes repartitionne le disque comme indiqué ci-dessous, afin que la base de données d'état du jeu de disques puisse être stockée sur le disque.

ProcedureAjout de disques à un jeu de disques

Avant de commencer

Assurez-vous que le jeu de disques a été créé. Pour obtenir plus d'informations, reportez-vous à la rubrique Création d'un jeu de disques.

  1. Prenez le rôle de superutilisateur.

  2. Répertoriez les correspondances DID.


    phys-schost# cldevice show | grep Device
    
    • Choisissez des disques partagés par les nœuds du cluster qui seront maîtres, ou potentiellement maîtres, du jeu de disques.

    • Utilisez le nom de périphérique DID complet, présenté sous la forme /dev/did/rdsk/dN, lorsque vous ajoutez un lecteur à un jeu de disques.

    Dans l'exemple suivant, les entrées du périphérique DID /dev/did/rdsk/d3 indiquent que le lecteur est partagé par phys-schost-1 et phys-schost-2.


    === DID Device Instances ===
    DID Device Name:                                /dev/did/rdsk/d1
      Full Device Path:                               phys-schost-1:/dev/rdsk/c0t0d0
    DID Device Name:                                /dev/did/rdsk/d2
      Full Device Path:                               phys-schost-1:/dev/rdsk/c0t6d0
    DID Device Name:                                /dev/did/rdsk/d3
      Full Device Path:                               phys-schost-1:/dev/rdsk/c1t1d0
      Full Device Path:                               phys-schost-2:/dev/rdsk/c1t1d0
    …
  3. Devenez propriétaire du jeu de disques.


    phys-schost# cldegivegroup switch -n node devicegroup
    
    -n node

    Indique le nœud propriétaire du groupe de périphériques.

    devicegroup

    Indique le nom du groupe de périphériques, qui est identique au nom du jeu de disques.

  4. Ajoutez les disques au jeu de disques.

    Utilisez le nom de chemin DID complet.


    phys-schost# metaset -s setname -a /dev/did/rdsk/dN
    
    -s nom_jeu

    Indique le nom du jeu de disques, qui est identique au nom du groupe de périphériques.

    -a

    Ajoute le disque au jeu de disques.


    Remarque –

    n'utilisez pas le nom de périphérique de niveau inférieur (cNtXdY) lors de l'ajout d'un disque à un jeu de disques. Le nom de périphérique de niveau inférieur étant local, et non unique sur le cluster, son utilisation risque d'empêcher la commutation du méta-ensemble.


  5. Vérifiez l'état des disques et du jeu de disques.


    phys-schost# metaset -s setname
    

Exemple 4–7 Ajout de disques à un jeu de disques

La commande metaset ajoute les disques /dev/did/rdsk/d1 et /dev/did/rdsk/d2 au jeu de disques dg-schost-1.


phys-schost# metaset -s dg-schost-1 -a /dev/did/rdsk/d1 /dev/did/rdsk/d2

Étapes suivantes

Pour repartitionner des disques à utiliser dans les volumes, reportez-vous à la rubrique Modification des partitions de disques dans un jeu de disques.

Sinon, reportez-vous à la rubrique Création d'un fichier md.tab pour définir des métapériphériques ou des volumes par l'intermédiaire d'un fichier md.tab.

ProcedureModification des partitions de disques dans un jeu de disques

La commande metaset(1M) modifie les partitions de disques d'un jeu afin de réserver une petite partie de chacun des disques pour le logiciel Solaris Volume Manager. La tranche 7 est utilisée dans des périphériques sommaire du volume (VTOC). La tranche 6 est utilisée dans des périphériques EFI (Extensible Firmware Interface) (EFI). L'espace restant de chaque lecteur est placé dans la tranche 0. Pour mieux utiliser le lecteur, suivez cette procédure afin de modifier la disposition du disque. Si vous allouez de l'espace aux tranches 1 à 6 pour VTOC ou 1 à 5 pour EFI, vous pouvez utiliser ces tranches lors de la configuration de volumes Solaris Volume Manager.

  1. Prenez le rôle de superutilisateur.

  2. Utilisez la commande format pour modifier les partitions de chacun des disques du jeu.

    Lorsque vous repartitionnez un lecteur, vous devez respecter les conditions suivantes afin d'éviter que la commande metaset(1M) ne repartitionne le lecteur.

    • Créez une tranche 7 pour VTOC ou une tranche 6 pour EFI en commençant par le cylindre 0 pour obtenir suffisamment d'espace pour la réplique de base de données d'état. Reportez-vous au guide d'administration de Solaris Volume Manager pour déterminer la taille de la réplique de la base de données d'état requise pour votre version du logiciel de gestion des volumes.

    • Définissez le champ Indicateur de la tranche cible sur wu (lecture-écriture, démontable). Ne le configurez pas en lecture-seule.

    • N'autorisez pas la tranche cible à chevaucher une autre tranche du lecteur.

    Pour obtenir plus d'informations, consultez la page de manuel format(1M).

Étapes suivantes

Définissez les volumes à partir d'un fichier md.tab. Reportez-vous à la rubrique Création d'un fichier md.tab.

ProcedureCréation d'un fichier md.tab

Créez un fichier /etc/lvm/md.tab pour chaque noeud du cluster. Utilisez le fichier md.tab pour définir les volumes Solaris Volume Manager pour les jeux de disques que vous avez créés.


Remarque –

Si vous utilisez des volumes locaux, assurez-vous qu'ils portent des noms différents des DID (ID de périphériques) utilisés pour former les ensembles de disques. Par exemple, si le nom DID /dev/did/dsk/d3 est utilisé dans un jeu de disques, n'utilisez pas le nom /dev/md/dsk/d3 pour un volume local. Cette restriction ne s'applique pas aux volumes partagés, ceux-ci utilisant la convention /dev/md/setname/{r}dsk/d#.


  1. Prenez le rôle de superutilisateur.

  2. Répertoriez les correspondances DID pour les utiliser lors de la création de votre fichier md.tab.

    Dans le fichier md.tab, utilisez les noms de périphériques DID complets au lieu des noms de périphériques de niveau inférieur (cN tXdY). Le nom de périphérique DID se présente sous la forme /dev/did/rdsk/dN.


    phys-schost# cldevice show | grep Device
    

    === DID Device Instances ===
    DID Device Name:                                /dev/did/rdsk/d1
      Full Device Path:                               phys-schost-1:/dev/rdsk/c0t0d0
    DID Device Name:                                /dev/did/rdsk/d2
      Full Device Path:                               phys-schost-1:/dev/rdsk/c0t6d0
    DID Device Name:                                /dev/did/rdsk/d3
      Full Device Path:                               phys-schost-1:/dev/rdsk/c1t1d0
      Full Device Path:                               phys-schost-2:/dev/rdsk/c1t1d0
    …
  3. Créez un fichier /etc/lvm/md.tab et éditez-le avec l'éditeur de texte de votre choix.


    Remarque –

    S'il existe des données sur les disques utilisés pour les sous-miroirs, sauvegardez-les avant toute configuration de volume. Restaurez ensuite les données sur le miroir.


    Pour éviter une possible confusion entre les volumes locaux dans un environnement de cluster, utilisez un plan de dénomination tel que chaque volume local ait un nom unique sur l'ensemble du cluster. Par exemple, pour le nœud 1, choisissez un nom entre d100 et d199. Pour le nœud 2 choisissez entre d200 et d299.

    Pour obtenir plus d'informations sur la création du fichier md.tab, consultez la documentation Solaris Volume Manager et la page de manuel md.tab(4).


Exemple 4–8 Exemple de fichier md.tab

L'exemple de fichier md.tab suivant décrit le jeu de disques appelé dg-schost-1. L'ordre des lignes du fichier md.tab n'a pas d'importance.


dg-schost-1/d0 -m dg-schost-1/d10 dg-schost-1/d20
    dg-schost-1/d10 1 1 /dev/did/rdsk/d1s0
    dg-schost-1/d20 1 1 /dev/did/rdsk/d2s0

L'exemple de fichier md.tab est construit comme suit.

  1. La première ligne désigne le périphérique d0 comme miroir des volumes d10 et d20. L'option -m indique que ce périphérique est un miroir.


    dg-schost-1/d0 -m dg-schost-1/d0 dg-schost-1/d20
  2. La seconde ligne désigne le volume d10, premier sous-miroir de d0, comme miroir à une voie.


    dg-schost-1/d10 1 1 /dev/did/rdsk/d1s0
  3. La troisième ligne désigne le volume d20, second sous-miroir de d0, comme miroir à une voie.


    dg-schost-1/d20 1 1 /dev/did/rdsk/d2s0

Étapes suivantes

Activez les volumes définis dans les fichiers md.tab. Reportez-vous à la rubrique Activation de volumes.

ProcedureActivation de volumes

Suivez cette procédure pour activer des volumes Solaris Volume Manager définis dans les fichiers md.tab.

  1. Prenez le rôle de superutilisateur.

  2. Vérifiez que les fichiers md.tab se trouvent dans le répertoire /etc/lvm.

  3. Assurez-vous que vous êtes propriétaire du jeu de disques sur le nœud sur lequel la commande sera exécutée.

  4. Devenez propriétaire du jeu de disques.


    phys-schost# cldevicegroup switch -n node devicegroup
    
    -n node

    Spécifie le nœud propriétaire.

    devicegroup

    Spécifie le nom du jeu de disques.

  5. Activez les volumes du jeu de disques, définis dans le fichier md.tab.


    phys-schost# metainit -s setname -a
    
    -s nom_jeu

    Spécifie le nom du jeu de disques.

    -a

    Active tous les volumes du fichier md.tab.

  6. Répétez de l'Étape 3 à l'Étape 5 pour chaque jeu de disques du cluster.

    Si nécessaire, exécutez la commande metainit(1M) à partir d'un autre nœud connecté aux disques. Cette étape est obligatoire pour les topologies de paires de cluster, dans lesquelles les disques ne sont pas accessibles par tous les nœuds.

  7. Vérifiez l'état des volumes.


    phys-schost# metastat -s setname
    

    Reportez-vous à la page de manuel metastat(1M) pour obtenir de plus amples informations.

  8. (Facultatif) Capturez les informations de partitionnement du disque pour toute référence ultérieure.


    phys-schost# prtvtoc /dev/rdsk/cNtXdYsZ > filename
    

    Stockez le fichier dans un emplacement extérieur au cluster. Si vous modifiez la configuration du disque, exécutez de nouveau cette commande pour capturer la configuration modifiée. Si un disque est en panne et doit être remplacé, vous pouvez utiliser ces informations pour restaurer la configuration de la partition du disque. Pour de plus amples informations, reportez-vous à la page de manuel prtvtoc(1M).

  9. (Facultatif) Procédez à la sauvegarde de votre configuration de cluster.

    Si vous effectuez une sauvegarde archivée de votre configuration de cluster, vous pourrez la récupérer plus facilement en cas de problème.

    Pour plus d'informations, reportez-vous à la section How to Back Up the Cluster Configuration du Sun Cluster System Administration Guide for Solaris OS.


Exemple 4–9 Activation de volumes dans le fichier md.tab

Dans l'exemple ci-dessous, tous les volumes définis dans le fichier md.tab pour le jeu de disques dg-schost-1 sont activés.


phys-schost# metainit -s dg-schost-1 -a

Étapes suivantes

Si le cluster contient des jeux de disques configurés avec exactement deux baies de disques et deux nœuds, ajoutez des médiateurs à deux chaînes. Reportez-vous à la rubrique Configuration de médiateurs à deux chaînes.

Sinon, passez à la rubrique Création de systèmes de fichiers de cluster pour créer un système de fichiers de cluster.