Accéder au contenu France-Français
Accueil HP.com France Produits et Services Support et Pilotes Espaces Comment Acheter
» Contacter HP
Plus d'options
Accueil HP.com France
HP Integrity Virtual Machines A.03.00 : Installation, configuration et administration > Chapitre 11 Utilisation d'HP Serviceguard avec Integrity VM

Configuration Serviceguard sur VM Host

» 

Documentation technique

Manuel complet en PDF
» Documents connexes
» Commentaires
Début du contenu

 » Table des matières

 » Glossaire

 » Index

Les sections suivantes décrivent comment configurer un VM Host en tant que nœud Serviceguard. Dans cette configuration, si l'une des ressources utilisées par un invité échoue sur le système VM Host principal, l'invité bascule vers un système VM Host adoptif, comme illustré à la Figure 11-4.

Figure 11-4 Basculement de machine virtuelle vers un autre membre de cluster

Basculement de machine virtuelle vers un autre membre de cluster

Pour configurer Serviceguard sur l'hôte :

  1. Configurez l'environnement multiserveur Integrity VM, comme décrit dans Section  : « Configuration de l'environnement multiserveur Integrity VM ».

  2. Créez le package Serviceguard, comme décrit dans Section  : « Création d'invités en tant que packages ».

  3. Modifiez les fichiers de configuration de package Serviceguard de façon qu'ils correspondent à votre environnement d'invité, comme décrit dans Section  : « Modifications des fichiers de configuration de package ».

  4. Démarrez le package Serviceguard, comme décrit dans Section  : « Démarrage de l'invité distribué ».

Configuration de l'environnement multiserveur Integrity VM

L'environnement multiserveur Integrity VM procure un environnement intégré lorsque des invités sont configurés en tant que packages Serviceguard. Dans un cluster configuré en tant qu'environnement multiserveur, chaque VM Host est conscient que les invités sont des packages Serviceguard et il accorde le contrôle de ces invités distribués à ServiceGuard.

Par exemple, deux VM Hosts (hôte1 et hôte2) composent un cluster Serviceguard. Un invité exécuté sur hôte1 est configuré en tant que package Serviceguard qui peut basculer vers hôte2. Après avoir configuré l'environnement multiserveur, vous pouvez utiliser la commande hpvmstatus sur chaque VM Host pour afficher des informations d'états de packages invités cohérentes. Lorsque le package invité s'exécute sur hôte1, vous pouvez utiliser la commande hpvmstatus sur hôte2 pour afficher l'état actuel de l'invité.

Après avoir configuré un invité en tant que package Serviceguard, vous ne pouvez pas utiliser de commandes Integrity VM pour démarrer et arrêter l'invité. Seules les commandes Serviceguard contrôlent l'invité. Cela permet de disposer d'un contrôle cohérent des invités et protège également les banques de support sur disques entiers partagés. Serviceguard garantit un accès exclusif pour le stockage partagé uniquement lorsque les disques sont configurés avec un gestionnaire de volume tel que LVM ou VxVM. L'environnement multiserveur Integrity VM étend cette protection aux banques de support sur disques entiers et empêche tout accès simultané à la même banque de support à partir de plusieurs invités.

L'environnement multiserveur requiert l'exécution de Serviceguard sur le VM Host et vous permet de configurer des invités en tant que packages Serviceguard. Il ne s'applique pas aux configurations dans lesquelles Serviceguard est installé sur l'invité.

