PowerPath : Désinstallation de PowerPath 5.7 SP1 sur le nœud de cluster où il est indiqué que des migrations sont en attente
Résumé: Cet article explique comment désinstaller PowerPath 5.7 SP1 sur le nœud de cluster sur lequel il est indiqué que des migrations sont en attente.
Symptômes
L’utilisateur a précédemment démarré la configuration des migrations PPME sur le nœud PowerPath 5.7 SPX d’un cluster à deux nœuds, mais a ensuite rencontré certains problèmes et a tenté de désinstaller PowerPath 5.7 SPX. Cette opération a échoué sur le nœud où les commandes PPME ont été exécutées. Un message indique que les migrations sont en attente.
Conformément aux journaux de désinstallation de PowerPath, l’erreur suivante s’affiche :
Action start 11:35:42: CA_CheckPendingClusterMigrations.
MSI (s) (34!90) [11:35:47:258]: PROPERTY CHANGE: Adding PpMigrationPending property. Its value is '1'.
PpCheckPendingClusterMigrations: Entering PpCheckPendingClusterMigrations in C:\Windows\Installer\MSIDD8F.tmp, version 5.7.1.343
PpCheckPendingClusterMigrations: Pending cluster migrations were found
MSI (s) (34:48) [11:35:47:258]: Skipping action: CA_PPMigrationsError (condition is false)
MSI (s) (34:48) [11:35:47:258]: Doing action: CA_PPMigrationsPending
Action ended 11:35:47: CA_CheckPendingClusterMigrations. Return value 1.
MSI (s) (34:48) [11:35:47:258]: Transforming table CustomAction.
MSI (s) (34:48) [11:35:47:258]: Transforming table CustomAction.
MSI (s) (34:48) [11:35:47:258]: Remarque : 1 : 2262 2: CustomAction 3: -2147287038
Action start 11:35:47: CA_PPMigrationsPending.
MSI (s) (34:48) [11:35:48:584]: Produit : EMC PowerPath 5.7 Service Pack 1 (64bit) -- Migration(s) is(are) pending. Cannot uninstall.
MSI (c) (68:8C) [11:35:47:258]: Font created. Charset: Req=0, Ret=0, Font: Req=MS Shell Dlg, Ret=MS Shell Dlg
Migration(s) is(are) pending. Cannot uninstall.
MSI (s) (34:48) [11:35:48:584]: Transforming table InstallExecuteSequence.
MSI (s) (34:48) [11:35:48:584]: Transforming table InstallExecuteSequence.
MSI (s) (34:48) [11:35:48:584]: Doing action: CA_WexExecuteExitActions_OnError
Action ended 11:35:48: CA_PPMigrationsPending. Return value 3.
Les journaux d’audit affichent les entrées suivantes concernant la configuration :
2/6/2014:6:35:25 PM:PPME: Info: handle=1, event=stateChanged, state=setup, cmd=setup, tech=HostCopy, src=harddisk12 (XXXXXXXXXXXX:1B32), tgt=harddisk1 (XXXXXXXXXXXX:2026), clus=PPME Cluster Disk 14
2/6/2014:7:16:31 PM:PPME: Info: handle=2, event=stateChanged, state=setup, cmd=setup, tech=HostCopy, src=harddisk16 (XXXXXXXXXXXX:0537), tgt=harddisk2 (XXXXXXXXXXXX:204A), clus=PPME Cluster Disk 9
« powermig info -all » affiche la sortie suivante :-
C:\Windows\system32>powermig info -all
Hnd Source Target Tech State
1 harddisk?? harddisk?? HostCopy(cl) needsRecovery(cleanup)
2 harddisk?? harddisk?? HostCopy(cl) needsRecovery(cleanup)
La tentative de nettoyage du handle 1 génère l’erreur suivante :-
C:\Windows\system32>powermig cleanup -handle 1
Cleanup migration for handle 1 ? [yes]/no: y
PPME error(7): Needs recovery
La tentative de nettoyage du handle 1 à l’aide de l’option force génère l’erreur suivante :-
C:\Windows\system32>powermig cleanup -handle 1 -force
Cleanup migration for handle 1 ? [yes]/no: y
PPME error(74): Cluster open failed, cluster migration must be initiated from a cluster node
L’utilisation de la commande recover sur le handle 1 renvoie l’erreur suivante :
C:\Windows\system32>powermig recover -handle 1
Recover migration for handle 1 ? [yes]/no: y
PPME error(74): Cluster open failed, cluster migration must be initiated from a cluster node
La commande Powermigcl affiche le résultat suivant et indique que tous les groupes sont non configurés :-
C:\Windows\system32>powermigcl display -all
Group name | Current owner | Status |
================================|=================|===================|
Cluster Group | CH1BAASGSQLA01 | Unconfigured |
Available Storage | CH1BAASGSQLA02 | Unconfigured |
DDServicesGroupCH1 | CH1BAASGSQLA01 | Unconfigured |
SQL Server (BY2BAASGSQL) | BY2BAASGSQLA02 | Unconfigured |
Query commands show the following result:-
Poignée : 2
Source : harddisk?? (1,96 To)
Cible : harddisk?? (1,96 To, thin)
Technologie : HostCopy
État de la migration : needsRecovery(cleanup)
Valeur limite : 0
La tentative d’exécution du nettoyage génère l’erreur suivante :-
C:\Windows\system32>powermig cleanup -handle 2 -force
Cleanup migration for handle 2 ? [yes]/no: y
PPME error(74): Cluster open failed, cluster migration must be initiated from a cluster node
L’utilisateur souhaite nettoyer ces poignées afin de pouvoir désinstaller PowerPath 5.7 SP1 et le réinstaller.
Cause
Le problème est que le nœud de migration contient des informations sur la migration stockée dans la base de données en mode utilisateur (umd). Parmi ces informations est stocké le nom de ressource PPME qui était associé à la migration lors de la configuration (disque de cluster PPME 14 et disque de cluster PPME 9 en conséquence). Lorsque vous tentez de nettoyer la migration, le système tente d’ouvrir la ressource et de vérifier l’état de tous les nœuds. Sachant que la ressource a été supprimée, cette opération échoue.
Si vous exécutez PowerPath 5.7 SP1, ce problème peut être dû à un bogue connu. Ce bogue est le suivant : si vous exécutez la commande powermigcl config avant que les périphériques cibles soient présentés et initialisés sur l’hôte, ppme.dll enregistre un mappage de périphérique incomplet dans umd_dev_conf dans la base de données kmd.
Résolution
PowerPath Migration Enabler copie chaque bloc de la LUN. Cela signifie que lorsque la source et la cible sont synchronisées, elles sont identiques.
Après l’état de validation, la source et la cible ne sont plus synchronisées, mais partagent la même signature/étiquette de disque.
La commande powemig cleanup nettoie le disque source d’origine afin qu’il ne puisse plus être utilisé (efface le secteur 0 où se trouve la signature).
Si vous prenez l’exemple ci-dessous, vous remarquez qu’une paire de périphériques a été nettoyée (même si elle nécessite une récupération) et que l’autre paire est à l’état validé.
Ne désinstallez pas PowerPath dans cet état, car des signatures identiques sont toujours sur la poignée 5 (harddisk7 et harddisk9) et un redémarrage entraînerait des problèmes avec le cluster.
Il est préférable de supprimer les périphériques sources d’origine de tous les nœuds de cette configuration afin qu’il n’y ait aucun risque de confondre le serveur sur le disque à utiliser dans le cluster. Cela peut nécessiter la suppression de zones ou de périphériques des groupes de stockage. Si certains périphériques ne sont toujours pas validés, ne les supprimez pas.
Si toutes les poignées ont été nettoyées, il n’est pas nécessaire de supprimer les périphériques sources, sauf si vous le souhaitez.
POWERMIG INFO -ALL
Hnd Source Target Tech State
1 harddisk3 harddisk15 HostCopy(cl) needsRecovery(cleanup)
5 harddisk7 harddisk9 HostCopy(cl) committed
Une fois les périphériques sources supprimés, procédez comme suit :
1. Supprimez manuellement toutes les dépendances entre la ressource PPME et la ressource de disque de cluster dans le cluster de basculement. Consultez également le groupe Stockage disponible pour voir s’il a également été converti.
3. Basculez tous les groupes de clusters vers un autre nœud.
4. Arrêtez le service de cluster sur le nœud où powermig affiche les migrations.
5. Désinstallez PowerPath 5.7 SPX et redémarrez le serveur.
Si la désinstallation échoue et affiche que les migrations sont toujours en cours, veuillez contacter EMC pour connaître les étapes manuelles à suivre afin de nettoyer la base de données PowerPath.
6. Installez PowerPath 5.7 SPX. et redémarrez le serveur.