Aus gegebenen Anlass zeige ich euch heute, wie ihr euren Hyper-V Host, der normalerweise ein Windows 2008 R2 Core sein sollte mit eurer APC UPS ansprechen könnt.
Es gibt von APC ein Tool namens “Powerchute Network Shutdown” was auch für “normale” Server verwendet wird, und von jeder APC UPS mit Netzwerk genutzt werden kann, um übers Netzwerk mehrere Server den “Shutdown” Befehl zu übermitteln. Die Herausforderung hier ist nun das ganze ohne Benutzeroberfläche auf einem Windows Server 2008 R2 Core mit Hyper-V Rolle zu installieren und zu konfigurieren. Los gehts!
1. Schritt (Download der benötigten Komponenten)
Wir benötigen die aktuelle Java Version die hier zu finden ist. http://www.java.com/en/download/manual.jsp
Für Windows Server 2008 R2 benötigen wir die 64bit Version, für Windows Server 2008 (ohne R2) kommt es darauf an ob ihr die 32bit oder 64bit Version gewählt habt.
Und das Tool “PowerChute Network Shutdown v2.2.4 for Windows 2008 Server Core” von APC, welches aktuell in der Version 2.2.4 vorliegt. https://www.apcc.com/tools/download/download.cfm?software_id=DBUE-7X4HWL&family=&part_num=&swfam=&sw_sku=&tsk=
Zum Download ist ein APC Konto notwendig
So das ganze jetzt noch entpacken und zusammen mit Java auf den betroffenen Core Server kopieren. In meinem Beispiel befinden sich die Daten auf Laufwerk “C:\_\UPS”
2. Schritt (Installation und Konfiguration)
Wir wechseln auf unseren Core Server und begeben uns in das soeben gezeigte Verzeichnis.
Als erstes müssen wir Java installieren, dazu rufen wir die “jre-6u21-windows-x64.exe” auf, und klicken uns durch den Assistenten
bis dieser uns den Erfolg bestätigt.
Nachdem Java nun erfolgreich installiert wurde, können wir den Shutdown Client installieren, dazu wechseln wir ins Verzeichnis “pcns224winServerCore” und starten das Setup mit “cscript install.vbs”.
Wer jetzt eine folgende Fehlermeldung erhält “…install.vbs(299, 9): Der Netzwerkpfad wurde nicht gefunden.” muss einen User “APC” anlegen, und und diesen fürs Setup nutzen, mehr dazu hier: http://jpaa-en.apc.com/app/answers/detail/a_id/10679/kw/install.vbs
Wer danach eine Meldung bekommt die folgendes besagt: “This version of PowerChute Network Shutdown does not support Hyper-V. Please consult www.apc.com for the required version of PowerChute Network Shutdown” hat auf seinem Core Server bereits die Hyper-V Rolle installiert. Klingt jetzt jetzt schlimm, ist es aber nicht. Meiner Meinung ist dies eine reine, politische, Entscheidung von APC, aber keine Programmtechnische. Um das ganze zu umgehen, öffnet man die “install.vbs” mit einem geeigneten Editor, wechselt in die Zeile 362, und setzt 2 “ ’ ” um die Abfrage zu deaktivieren.
danach nochmals mit “cscript install.vbs” das Setup starten und schon kann’s weitergehen. Ich erspare mir jetzt die ganzen Screenshots und zeige euch welche Fragen beantwortet werden müssen.
Do you agree to the End User License Agreement? (Yes | No | Show): “Y”
Please enter the PCNS instance number [1|2|3] or press enter to use default value of 1: “1”
Please enter the installation directory or press enter to install to the default directory (C:\Program Files (x86)\APC\PowerChute): “*enter for default*”
Are you sure you want to install PCNS to C:\Program Files (x86)\APC\PowerChute [Y|N]?: “Y”
JRE is not bundled. Please enter your java directory (example: C:\Program Files\java\jre1.5.0_13): ”c:\Program Files\Java\jre6”
Are you sure java directory is c:\Program Files\Java\jre6\ [Y|N]?: “Y”
Are you sure you want to install PowerChute Network Shutdown [Y|N]?: “Y”
Zum Schluss sollte dann noch die Meldung
Completed.
Please run the PCNSConfig.vbs script located within the PCNS installation direct
ory to complete the installation.
erscheinen, danach ist der Client erfolgreich installiert. Dieser muss jetzt noch konfiguriert werden. Dazu wechseln wir ins Installations-Verzeichnis “C:\Program Files (x86)\APC\PowerChute\group1” und führen den Befehl “cscript PCNSConfig.cbs” aus. Jetzt kommen noch ein paar Fragen, dann habens wir gleich geschafft.
[1]: 192.168.10.182
[2]: 192.168.90.182
[3]: 169.254.2.104
[4]: 169.254.165.17
Please select the local host IP address to register [ 1 – 4 ]: 1 (muss bei meherern Netzwerkkarten gew
ählt werden)
Please enter the subnet mask of the local host IP address to register or just press enter key to use default subnet mask [255.255.255.0]: *enter for default*
Configuring PowerChute Network Shutdown …
[1]: Configure for a single UPS device
[2]: Configure for a parallel Silcon UPS / Smart-UPS VT / Galaxy system
[3]: Configure for multiple Smart-UPS or Galaxy devices
[4]: Configure for multiple Symmetra devices
Please select the appropriate configuration type (1) [ 1 – 4 ]: 1 (in den meisten Fällen)
Management Card IP: hier muss die IP eurer UPS rein
Management Card Port # (80): *enter for default*
Administrator User Name: apc
Administrator Password: *password*
Authentication Phrase (default): *enter for default*
Do you wish to register these settings [ Yes | No | Abort ]? “Y”
Do you wish to start the PowerChute Network Shutdown service [ Yes | No ]? “Y”
Configuration completed.
So das wars, jetzt sollten die Clients korrekt registriert sein. Hoffe euch damit geholfen zu haben.
***edit am 09.09.2011*** ANFANG
Da es einige anfragen bzgl. einem Fehler unter Hyper-V Server gab, hier die Lösung. solltet ihr das ganze unter einem Hyper-V Server nutzen wollen, müsst ihr noch zusätzlich 2 Zeilen ausklammern, und zwar such ihr nach folgenden Zeilen und kommentiert die beiden, in Fett gedruckten, Zeilen aus.
If (InStr(strProductName, "2008") > 0) Then
bResult = True
End If
End If
If (bResult <> True) Then
WScript.StdOut.WriteLine strProductName & " is not supported."
CancelInstallation
End If
Set objShell = Nothing
End Sub
***edit am 09.09.2011*** ENDE
lg michael
Hallo und Danke für diese Anleitung.
Du machst ja einen shutdown der hyper-v hosts. Musst du dich um die VMs kümmern? Was ist mit dem cluster?
Dank für einen tipp
Norbert
Hallo Norbert,
die VMs sind so konfiguriert das diese automatisch herunterfahren, wenn der Host abschaltet, und auch wieder starten, wenn dieser wieder hochfährt. Das mit dem Cluster ist auch kein Problem, solange alle Hosts binnen 1-2 Minuten den Shutdown einleiten.
lg
michael
Hallo,
bei mir läuft das Script nicht!
install.vbs(362, 9) Kompilierungsfehler in Microsoft VBScript: Anweisung erwartet
Hallo Benjamin,
hast du alle Voraussetzungen erfüllt? Wie sieht deine Umgebung aus?
Grüße
Java ist installiert und das Script habe ich auch bearbeitet.
Hyper-V 2008R2 Core Installation und Mitgliedsserver in einer Domäne und ja, ich bin als Administrator angemeldet. 😉
Gruß Benjamin
Hallo Benjamin,
hab mir jetzt mein Script angesehen, Zeile 362 ist genau die Stelle die bearbeitet wird, kontrollieren bitte nochmal ob da alles korrekt ist.
Grüße
Also ‘ hat nix gebracht!
Ich habe folgendes eingefügt:
/*WScript.StdOut.WriteLine “This version of PowerChute Network Shutdown does not support Hyper-V. Please consult http://www.apc.com for the required version of PowerChute Network Shutdown.”
Wenn ich ‘ setzte kommt:
Hyper-V Server is not supported.
Installation canceled.
Das kommt aber auch OHNE ‘
Gruß Benjamin
Hallo Benjamin
aufpassen mit den Zeichen du musst ein “
'
” einfügen, nicht ” ´ ” oder ” ` ”und beide Zeilen der IF Bedinung nicht vergessen.
Grüße
Also Zeile 362 und Zeile 363?!
Das Zeichen ist das richtige und es ist in Zeile 362 am Anfang und in Zeile 363 am Anfang!
Richtig?!
Kann du nicht Zeile 361 bis 364 posten?! 😉
Gruß Benjamin
Je genau, beiden Zeilen am Anfang siehe hier:
Sub IsHyperVInstalled ()
Dim bResult
bResult = IsServiceInstalled("vmms")
If (bResult = True) Then
'WScript.StdOut.WriteLine "This version of PowerChute Network Shutdown does not support Hyper-V. Please consult www.apc.com for the required version of PowerChute Network Shutdown."
'CancelInstallation
End If
End Sub
Grüße
Vielen Dank…..aber:
OS: Hyper-V Server
Hyper-V Server is not supported.
Ich weiß nicht mehr weiter….. 🙁
Hallo Benjamin,
kontrollier mal dein Postfach
Grüße
Hallo.
Ich sitze vor dem selben Problem, allerdings ist dieser Server der Hyper-V-Server 2008 R2 ( also kein “echter 2008er” in der Coreversion, sondern der reine HV-Server).
Sowohl im “Program Files x86” als auch im “Program Files” unter APC\PowerChute\group1 ist die PCNSConfig.cbs nicht zu finden.
Verwendet wird die pcns300.
Funktioniert dies nur mit der 2.*-Version?
Mit besten Grüßen
R.Smiatek
Nachtrag:
Ich habe aus der Version 2.* die PCNSConfig.vbs in das Installationsverzeichnis kopiert, es springt kurz ein cmd-Fenster auf, schliesst sich aber direkt danach wieder.
Hallo,
ich habe die Lösung damals mit Benjamin ausgearbeitet, werde die Tage den Artikel ergänzen.
Michael Seidl
Beitrag wurde editiert, um auch auf einem Hyper-V Server zu laufen.
Michael Seidl
D:\pcns>cscript install.vbs
Microsoft (R) Windows Script Host, Version 5.8
Copyright (C) Microsoft Corporation 1996-2001. Alle Rechte vorbehalten.
——————————————————————
PowerChute Network Shutdown v.2.2.3 Installation Script
Copyright American Power Conversion Corporation. 2007
——————————————————————
OS : Hyper-V Server
D:\pcns\install.vbs(261, 5) (null): Der Gruppenname konnte nicht gefunden werden.
Hallo. Gibts eine Idee zu diesem Fehler? Alles andere habe ich wie beschrieben durchgeführt.
Hallo Michael,
hoffe, das Du diese Seite immer noch im Auge hast. Stehe nämlich aktuell vor dem von Dir schon in 2010 beschriebenen Problem, das ich einen Windows 2008 R2 Core mit Hyper-V habe, der nun per PowerChute Network Shutdown sauber herunter gefahren werden soll.
Zwischenzeitlich sind ja einige Tage ins Land gegangen und APC hat einige Neuerungen gebracht. Es gibt PowerChute Network Shutdown nun schon in Version 4.1. Kann diese “einfach so” auf dem Server über das Command-Fenster installiert werden? (hab es noch nicht probiert, daher diese vielleicht dumm klingende Frage)
Auf der Web-Seite von APC findet man die von Dir beschriebene Version 2.2.4 gar nicht (zum Glück geht der von Dir in der Anleitung hinterlegte Link immer noch). Muß tatsächlich noch nach Deiner Anleitung die ältere Version der Software installiert werden?
Bin für jede Hilfestellung dankbar.
Gruß
Martin
Hallo Martin,
danke für dein Kommentar, nur leider bin ich seit diesem Artikel nicht mehr wirklich im HyperV Thema, sondern rein auf der System Center Schiene unterwegs, kann dir somit leider keine Antwort geben.
lg