Configurez l'environnement multiserveur sur chaque VM Host qui en fait partie, comme suit :

  1. Inscrivez chaque système VM Host qui sera membre de l'environnement multiserveur. Entrez les commandes suivantes sur chaque système VM Host :

    # hpvmdevmgmt -a server:nom_hôte
    # hpvmdevmgmt -m server:nom_hôte:attr:SERVERID=n
    # hpvmdevmgmt -m server:nom_hôte:attr:SERVERADDR=adresse_IP

    Où :

    • nom_hôte est le nom non complet du système VM Host.

    • n est un numéro unique identifiant ce système VM Host dans l'environnement multiserveur. Entrez un numéro compris entre 1 et 255.

    • adresse_IP est l'adresse IP du système VM Host. Utilisez l'adresse IP de la connexion réseau qui sert l'environnement multiserveur.

    Entrez ces commandes sur chaque système VM Host de l'environnement multiserveur, en spécifiant les valeurs appropriées. Par exemple, pour configurer deux nœuds dans l'environnement multiserveur (hôte1 et hôte2), entrez les commandes suivantes sur hôte1 :

    # hpvmdevmgmt -a server:hôte1
    # hpvmdevmgmt -m server:hôte1:attr:SERVERID=1
    # hpvmdevmgmt -m server:hôte1:attr:SERVERADDR=1.2.3.4
    # hpvmdevmgmt -a server:hôte2
    # hpvmdevmgmt -m server:hôte2:attr:SERVERID=2
    # hpvmdevmgmt -m server:hôte2:attr:SERVERADDR=1.2.3.5

    Entrez les mêmes commandes sur hôte2.

  2. Vérifiez l'inscription en entrant la commande suivante sur chaque membre de l'environnement multiserveur :

    # hpvmdevmgmt -l server
    hôte1:CONFIG=SERVER,SERVERADDR=16.116.9.0,SERVERID=1::WWID_NULL
    host2:CONFIG=server,EXIST=NO,DEVTYPE=UNKNOWN,SHARE=NO,SERVERADDR=16.116.8.91,SERVERID=2::WWID_NULL

La liste des serveurs de l'environnement multiserveur doit correspondre à la liste des nœuds mentionnée dans la configuration de cluster Serviceguard.

Création d'invités en tant que packages

