iDrac 6 KVM Launcher
iDrac w serwerach takich jak Dell Power Edge R710 ma już swoje lata, i na najnowszej Javie nie chce działać. Dotychczas, można było zainstalować starszą Javę w wersji 7, obniżyć Security w Panelu Starowania, dodać URL do zaufanych i działało.
Ostatnio jednak, przy próbie uruchomienia wirtualnej konsoli serwera, efektem był poniższy komunikat.
Problem prawdopodobnie wynika z aktualizacji iDraca6 do najnowszej wersji 2.92.
Na szczęście jest na to sposób i to nawet całkiem zgrabny i dodatkowo dający coś na kształt launchera dla innych iDraców.
Normalnie, po wybraniu Launch dostajemy plik *.jnlp który musimy otworzyć przy pomocy javaws.exe (Java Web Start). Dodatkowo za każdym razem zmienia się ciąg znaków w nazwie pliku, więc proste skojarzenie tego pliku nie da rezultatu na przyszłość. Trzeba skojarzyć sam plik jnlp z javaws. Na szczęście nigdy więcej już nie trzeba będzie go pobierać ani nawet logować się do iDraca, a zamiast javaws użyjemy zwykłej Javy.
Po ostatnim pobraniu pliku, nie uruchamiamy go a otwieramy przy pomocy dowolnego edytor tekstowego. Wyszukujemy linki do plików avctKVM.jar oraz do kolejnych plików *.jar odpowiadających systemowi na którym chcemy wystartować konsolę. Pobieramy te trzy pliki:
Następnie rozpakowujemy pliki jar dowolnym prgramem do obsługi archiwów (np 7zip, Peazip pod Windows) wydłubując z nich pliki dll. Potrzebujemy:
z avctKVMIOWin64.jar - plik avctKVMIO.dll
z avctVMWin64 - plik avmWinLib.dll
Pliki dll wrzucamy do katalogu lib/ w głównym katalogu Javy a plik avctKVM.jar do głównego katalogu, czyli jeżeli mamy obecnie zainstalowaną Javę np w katalogu: C:\Program Files\Java\jre7
to plik avctKVM.jar wrzucamy tu: C:\Program Files\Java\jre7\
A pliki dll do C:\Program Files\Java\jre7\lib
Na koniec w głównym katalogu tworzymy plik KVM.bat z zawartością:
@echo off
set /P drachost="Host: "
set /p dracuser="Username: "
set "psCommand=powershell -Command "$pword = read-host 'Enter Password' -AsSecureString ; ^
$BSTR=[System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($pword); ^
[System.Runtime.InteropServices.Marshal]::PtrToStringAuto($BSTR)""
for /f "usebackq delims=" %%p in (`%psCommand%`) do set dracpwd=%%p
.\bin\java -cp avctKVM.jar -Djava.library.path=.\lib com.avocent.idrac.kvm.Main ip=%drachost% kmport=5900 vport=5900 user=%dracuser% passwd=%dracpwd% apcp=1 version=2 vmprivilege=true "helpurl=https://%drachost%:443/help/contents.html"
Po uruchomieniu KVM.bat, musimy podać host, użytkownika i hasło:
I po chwili Javowa konsola będzie dostępna: