powermt-Befehle schlagen fehl mit "ERROR: Device Lam claim failed"
Summary: powermt-Befehle schlagen fehl mit "ERROR: Device Lam claim failed"
Symptoms
Dieses spezielle Problem kann nur auftreten, wenn der Server sowohl mit von PowerPath verwalteten als auch mit nicht von PowerPath verwalteten Arrays verbunden ist und Konfigurationsänderungen auf beiden Arrays folgen. In unserem Beispiel wurden einige Clariion-Geräte entfernt, aber das entsprechende Pseudogerät nicht bereinigt. Dann wurde IBM-Speicher hinzugefügt und die Festplatten, die ursprünglich als Pfad zu diesen entfernten Clariion-Geräten verwendet wurden, wurden wiederverwendet, um die neuen IBM-Festplatten zu beschreiben. Dies führte zu diesen falschen Einträgen im ODM
Umgebung:
BS: AIX (beliebige Ausführung)
Dell Software: PowerPath for AIX (beliebige Version)
Nicht-DELL-HW: Festplatten von einem Array, das nicht von PowerPath verwaltet werden kann.
In einer AIX-Umgebung schlagen powermt-Befehle mit "ERROR: Geräte-Lam-Anspruch fehlgeschlagen." Dieser Fehler ist nicht in unserer Referenz für CLI- und Systemmeldungen zur Dell PowerPath-Produktreihe dokumentiert.
Cause
PowerPath meldet diese Meldung, wenn PowerPath nicht ermitteln kann, zu welchem ladbaren Arraymodul (LAM) ein Gerät gehört. Da die PowerPath -Befehle nicht funktionieren, kann das Troubleshooting nur mit Blick auf den ODM durchgeführt werden. Wenn PowerPath nach einem LAM sucht und den entsprechenden LAM nicht finden kann, bedeutet dies, dass ein Pseudogerät mit Einträgen im ODM vorhanden ist, die auf einen Gerätetyp verweisen, der von PowerPath nicht erwartet wird.
In dem Fall, der die Erstellung dieses Artikels verursacht hat, hatten wir Folgendes im ODM:
CuAt: name = "hdiskpower29" attribute = "vpd_map" value = "MF0808C,TM1010C,RL2004C,Z00008X,Z1040780C,SN081083X" type = "V" generic = "" rep = "sl" nls_index = 0
Wenn wir den PdAt für diese Art von Gerät überprüfen, finden wir:
PdAt: uniquetype = "disk/fcp/2145" attribute = "vpd_map" deflt = "MF0808C,TM1010C,RL2004C,Z00008X,Z1040780C,SN081083X" values = "" width = "" type = "V" generic = "" rep = "sl" nls_index = 0
Hierbei handelt es sich weder um eine DELL-Festplatte noch um eine IBM-Festplatte, sondern um eine IBM-Festplatte.
Das Attribut unique_id des Pseudogeräts ermöglicht einen einfacheren Nachweis der Art des Geräts. In unserem Fall hatten wir Folgendes (der tatsächliche Wert wurde geändert, um die Vertraulichkeit zu wahren):
CuAt:
name = "hdiskpower29"
attribute = "unique_id"
value = "33213600507680C80017D3800000000000XXXXXXX4503IBMfcp"
type = "R"
generic = ""
rep = "s"
nls_index = 0
Wenn solche Einträge im ODM vorhanden sind und wenn das Pseudogerät (hier hdiskpower29) in "powermt_custom.xml" referenziert wird, dann kann "powermt config" dem Gerät keinen LAM zuordnen und schlägt fehl, und der andere "powermt"-Befehl schlägt mit dem gleichen Fehler fehl.
Resolution
Da alle "powermt"-Befehle fehlschlagen, ist es nicht möglich, die Datei "powermt_custom.xml" mit einem "powermt save" zu aktualisieren. Das Löschen der Datei "powermt_custom.xml" wäre eine schlechte Idee, da das Risiko besteht, dass die Beziehung zwischen den korrekten Pseudogeräten und den von PowerPath verwalteten Arraygeräten verloren geht.
Die einzige Möglichkeit, das Problem zu beheben, besteht darin, alle Pseudogeräte aus dem ODM zu entfernen, bei denen das Attribut "unique_id" XXXXIBMfcp ist. Anstatt die gefährlichen "odmdelete"-Befehle zu verwenden, wird empfohlen, einfach den Befehl "rmdev -dl <pseudo_device>" zu verwenden.
Hier ist ein Beispiel für die Befehle, die ausgeführt wurden, um die falschen Einträge in unserem Beispiel zu entfernen (jeder Fall ist einzigartig und die folgende Liste ist ein Beispiel):
for i in 29 30 31 32 33 34 39 40 41 42 43 44 45 46 47 48 125 136 137 138 167 168 169 170 171 172 173 216 217 267 522 523 524 525 526 527 do rmdev -dl hdiskpower$i done
Führen Sie nach dieser Bereinigung "powermt config" gefolgt von "powermt save" aus. Zu diesem Zeitpunkt werden möglicherweise auch einige "tote" Pfade (für Pseudogeräte, die ebenfalls aus der Konfiguration entfernt wurden, bei denen die entsprechenden Festplatten jedoch nicht wiederverwendet wurden, um auf nicht von PowerPath verwaltete Festplatten zu verweisen, und die im ODM bei der Überprüfung des Attributs "unique_id" nicht erkannt wurden) in "powermt display" entdeckt. Diese Einträge werden mit dem Befehl "powermt check" bereinigt. Vergessen Sie in einem solchen Fall nicht, nach dieser letzten Bereinigung erneut einen Befehl "powermt save" auszuführen.