Sur le VM Host, créez un fichier de configuration et un script de contrôle de package pour l'invité en appliquant la procédure suivante :

  1. Installez Integrity VM et créez l'invité avec tous les périphériques de stockage virtuels et les vswitches nécessaires. Répétez cette procédure sur chaque nœud de l'environnement multiserveur.

  2. Installez, configurez et exécutez HP Serviceguard sur chaque nœud de l'environnement multiserveur.

  3. Configurez l'environnement multiserveur Integrity VM sur le nœud principal et sur les nœuds secondaires, comme décrit dans Section  : « Configuration de l'environnement multiserveur Integrity VM ».

  4. Démarrez l'invité sur le nœud principal à l'aide de la commande hpvmstart. Utilisez la commande hpvmstatus pour vérifier le nom de l'invité et vous assurer qu'il est en cours d'exécution.

  5. Créez un package Serviceguard en exécutant le script hpvmsg_package à partir de la boîte à outil HP Serviceguard pour Integrity VM, qui est installée dans le répertoire /opt/cmcluster/toolkit/hpvm/ lors de l'installation d'Integrity VM. Spécifiez le nom de l'invité comme argument de la commande, comme suit :

    # /opt/cmcluster/toolkit/hpvm/hpvmsg_package compass1
    
    This is the HP Virtual Machine Serviceguard Toolkit Package Template Creation
    script.
    
    This script will assist the user develop and distribute a set of Serviceguard
    package configuration template files and associated start, stop and monitor scripts.
    
    The templates generated by these scripts will handle many guest configurations,
    but it is only a template and may not be appropriate for your particular
    configuration needs. You are encouraged to review and modify these template
    files as needed for your particular environment.
    
    
    Do you wish to continue? (y/n):y
    
    [Virtual Machine Details]
    Virtual Machine Name VM #  OS Type State     #VCPUs #Devs #Nets Memory  Runsysid
    ==================== ===== ======= ========= ====== ===== ===== ======= ========
    compass1                 1 HPUX    Off            1     5     1  512 MB        0
    [Storage Interface Details]
    Guest                                 Physical
    Device  Adaptor    Bus Dev Ftn Tgt Lun Storage   Device
    ====== ========== === === === === === ========= =========================
    disk   scsi         0   0   0   0   0 disk      /dev/rdsk/c12t0d0
    disk   scsi         0   0   0   1   0 lv        /dev/vgsglvm/rlvol1
    disk   scsi         0   0   0   2   0 file      /hpvm/g1lvm/hpvmnet2
    disk   scsi         0   0   0   3   0 lv        /dev/vx/rdsk/sgvxvm/sgvxvms
    disk   scsi         0   0   0   4   0 file      /hpvm/g1vxvm/hpvmnet2
    disk   scsi         0   0   0   5   0 disk      /dev/rdsk/c12t0d5
    [Network Interface Details]
    Interface Adaptor    Name/Num   Bus Dev Ftn Mac Address
    ========= ========== ========== === === === =================
    vswitch   lan        vswitch2     0   1   0 ea-5c-08-d3-70-f2
    vswitch   lan        vswitch5     0   2   0 f2-c7-0d-09-ac-8f
    vswitch   lan        vswitch6     0   4   0 92-35-ed-1f-6c-67
    
    Would you like to create a failover package for this Virtual Machine summarized above? (y/n):y
    
    Would you like to distribute the package to each cluster member? (y/n):y
    
    The failover package template files for the Virtual Machine were successfully created.

    Le script vous invite à confirmer les actions suivantes :

    • Création d'un package de basculement

    • Distribution du package sur tous les nœuds du cluster

    Répondez aux deux invites en tapant y. Le script hpvm_package crée les fichiers modèles de package de machine virtuelle dans le répertoire etc/cmcluster/nom_invité/ :

    • nom_invité.config

    • nom_invité

    • hpvmsg_ctrl

    • hpvmsg_mon

    • hpvmsg_start

    • hpvmsg_stop

    hpvmsg_package est un utilitaire qui permet de configurer un invité en tant que package Serviceguard. Il utilise le nom d'invité fourni comme argument pour créer et remplir le répertoire /etc/cmcluster/nom_invité/ avec un ensemble de fichiers modèles contenant des paramètres Serviceguard fondamentaux. HP vous conseille d'examiner et de modifier ces fichiers modèles afin de les adapter à votre environnement multiserveur. Pour plus d'informations, voir « Modifications des fichiers de configuration de package » et le manuel Managing Serviceguard.

  6. Arrêtez l'invité à l'aide de la commande de système d'exploitation appropriée, ou utilisez la commande hpvmstop -F sur le système VM Host. (L'invité ayant été configuré en tant que package Serviceguard, l'option —F est nécessaire.) Par exemple :

    # hpvmstop -P nom_invité -F

    En guise d'alternative, entrez la commande suivante sur l'invité :

    # /usr/sbin/shutdown -h now

    Démontez tous les fichiers bandes de support et désactivez tous les volumes logiques LVM ou déportez tous les volumes VxVM utilisés comme banques de support pour les invités.

  7. Vérifiez que le package est configuré correctement en entrant la commande suivante :

    # cmcheckconf -v -C /etc/cmcluster/nom_cluster.config \
    -P /etc/cmcluster/nom_invité/nom_invité.config

    Où :

    • nom_cluster est le nom du cluster Serviceguard.

    • nom_invité est le nom de l'invité.

  8. Mettez à jour et redistribuez les fichiers binaires de configuration dans le répertoire /etc/cmcluster/nom_invité/ sur tous les nœuds du cluster :

    # cmapplyconf -v -C /etc/cmcluster/nom_cluster.config -P /etc/cmcluster/nom_invité/nom_invité.config

    À l'invite de modification de la configuration de cluster, entrez y. Par exemple :

    # cmapplyconf -v -C /etc/cmcluster/cluster1.config  \
    -P /etc/cmcluster/compass1/compass1.config
    
    Checking cluster file: /etc/cmcluster/cluster.config
    Checking nodes ... Done
    Checking existing configuration ... Done
    Gathering configuration information ... Done
    Gathering configuration information ... Done
    Gathering configuration information ..
    Gathering storage information ..
    Found 10 devices on node host1
    Found 10 devices on node host2
    Analysis of 20 devices should take approximately 3 seconds
    0%----10%----20%----30%----40%----50%----60%----70%----80%----90%----100%
    Found 7 volume groups on node charm
    Found 7 volume groups on node clowder
    Analysis of 14 volume groups should take approximately 1 seconds
    0%----10%----20%----30%----40%----50%----60%----70%----80%----90%----100%
    .....
    Gathering Network Configuration ......... Done
    Cluster cluster1 is an existing cluster
    Parsing package file: /etc/cmcluster/compass1/compass1.config.
    Package hpvmnet2 already exists. It will be modified.
    Checking for inconsistencies .. Done
    Cluster cluster1 is an existing cluster
    Maximum configured packages parameter is 10.
    Configuring 3 package(s).
    7 package(s) can be added to this cluster.
    200 access policies can be added to this cluster.
    Modifying configuration on node host1
    Modifying configuration on node host2
    
    Modify the cluster configuration ([y]/n)? y
    Marking/unmarking volume groups for use in the cluster
    0%----10%----20%----30%----40%----50%----60%----70%----80%----90%----100%
    Modifying the cluster configuration for cluster cluster1.
    Modifying node host1 in cluster cluster1.
    Modifying node host2 in cluster cluster1.
    Modifying the package configuration for package compass1.
    Completed the cluster creation.

Si le fichier de configuration de package contient les paramètres appropriés, démarrez le service Serviceguard comme décrit dans Section  : « Démarrage de l'invité distribué ».

Modifications des fichiers de configuration de package

La boîte à outils Serviceguard pour Integrity VM crée des modèles qui fournissent les arguments de base des paramètres Serviceguard. Examinez et modifiez les paramètres Serviceguard en fonction des informations de votre cluster Serviceguard et de celles fournies dans le manuel Managing Serviceguard. Apportez les modifications appropriées aux fichiers nom_invité.config et nom_invité.

Modifiez le fichier de configuration de package afin d'ajouter tout groupe de volumes LVM utilisé par l'invité distribué. Incluez un paramètre VOLUME_GROUP distinct pour chaque groupe de volumes compatible avec le cluster. Ces groupes de volumes seront initialisés avec l'ID de cluster lors de l'utilisation de la commande cmapplyconf.

Démarrage de l'invité distribué

Pour démarrer l'invité distribué, entrez la commande suivante :

# cmrunpkg -v nom_invité

Par exemple, pour démarrer l'invité nommé compass1, entrez la commande suivante :

# cmrunpkg -v compass1
Running package compass1 on node host1.
cmrunpkg  : Successfully started package compass1.
cmrunpkg  : Completed successfully on all packages specified.

Vérifiez que l'invité est sous tension et en cours d'exécution. Utilisez la commande Integrity VM hpvmstatus et la commande Serviceguard cmviewcl pour vérifier l'état. Par exemple :

# hpvmstatus -P compass1
[Virtual Machines]
Virtual Machine Name VM #  OS Type State     #VCPUs #Devs #Nets Memory  Runsysid
==================== ===== ======= ========= ====== ===== ===== ======= ========
compass1                 1 HPUX    On             1     5     1  512 MB        0
#
cmviewcl -v compass1
CLUSTER      STATUS
cluster1     up

  NODE         STATUS       STATE
  host1        up           running

    Network_Parameters:
    INTERFACE    STATUS       PATH                NAME
    PRIMARY      up           0/2/1/0/4/1         lan7
    PRIMARY      up           0/2/1/0/6/1         lan9
    PRIMARY      up           0/5/1/0/7/0         lan6
    STANDBY      up           0/1/2/0             lan1
    STANDBY      up           0/2/1/0/4/0         lan2
    STANDBY      up           0/2/1/0/6/0         lan8
    STANDBY      up           LinkAgg0            lan900
    STANDBY      up           0/0/3/0             lan0

    PACKAGE      STATUS       STATE        AUTO_RUN     NODE
    compass1     up           running      disabled     host1

      Policy_Parameters:
      POLICY_NAME     CONFIGURED_VALUE
      Failover        configured_node
      Failback        manual

      Script_Parameters:
      ITEM       STATUS   MAX_RESTARTS  RESTARTS   NAME
      Service    up                  0         0   host1

      Node_Switching_Parameters:
      NODE_TYPE    STATUS       SWITCHING    NAME
      Primary      up           enabled      host1     (current)
      Alternate    up           enabled      host2

  NODE         STATUS       STATE
  host   2     up           running

    Network_Parameters:
    INTERFACE    STATUS       PATH                NAME
    PRIMARY      up           0/2/1/0/4/1         lan7
    STANDBY      up           0/1/2/0             lan1
    STANDBY      up           0/2/1/0/4/0         lan2
    STANDBY      up           0/2/1/0/6/0         lan8
    STANDBY      up           LinkAgg0            lan900
    PRIMARY      up           0/5/1/0/7/0         lan6
    PRIMARY      up           0/2/1/0/6/1         lan9
    STANDBY      up           0/0/3/0             lan0

