Specjalnie dla administratorów systemu Windows i specjalistów IT firma Hewlett-Packard wydała niedawno zestaw 110 poleceń cmdlet programu PowerShell, które umożliwiają zdalną konfigurację i zarządzanie interfejsami HP ILO na serwerach HP bezpośrednio z systemów Windows. Ten zestaw poleceń cmdlet jest nazywany HP Skrypty Narzędzia do Windows Powerhell i jest przeznaczony do współpracy z HP iLO 3 i iLO 4. Polecenia cmdlet są zintegrowane w module HPiLOCmdlets i są przeznaczone do:
- Wyszukaj i zeskanuj interfejsy ILO w sieci
- Dostęp do ustawień MOP, w tym ustawień interfejsu, użytkowników MOP, zarządzania energią, dzienników, IML itp..
- Możliwość zarządzania wieloma płytkami iLO jednocześnie
Pobierz tutaj narzędzia do tworzenia skryptów HP dla Windows PowerShell. Wybierz wersję i głębię bitową swojego systemu operacyjnego (Windows 7 SP1, Microsoft Windows 8, Microsoft Windows Server 2008 R2 SP1 i Microsoft Windows Server 2012 / R2 są obsługiwane) i pobierz odpowiedni pakiet (w chwili pisania tego tekstu narzędzia HP Scripting Tools w wersji 1.1 były dostępne na stronie internetowej - 20 marca 2014).
W naszym przykładzie jest to pakiet dla systemu Windows Server 2012 R2 -Z7550-10537-x64.exe (479 KB). Rozpakuj zawartość archiwum do dowolnego folderu i uruchom instalację modułu HP Scripting Tools dla PowerShell (HPiLOCmdlets-x64.msi).
Uwaga. Aby uruchomić polecenia cmdlet na komputerze, musisz zainstalować Microsoft Management Framework 3.0 (zawiera PowerShell 3.0) lub Microsoft Management Framework 4.0 (PowerShell 4.0). W przypadku PoSh 3.0 należy także zainstalować .NET 4.0, w przypadku PoSh 4.0 - NET 4.5.Moduł jest zainstalowany w katalogu C: \ ProgramFiles \ Hewlett-Packard \ PowerShell \ Modules, ale ścieżka do tego katalogu w zmiennej systemowej PSModulePath nie wszedł Tj. Program PowerShell domyślnie nie widzi tego modułu. Popraw to nieporozumienie za pomocą polecenia:
$ env: PSModulePath + = "; $ env: ProgramFiles \ Hewlett-Packard \ PowerShell \ Modules"Wskazówka. Ta zmiana będzie miała zastosowanie tylko do bieżącej sesji PowerShell..
Pełną listę poleceń cmdlet HP PowerShell (110 sztuk) można wyświetlić w następujący sposób:
Get-Command * HP *
Za pomocą tych poleceń cmdlet można uzyskać status i zarządzać wieloma ustawieniami płytki ILO na serwerach HP: w tym zarządzanie zasilaniem, kolejnością rozruchu, diodą sygnalizacyjną (UID), uzyskiwanie informacji o wersji HP ILO, aktualizowanie oprogramowania układowego itp..
Informacje o celu, argumentach i przykładach użycia określonego polecenia cmdlet można uzyskać w następujący sposób:
pomoc -Pełne
Przede wszystkim zapoznajmy się z poleceniem cmdlet, które pozwala odkryć interfejsy HP ILO w sieci. Jako argument może przyjąć konkretny adres IP lub zakres adresów IP:
Find-HPiLO 10.10.20.138
Find-HPiLO 10.10.20.138-141
W naszym przykładzie podczas skanowania zakresu adresów IP znaleźliśmy 3 interfejsy ILO v3 zainstalowane na serwerach HP Proliant DL 360 G7.
Uwaga. Nie można podać nazwy DNS w poleceniu, ponieważ polecenie cmdlet nie obsługuje rozpoznawania nazw.Aby nie podawać za każdym razem, zapiszemy adres IP MOP, nazwę i hasło użytkownika z dostępem do konsoli MOP w odpowiednich zmiennych:
$ srvILO = Find-HPiLO 10.10.20.141 $ nazwa użytkownika = 'Administrator' $ hasło = 'myILOpassw0rd'
Spróbujmy zrozumieć, czy zasilanie serwera jest włączone:
Get-HPiLOHostPower -Server $ srvILO -Username $ nazwa użytkownika -Hasło $ hasło
Jak widzimy, serwer jest włączony (HOST POWER: ON).
Aby wyłączyć serwer HP za pomocą interfejsu ACPI, wykonaj polecenie:
Set-HPiLOHostPower -Server $ srvILO -Username $ nazwa użytkownika -Hasło $ hasło -HostPower „Nie”
Możesz włączyć serwer zdalnie w następujący sposób:
Set-HPiLOHostPower -Server $ srvILO -Username $ nazwa użytkownika -Hasło $ hasło -HostPower „Tak”
Napiszemy mały skrypt, który pobiera parametry z pliku CSV i włącza / wyłącza wszystkie serwery HP z listy.
Plik CSV będzie zawierał adres IP serwera, nazwę użytkownika i hasło oraz żądany status zasilania na serwerze. Format pliku ILO.csv:
Serwer, nazwa użytkownika, hasło, HostPower 10.10.20.160, Administrator, myILOpassw0rd, Tak 10.10.20.162, Administrator, sdILOdsd, Nie
Poniższy skrypt PoSh przejdzie przez plik csv i przeniesie moc wszystkich serwerów do pożądanego stanu:
$ path = ". \ ILO.csv" $ file_csv = Import-Csv $ path $ p_ilo = Set-HPiLOHostPower -Server $ file_csv.Server -Username $ csv.Username '-Password $ file_csv.Password -HostPower $ file_csv.HostPower $ p_ilo | Format-List $ p_ilo = Get-HPiLOHostPower -Server $ file_csv.Server -Username $ file_csv.Username '-Password $ file_csv.Password $ p_ilo | Lista formatów
Teraz spróbujmy zdalnie włączyć wskaźnik UID (niebieski) na serwerze. Najpierw sprawdzamy aktualny status identyfikatora UID wskaźnika:
Get-HPiLOUIDStatus -Server $ srvILO -Username $ nazwa użytkownika -Hasło $ hasło
Włącz to:
Set-HPiLOUIDStatus -Server $ srvILO -Username $ nazwa użytkownika -Hasło $ hasło -UIDControl „Tak”
Następnie spróbuj zmienić kolejność rozruchu serwera HP (Kolejność rozruchu). Uzyskaj informacje o bieżących ustawieniach priorytetu rozruchu:
Get-HPiLOOneTimeBootOrder -Server $ srvILO -Username $ nazwa użytkownika -Hasło $ hasło
Zmień kolejność uruchamiania serwera HP, określając CDROM jako pierwsze urządzenie rozruchowe:
Set-HPiLOOneTimeBootOrder -Server $ srvILO -Username $ nazwa użytkownika -Hasło $ hasło -Urządzenie „CDROM”
Zamontujemy pożądany obraz ISO na wirtualnej płycie CD-ROM:
Mount-HPiLOVirtualMedia -Server $ srvILO -user $ srvILO -pass $ hasło -Device CDROM -ImageURL 'http://hpdlsrv1.winitpro.ru/dir/windows2012r2dtc.iso'
Możesz odmontować obraz ISO w ten sposób:
Dismount-HPiLOVirtualMedia -Server $ srvILO -user $ srvILO -pass $ hasło -Device CDROM
Przebadaliśmy tylko podstawowe przykłady korzystania z modułu HPiLOCmdlets, ale możesz także zobaczyć, w jaki sposób zestaw poleceń cmdlet HP Scripting Tools dla programu PowerShell może uprościć zadania administratora systemu podczas pracy z serwerami HP w celu automatyzacji codziennych zadań.