Problème
Cet article est une référence pour de nombreuses commandes Cluster Server (VCS).
Solution
LLT et GAB
VCS utilise deux composants, LLT et GAB, pour partager des données entre plusieurs systèmes via des réseaux privés.
Ces composants offrent les performances et la fiabilité requises par VCS.
LLT | LLT (Low Latency Transport) fournit des communications rapides, de noyau à noyau, et surveille les connexions réseau. L’administrateur système configure le protocole LLT en créant un fichier de configuration (llttab) qui décrit les systèmes dans le cluster et les liaisons réseau privées entre ces derniers. Le protocole LLT s’exécute dans la couche 2 de la pile réseau. |
GAB | GAB (Group membership and Atomic Broadcast) fournit l’ordre de message global requis pour maintenir un état synchronisé entre les systèmes et surveille les communications entre disques, comme celles requises par l’utilitaire de pulsation de VCS. L’administrateur système configure le pilote GAB en créant un fichier de configuration (gabtab). |
Fichiers LLT et GAB
/etc/llthosts |
Ce fichier est une base de données qui contient une entrée par système, laquelle lie l’ID de système LLT au nom des hôtes. Il est identique sur chaque serveur du cluster. |
/etc/llttab |
Ce fichier contient des informations qui sont déduites pendant l’installation et sont utilisées par l’utilitaire lltconfig. |
/etc/gabtab |
Ce fichier contient les informations nécessaires pour configurer le pilote GAB. Il est utilisé par l’utilitaire gabconfig. |
/etc/VRTSvcs/conf/config/main.cf |
Le fichier de configuration de VCS. Il contient les informations qui définit le cluster et ses systèmes. |
gabdiskconf
|
-i Initialise la région de disque |
gabdiskhb (disques de pulsation)
|
-a Ajoute une ressource de pulsation de disque gab |
gabconfig
|
-c Configure le pilote à utiliser |
Commandes GAB et LLT
Vérifier que les liaisons sont actives pour LLT | lltstat -n |
Sortie détaillée de la commande lltstat | lltstat -nvv | more |
Ouvrir des ports pour LLT | lltstat -p |
Afficher les valeurs des directives de configuration LLT | lltstat -c |
Répertorier les informations sur chaque liaison LLT configurée | lltstat -l |
Répertorier toutes les adresses MAC dans le cluster | lltconfig -a list |
Arrêter l’exécution de LLT | lltconfig -U |
Démarrer LLT | lltconfig -c |
Vérifier que GAB fonctionne | gabconfig -a Remarque : le port a indique que GAB communique, le port h indique que VCS a démarré |
Arrêter l’exécution de GAB | gabconfig -U |
Démarrer GAB | gabconfig -c -n <nombre de nœuds> |
Remplacer les valeurs de départ dans le fichier gabtab | gabconfig -c -x |
Adhésion de port GAB
Répertorier les adhésions | gabconfig -a |
Annuler l’enregistrement du port f | /opt/VRTS/bin/fsclustadm cfsdeinit |
Fonction des ports | a Pilote GAB b Isolation E/S (conçue pour garantir l’intégrité des données) d ODM (Oracle Disk Manager) f CFS (Cluster File System) h VCS (Veritas Cluster Server : démon à haute disponibilité) o Pilote VCSMM (module de noyau nécessaire pour l’interface entre Oracle et VCS) q Démon QuickLog v CVM (Cluster Volume Manager) w vxconfigd (module pour CVM) |
Démons de cluster
Démon à haute disponibilité | had |
Démon compagnon | hashadow |
Démon d’agent de ressource | Agent |
Démon de gestion de cluster de console Web | CmdServer |
Fichiers journaux de cluster
Répertoire de journal | /var/VRTSvcs/log |
Fichier journal principal (fichier journal du moteur) | /var/VRTSvcs/log/engine_A.log |
Démarrage et arrêt du cluster
«-stale » demande au moteur de traiter la configuration locale comme obsolète |
hastart [-stale|-force] |
Mettre le cluster en mode d’exécution à partir d’un état obsolète en utilisant le fichier de configuration d’un serveur donné |
hasys -force |
Arrêter le cluster sur le serveur local. Remarque : cette opération mettra également hors ligne toutes les ressources en cluster. |
hastop -local |
Arrêter le cluster sur le serveur local, mais évacuer (basculer) la ou les applications vers un autre nœud du cluster. |
hastop -local -evacuate |
Arrêter le cluster sur tous les nœuds, mais maintenir les ressources en cluster en ligne. |
hastop -all -force |
État du cluster
Afficher le résumé de cluster | hastatus -summary |
Surveiller le cluster en permanence | hastatus |
Vérifier que le cluster fonctionne | hasys -display |
Détails du cluster
Informations sur un cluster | haclus -display |
Valeur d’un attribut de cluster spécifique | haclus -value |
Modifier un attribut de cluster | haclus -modify |
Activer LinkMonitoring | haclus -enable LinkMonitoring |
Désactiver LinkMonitoring | haclus -disable LinkMonitoring |
Utilisateurs
Ajouter un utilisateur | hauser -add |
Modifier un utilisateur | hauser -update |
Supprimer un utilisateur | hauser -delete |
Afficher tous les utilisateurs | hauser -display |
Opérations sur les systèmes
Ajouter un système au cluster | hasys -add |
Supprimer un système du cluster | hasys -delete |
Modifier les attributs d’un système | hasys -modify |
Répertorier un état du système | hasys -state |
Forcer un système à démarrer | hasys -force |
Afficher les attributs des systèmes | hasys -display [-sys] |
Répertorier tous les systèmes du cluster | hasys -list |
Modifier l’attribut de charge d’un système | hasys -load |
Afficher la valeur d’un ID de nœud d’un système (/etc/llthosts) | hasys -nodeid |
Figer un système (aucune mise hors ligne d’un système, aucune mise en ligne de groupes) | hasys -freeze [-persistent][-evacuate] Remarque : main.cf doit être en mode écriture |
Libérer un système (remettre en ligne les groupes et les ressources) | hasys -unfreeze [-persistent] Remarque : main.cf doit être en mode écriture |
Configuration dynamique
La configuration de VCS doit être en mode lecture/écriture afin d’apporter des modifications. En mode lecture/écriture, si la
configuration devient obsolète, un fichier .stale est créé dans $VCS_CONF/conf/config. Lorsque la configuration repasse
en mode lecture seule, le fichier .stale est supprimé.
Passer la configuration en mode lecture/écriture | haconf -makerw |
Passer la configuration en mode lecture seule | haconf -dump -makero |
Vérifier le mode dans lequel le cluster s’exécute | haclus -display |grep -i 'readonly' 0 = mode écriture |
Vérifier le fichier de configuration | hacf -verify /etc/VRTS/conf/config Remarque : vous pouvez pointer vers n’importe quel répertoire tant qu’il contient main.cf et types.cf |
Convertir un fichier main.cf en commandes de cluster | hacf -cftocmd /etc/VRTS/conf/config -dest /tmp |
Convertir un fichier de commande en un fichier main.cf | hacf -cmdtocf /tmp -dest /etc/VRTS/conf/config |
Groupes de services
Ajouter un groupe de services | haconf -makerw hagrp -add groupw hagrp -modify groupw SystemList sun1 1 sun2 2 hagrp -autoenable groupw -sys sun1 haconf -dump -makero |
Supprimer un groupe de services | haconf -makerw hagrp -delete groupw haconf -dump -makero |
Modifier un groupe de services | haconf -makerw Remarque : utilisez « hagrp -display » pour répertorier les attributs |
Répertorier les groupes de services | hagrp -list |
Répertorier les dépendances de groupes | hagrp -dep |
Répertorier les paramètres d’un groupe | hagrp -display |
Afficher les ressources d’un groupe de services | hagrp -resources |
Afficher l’état actuel du groupe de services | hagrp -state |
Effacer une ressource non persistante défaillante dans un groupe spécifique | hagrp -clear [-sys] |
Modifier la liste de systèmes dans un cluster | # supprimez l’hôte # ajoutez le nouvel hôte (n’oubliez pas d’indiquer sa position) # mettez à jour la liste de démarrage automatique |
Opérations sur les groupes de services
Démarrer un groupe de services et mettre en ligne ses ressources | hagrp -online -sys |
Arrêter un groupe de services et mettre hors ligne ses ressources | hagrp -offline -sys |
Passer un groupe de services d’un système à un autre | hagrp -switch to |
Activer toutes les ressources d’un groupe | hagrp -enableresources |
Désactiver toutes les ressources d’un groupe | hagrp -disableresources |
Figer un groupe (désactiver la mise en ligne et hors ligne) | hagrp -freeze [-persistent] Remarque : utilisez « hagrp -display | grep TFrozen » pour vérifier |
Libérer un groupe de services (activer la mise en ligne et hors ligne) | hagrp -unfreeze [-persistent] Remarque : utilisez « hagrp -display | grep TFrozen » pour vérifier |
Activer un groupe de services. Les groupes activés peuvent uniquement être mis en ligne | haconf -makerw Remarque : pour vérifier, exécutez la commande suivante « hagrp -display | grep Enabled » |
Désactiver un groupe de services. Arrêter la mise en ligne | haconf -makerw Remarque : pour vérifier, exécutez la commande suivante « hagrp -display | grep Enabled » |
Vider un groupe de services et activer l’action corrective | hagrp -flush -sys |
Ressources
Ajouter une ressource | haconf -makerw hares -add appDG DiskGroup groupw hares -modify appDG Enabled 1 hares -modify appDG DiskGroup appdg hares -modify appDG StartVolumes 0 haconf -dump -makero |
Supprimer une ressource | haconf -makerw hares -delete haconf -dump -makero |
Modifier une ressource | haconf -makerw Remarque : pour répertorier les paramètres, exécutez la commande « hares -display » |
Modifier un attribut de ressource pour le rendre global | hares -global |
Modifier un attribut de ressource pour le rendre local | hares -local |
Répertorier les paramètres d’une ressource | hares -display |
Répertorier les ressources | hares -list |
Répertorier les dépendances de ressource | hares -dep |
Opérations sur les ressources
Mettre en ligne une ressource | hares -online [-sys] |
Mettre hors ligne une ressource | hares -offline [-sys] |
Afficher l’état d’une ressource (hors ligne, en ligne, etc.) | hares -state |
Afficher les paramètres d’une ressource | hares -display |
Mettre hors ligne une ressource et propager la commande à ses enfants | hares -offprop -sys |
Demander à un agent de ressource de surveiller immédiatement la ressource | hares -probe -sys |
Effacer une ressource (lance automatiquement la mise en ligne) | hares -clear [-sys] |
Types de ressources
Ajouter un type de ressource | hatype -add <type> |
Supprimer un type de ressource | hatype -delete <type> |
Répertorier tous les types de ressource | hatype -list |
Afficher un type de ressource | hatype -display <type> |
Répertorier un type de ressource spécifique | hatype -resources <type> |
Modifier un attribut de type de ressource spécifique | hatype -value <type> <attr> |
Agents de ressource
Ajouter un agent | pkgadd -d . <package_agent> |
Supprimer un agent | pkgrm <package_agent> |
Modifier un agent | s.o. |
Répertorier tous les agents ha | haagent -list |
Afficher les informations d’exécution des agents, c.-à-d. s’ils ont démarrés, s’ils sont en cours d’exécution, etc. | haagent -display <nom_agent> |
Afficher les erreurs d’agent | haagent -display |grep Faults |
Opérations d’agent de ressource
Démarrer un agent | haagent -start <nom_agent>[-sys] |
Arrêter un agent | haagent -stop <nom_agent>[-sys] |