Si vous le souhaitez, entrez la commande cmmodpkg pour activer l'exécution automatique et le basculement.

Démarrage du contrôleur de vswitch

Le contrôleur de vswitch est responsable du contrôle des activités du moniteur réseau Serviceguard et du déplacement de la configuration de vswitch, le cas échéant, entre les interfaces réseau principales et de secours. Il ne requiert aucune configuration par l'utilisateur et est installé dans le cadre du produit Integrity VM. Si Serviceguard s'exécute et que des invités distribués sont configurés, le contrôleur de vswitch est démarré automatiquement sur le système VM Host lors de son amorçage. Pour le démarrer manuellement, utilisez la commande suivante :

# /sbin/init.d/vswitchmon start

Pour vérifier que le contrôleur de vswitch s'exécute, entrez la commande suivante :

# ps -ef | grep vswitchmon

Vérification de la capacité de basculement des invités distribués

Pour vérifier que les invités configurés en tant que packages Serviceguard et l'environnement multiserveur fonctionnent correctement, utilisez les commandes suivantes pour effectuer un basculement manuel :

  1. Sur le nœud d'origine (hôte1), vérifiez que le package nommé compass1 s'exécute :

    hôte1# cmviewcl -v -p compass1
  2. Arrêtez le package compass1 sur hôte1 :

    hôte1# cmhaltpkg compass1
    Halting package compass1.
  3. Démarrez le package sur l'autre système VM Host (hôte2) :

    host2# cmrunpkg -n hôte2 compass1
  4. Activez le package :

    hôte2# cmmodpkg -e compass1
  5. Sur le nœud adoptif, vérifiez que le package compass1 a démarré :

    host2# cmviewcl -v -p compass1
  6. Sur le nœud adoptif, vérifiez que l'invité nommé compass1 est activé :

    host2# hpvmstatus -P compass1

Gestion des invités distribués

Pour démarrer, arrêter et contrôler des invités distribués, utilisez les commandes Serviceguard décrites dans cette section. N'utilisez pas les commandes Integrity VM (hpvmstart, hpvmstop et hpvmmigrate) pour gérer des invités distribués.

Démarrage d'invités distribués

Pour démarrer un invité distribué, entrez la commande suivante :

# cmrunpkg nom_invité

Arrêt d'invités distribués

Pour arrêter un invité distribué, entrez la commande suivante :

# cmhaltpkg nom_invité

Contrôle des invités distribués

Pour contrôler l'invité distribué, entrez la commande suivante :

# cmviewcl -v -p nom_invité

Modification d'invités distribués

Vous pouvez modifier les ressources de l'invité distribué à l'aide de la commande hpvmmodify. Toutefois, si vous modifiez l'invité sur un serveur VM Host, vous devez apporter les mêmes modifications sur les autres nœuds de l'environnement multiserveur.

Après avoir modifié des vswitches, des volumes logiques ou des fichiers banques de support utilisés par des invités distribués, assurez-vous que Serviceguard peut continuer à contrôler les invités. Exécutez le script hpvmsg_package et redémarrez les packages invités afin de mettre à jour les informations Serviceguard.

Contrôle des connexions réseau

Le contrôleur vswitch exécute le script vswitchmon sur les VM Hosts de l'environnement multiserveur et contrôle le Gestionnaire réseau Serviceguard en contrôlant le fichier syslog.log. Lorsqu'il détecte que Serviceguard bascule un réseau principal vers un réseau de secours, le contrôleur de vswitch arrête, supprime, crée et amorce le vswitch associé au réseau principal sur le réseau de secours. Une fois le réseau principal restauré, Serviceguard et le contrôleur de vswitch redéplacent le réseau et le vswitch associé vers le réseau principal.

Version imprimable
Respect de la vie privée L'utilisation de ce site implique que vous en acceptez les conditions
© 2007 Hewlett-Packard Development Company, L.P.