2012-04-13 3 views
0

TL; DR Wie kann ich mithilfe von PowerCLI feststellen, ob EMC PowerPath auf einem ESX-Host installiert ist?So ermitteln Sie, ob EMC PowerPath mit PowerCLI auf einem ESX-Host installiert ist

Ich versuche ein Skript zu schreiben, das eine Hostmaskierungsoperation ausführt, wenn eine LUN von einer Speichergruppe in eine andere verschoben wird. Dies ist erforderlich, um den All Paths Down-Fehler auszugleichen, der aufgrund einer Race-Bedingung in ESX 4.1 auftreten kann. Die Schritte werden in VMWare KB 1015084 und 1009449 beschrieben. Diese Schritte werden für die Verwendung von der Servicekonsole geschrieben. Ich möchte vermeiden, SSH-Aktivität zu scripten und stattdessen das Ganze in Powershell/PowerCLI machen.

In unserer Umgebung verwenden wir EMC PowerPath bei den meisten - aber nicht allen - Hosts. Diese LUN-Maskierung muss nur auf Hosts ausgeführt werden, auf denen PowerPath installiert ist. Daher versuche ich, jeden Host zu testen, um dies festzustellen.

Ich habe mir die Haare ausgezogen, um herauszufinden, wie man das mit PowerCLI macht. Bei Verbindung mit der ESX-Servicekonsole wird der Befehl esxcfg-mpath --list-plugins angezeigt, wenn PowerPath installiert ist. In dem vCenter GUI kann bestimmt werden durch:

Select Host -> Configuration -> Storage Adapters -> Select Adapter -> View Devices -> Examine "Owner" column

Mit get-scsilun in PowerCLI gibt ein Objekt zurück, das alle diese Informationen außer dieser Spalte Besitzer enthält.

Ich bin ratlos. Ich hatte gehofft, dass ein get-esxcli Objekt irgendeine äquivalente Methode hätte, vielleicht in satp oder nmp, aber bis jetzt kann ich nichts finden.

+0

Vielleicht möchten Sie auch die PowerCLI Community-Foren ping: http://communities.vmware.com/community/vmtn/server/ vsphere/automationtools/powercli? view = Diskussionen –

+0

Fertig. Danke für den Zeiger :) – Formica

+0

Jemand bei diesem Forum hat mich auf den richtigen Weg gebracht. Die Antwort lautet: '$ esxcli.corestorage.plugin.list()' – Formica

Antwort

0

Wie bereits angedeutet, werde ich meine eigene Frage beantworten:

Die Antwort lautet: $esxcli.corestorage.plugin.list() wird eine Liste von Plugins auf dem Host installiert zurückzukehren.

0

Um diese Informationen zu erhalten, von PowerCLI 6.5 Sie folgende verwenden:

(Get-ESXCLI -VMHost <host>).Storage.Core.Plugin.List() 
Verwandte Themen