Vorheriges Thema: Appliance-Kit-Installation Für RedHat- und CentOS-Linux-Verteilungen

Nächstes Thema: IIS03W/IIS03S/IIS03E/IIS03DC: Installationsreferenz


Appliance-Kit-Installation für Windows

Für Windows Server 2003 (32-Bit und 64-Bit) und Windows Server 2008 (32-Bit und 64-Bit).

Dateien
Kompatibilität

Die Versionen "apk-*-windows" sind mit den folgenden Betriebssystem-Distributionen kompatibel:

Um den APK zu installieren, brauchen Sie das Folgende:

Vorbereiten des Image

Die folgenden Schritte können je nach der ursprünglichen Installation des Betriebssystems variieren. Das APK-Setupskript führt diese Schritte nicht aus, deren Ausführung dem Ermessen des Operators obliegt. Einige dieser Schritte erfordern GUI-Zugriff und lassen sich möglicherweise nicht über ein automatisches Skript ausführen. Andere Schritte sind invasiv und können destruktiv sein. Deswegen ist es möglicherweise nicht ratsam, diese Schritte in einem automatisierten Schritt auszuführen.

Überspringen Sie Schritte, die für Sie nicht zutreffend sind.

  1. Deaktivieren Sie alle visuellen Elemente auf dem Desktop (animierte Menüs, Schatten, Verschieben ganzer Fenster usw.), damit der Vorgang über VNC oder über einen Remote-Desktop optimal ausgeführt werden kann.
  2. Deaktivieren Sie den Bildschirmschoner und die Bildschirmsperre.
  3. Legen Sie ein sicheres Kennwort für das Administratorkonto fest.
  4. Deinstallieren oder deaktivieren Sie alle BS-Dienste, die nicht verwendet werden (z. B. Browser-Dienst und Server-Dienst).
  5. Installieren Sie alle Hotfixes über Windows Update (jeder Hotfix erfordert einen eigenen Neustart).

    Hinweis: Wenn die Windows 2008-Updates nicht installiert werden, kann APK fehlschlagen.

  6. Aktivieren Sie "Remoteverwaltung" (mithilfe von Terminal-Diensten) -

    Hinweis: Das Aktivieren der "Remoteverwaltung" unterscheidet sich vom Konfigurieren des Betriebssystems als einen Terminalserver. Das Konfigurieren des Betriebssystems setzt bezahlte Lizenzen für jeden einzelnen Client voraus. Aktivieren Sie "Remoteverwaltung" nur, wenn dies die geplante Verwendung der Installation ist.

  7. Konfigurieren Sie das Netzwerk mit einer öffentlich zugreifbaren IP-Adresse. Sie können jetzt die verbleibenden Schritte mithilfe des Remote Desktops ausführen.
  8. Installieren Sie CygWin (www.cygwin.com). Führen Sie die Installation als Administrator aus, und wählen Sie aus, dass die Installation für alle Benutzer ausgeführt werden soll. Fügen Sie mindestens das folgende Element dem Basissatz von Paketen hinzu: SSH-Server. Konfigurieren Sie den SSHD-Server nicht selbst, sondern lassen Sie APK den SSHD-Server konfigurieren.
  9. Überprüfen Sie, dass die folgenden GNU-Hilfsprogramme installiert sind (sie sollten sich in den Basispaketen befinden, überprüfen Sie dies, und fügen Sie sie hinzu, wenn sie fehlen): "bash", "wget", "gzip" und "tar".
  10. Installieren Sie die XEN-fähigen (paravirtuellen) Gerätetreiber, wenn gewünscht. Bei Verwendung von PV-Treibern empfehlen wir, dass Sie Windows nach dem Installieren der Treiber, jedoch vor dem Installieren von APK neu starten. Überprüfen Sie, dass die PV-Treiber normal funktionieren.

Hinweis: Für die Mindestinstallation von Windows 2003 werden mehr als 1 GB Festplattenspeicher benötigt. Für die vollständige Installation von Windows 2008 werden fast 8 GB benötigt (weniger für den Server Core). Lassen Sie ausreichend Festplattenspeicher für die Installation von CygWin und den Windows Update-Hotfixes frei. (Denken Sie daran, dass Windows ALLE Vorgängerversionen der binären Dateien beibehält, die durch die Hotfixe ersetzt werden.) Überprüfen Sie, dass mindestens 5 bis 10 MB an freiem Speicherplatz für die Installation des APKs zur Verfügung steht und zusätzlicher Speicherplatz für Protokolldateien, temporäre Dateien usw. vorhanden ist.

Installieren von APK

Installieren Sie den APK auf einem Live-System. Sie können den APK nicht für Windows in ein geladenes BS-Disk-Image installieren, das nicht tatsächlich ausgeführt wird. Verwenden Sie für beste Ergebnisse ein Betriebssystem-Image mit konfiguriertem externem Netzwerkzugriff, und melden Sie sich mithilfe eines Remote-Desktop-Clients von Ihrem gewünschten Betriebssystem (z. B. "rdesktop") an. Dies ergibt bessere interaktive Operationen als mit VNC zu sehen, um den HVM-Emulator-Videobildschirm anzuzeigen.

  1. Melden Sie sich als Administrator an, und öffnen Sie eine CygWin-Shell.
  2. Kopieren Sie die APK-Dateien in das Verzeichnis "/tmp".
  3. Ändern Sie das CygWin-Stammverzeichnis (/), und entpacken Sie das APK-Binärarchiv im Stammverzeichnis. Beispiel:
    cd / gtar -zxf tmp/apk-2.0.10-windows.tar.gz 
    
  4. Führen Sie das Installationsskript aus:
    bash tmp/apk-install 
    

Dies sollte ohne Fehlermeldungen abgeschlossen werden. Wenn Fehlermeldungen auftreten, überprüfen Sie die oben genannten vorbereitenden Schritte, und führen Sie den Vorgang noch einmal durch.

Hinweis: Das Installationsskript darf mehrmals ausgeführt werden, die Installation wird dadurch keinesfalls beschädigt.

Das Setupskript und die APK-Datei-mit der Erweiterung "tar" können wie folgt entfernt werden:

  1. Führen Sie den folgenden Befehl aus:
    rm tmp/apk-install  tmp/apk-*.tar.gz 
    
  2. Fahren Sie das Betriebssystem herunter.

Wenn die Image-Vorbereitung außerhalb eines CA AppLogic-Grids durchgeführt wurde, kann das Image jetzt in ein Grid kopiert und zum Erstellen einer Appliance verwendet werden.

Wenn das Image auf einem Grid als eine neue Betriebssysteminstallation erstellt wurde: Deaktivieren Sie die nicht verwaltete Appliance-Option. Deaktivieren Sie dazu das Kontrollkästchen für den Feldentwicklungscode.

Stellen Sie sicher, dass das Geräteschema auf "hda/hdb/hdc/hdd" für IDE-Treiberdatenträger oder auf "sda/sdb/sdc/sdd" für SCSI-Treiberdatenträger festgelegt ist (im Editor: "Begrenzung ändern", "Allgemein", "Virtualisierungsmodus", "Erweitert").

Wichtige Windows-spezifische Informationen

Dateinamen

Wenn nicht anders angegeben, sind Namen in diesem Dokument im CygWin-Datei-Namespace, der ein Posix-System nachahmt.

Hinweis: Diese Namen können mit ausschließlich mit Cygwin-Hilfsprogrammen verwendet werden. Dies umfasst die APK-Binärdateien ("vme" und "udlparse") und alle systemeigenen Windows-Befehlszeilentools. Die meisten Cygwin-Hilfsprogramme akzeptieren entweder einen CygWin-Namen (Posix) oder einen Windows-Namen (z. B. "C:\Pfad\"), davon ausgenommen sind Namen, die die Zeichenfolge ":" wie in "Computername:Dateiname" enthalten, zum Beispiel "scp", "rsync" und insbesondere "tar". Letzteres kann zum Akzeptieren eines Windows-Namens mit der Option "--force-local" gezwungen werden.

Um einen Dateinamen zwischen den Windows- und Cygwin-Namespaces zu konvertieren, verwenden Sie "cygpath".

windowspath=`cygpath -w /var/applogic/appliance.desc`

Datenträger-Bereitstellungen

Wenn ein Bereitstellungspunkt für Datenträger angegeben wird, verwenden Sie ggf. folgende Namen:

X - ein einzelner Buchstabe (A, B, D–Z) ermöglicht den Datenträgerzugriff als X:\.

X:\ - genauso wie X

C:\dir1\[dir2\...] - ermöglicht den Datenträgerzugriff im angegebenen Unterverzeichnis des Startdateisystems. Falls das Verzeichnis nicht existiert, wird es erstellt.

Hinweis: Es wird nicht empfohlen, APK das Verzeichnis erstellen zu lassen, da die Standardverzeichnisberechtigungen ggf. nicht den gewünschten Berechtigungen entsprechen.

Bei einem Datenträger ohne einen angegebenen Bereitstellungspunkt im Klassen-Deskriptor ignoriert APK den Datenträger, und die Bereitstellungszuweisung in Windows bleibt wie sie ist. In diesem Fall ist jede Bereitstellungspunktzuweisung für diesen Datenträger, die von Windows selbst manuell vorgenommen wird, persistent und hat eine höhere Priorität als die Zuweisung des gleichen Bereitstellungspunkts zu einem anderen Datenträger über dem Klassen-Deskriptor. (Die letztere Zuweisung hat keine Auswirkung, und der Datenträger wird nicht geladen.) Wenn Sie z. B. Folgendes im Klassen-Editor/Ändern-Dialogfeld angegeben haben:

Datenträger 0 -> (Start)
Datenträger 1 -> (keine Bereitstellungszuweisung)
Datenträger 2 -> Z:\ 

Wenn Sie sich dann bei der Appliance anmelden, entfernen Sie "Z" vom "Datenträger 2", und weisen Sie sie dem "Datenträger 1" zu. "Z" ist weiterhin dem "Datenträger 1" bei Neustarts zugewiesen, und die Zuweisung von "Datenträger 2" zu "Z" im Klassen-Deskriptor hat keine Auswirkungen. "Datenträger 2" wird so lange an keiner Stelle geladen, bis "Z" aus dem "Datenträger 1" entfernt oder "Datenträger 2" zu etwas anderem als "Z" zugewiesen wird.

"C:\" wird reserviert und kann für keinen Datenträger als Bereitstellungspunkt zugewiesen werden. Jede Zuweisung für den Startdatenträger wird ignoriert und als auf "C:\" im Appliance-Instanzen-Deskriptor zugewiesen gemeldet.

Verwenden Sie keine Bereitstellungspfade nicht mit Unterverzeichnissen auf einem Laufwerk (außer C:). Wenn Sie dies nicht berücksichtigen, ist Ihre Bereitstellung möglicherweise nicht nutzbar, da sie von der Reihenfolge abhängt, in der die Datenträger geladen werden.

Denken Sie daran, dass mit Windows ein nicht formatierter Datenträger (oder ein formatierter Datenträger mit einem Dateisystem, der von Windows nicht erkannt wird) problemlos bereitgestellt werden kann. Es tritt kein Fehler auf, und es wird keine Warnung angezeigt, wenn die Bereitstellung von APK zugewiesen wird, allerdings schlagen Versuche fehl, auf den Bereitstellungspunkt und auf die Unterpfade zuzugreifen.

Benutzernamen

Das APK-Installationsskript legt den CygWin-Alias für den Administrator als "root" fest. "root" ist deswegen der Benutzername, der von jeder CygWin-Binärdatei erkannt wird, und wird als der aktuelle Benutzername in einer CygWin-Shell und in Verzeichnisauflistungen angezeigt. Mit dieser Einstellung ist ein Zugriff auf die Appliance mithilfe des Remote-Shell-Befehls möglich (3t ssh component-name).

Beachten Sie, dass die Zuordnung zwischen den CygWin-Benutzernamen und Windows-Benutzernamen nicht automatisch erfolgt, sondern in den Dateien "/etc/passwd" und "/etc/group" beschrieben wird, die nicht automatisch aktualisiert werden, wenn Windows-Benutzer hinzugefügt/entfernt werden. CygWin umfasst Hilfsprogramme, um die Dateien "/etc/passwd" und "/etc/group" zu verwalten. Wenn diese Hilfsprogramme verwendet werden, achten Sie darauf, dass die besondere Zuordnung für "root", die von APK erstellt wurde, beibehalten wird, andernfalls ist eine SSH-Anmeldung vom Grid aus nicht mehr möglich.

Anpassen des Appliance-Verhaltens - Schnellreferenz

Appliance-Initialisierungskonfiguration

Wenn die Datei "/etc/sysconfig/applogic_init" vorhanden ist, liest das APK-Initialisierungsskript sie als "shell include"-Skript (mit dem Befehl "."). Die folgenden Parameter können in "/etc/sysconfig/applogic_init" definiert werden:

APK_AUTH_KEY_PATH

Speicherort, an dem der öffentliche Schlüssel für den SSH-Zugriff der Appliance gespeichert wird. Über den Befehl "3t comp shh" wird anhand des entsprechenden privaten Schlüssels eine Verbindung zu Appliances hergestellt. Standard ist "/home/Administrator/.ssh". Wenn eine leere Zeichenfolge festgelegt wird, wird der Schlüssel nirgends gespeichert.
Wenn der angegebene Speicherort eine vorhandene Datei ist, werden der Eigentümer und die Berechtigungen beibehalten. Andernfalls wird die Datei mit "owner root" erstellt.

APK_CONFIG_FILES

Durch Leerzeichen getrennte Liste von Dateien, auf die Appliance-Eigenschaften angewendet werden sollen. Dies ersetzt die angegebene Konfigurationsdateiliste im Dialogfeld "Begrenzung ändern" in der GUI (für Appliances, die nicht APK verwenden). Eine Appliance mit APK verwendet die Liste "APK_CONFIG_FILES", die sich in der Appliance selbst befindet, und nicht die in der GUI angegebene Liste.
Wichtig: Wenn APK auf einer vorhandenen Appliance installiert wird, müssen Sie im Klassen-Deskriptor (mithilfe der GUI des Editors) überprüfen, ob die Konfigurationsdateien vorhanden sind, die sich auf der Registerkarte "Konfigurationsdateien" im Dialogfeld "///Klasse anzeigen" / "Begrenzung ändern" befinden. Übertragen Sie die Liste der Dateien an die Einstellung "APK_CONFIG_FILES" in der Appliance.

APK_HOSTNAME_UPDATE

Wenn dieser Parameter auf "no" festgelegt wird, wird das Standard-Verhalten zum Ändern des Hostnamens (auch bekannt als Computername in Windows) zu einer Zeichenfolge, die vom Instanznamen der Appliance abgeleitet wird, deaktiviert.
Das Deaktivieren der automatischen Hostnamensänderung kann für die Appliances "Virtual Private/Dedicated Server" wünschenswert sein, bei denen der Appliance-Eigentümer alle Aspekte der Konfiguration, einschließlich des Hostnamens, verwaltet.
Hinweis: Wenn APK_HOSTNAME_UPDATE auf "yes" festgelegt wird (oder nicht festgelegt wird), löst die Hostnamensänderung einen Neustart des Betriebssystems aus. Dies tritt beim ersten Start auf oder immer dann, wenn der Instanzname der Appliance geändert und ein Neustart ausgeführt wird. Da dieser Neustart durchgeführt wird, bevor APK einen erfolgreichen Start melden kann, scheint es, als ob die Appliance für den Start doppelt so lange benötigt. Dem Bediener wird im Wartungsmodus in den Details zur Fortschrittsanzeige eine Meldung angezeigt, wenn von APK ein Neustart ausgelöst wurde.

APK_AUTOMOUNT

Wenn dieser Parameter auf "no" festgelegt wird, wird die automatische Zuweisung von Laufwerksbuchstaben oder Bereitstellungspunkten deaktiviert, wie in der Appliance-Klasse angegeben. Dies deaktiviert auch alle Volume-Statusüberprüfungen in APK.

Wichtig! Diese Option muss verwendet werden, wenn die Appliance ein konfiguriertes CD-ROM-Gerät besitzt (indem ein ISO-formatiertes Image als ein virtueller Datenträger zugewiesen wird). Die automatische APK-Bereitstellung funktioniert in dieser bestimmten Kombination nicht, und die Appliance kann nicht gestartet werden.

Wichtig: Die Datei "/etc/sysconfig/applogic_init" wird ausgeführt, bevor Konfigurationsdaten abgerufen oder angewendet werden. Daher kann sich das Skript nicht auf die Anwesenheit der Konfigurationsdateien der Appliance verlassen. Verwenden Sie diese Datei nicht dafür, Initialisierungscode auszuführen, sondern nur für die oben definierten Konfigurationsvariablen.

Beispiel "/etc/sysconfig/applogic_init":

APK_CONFIG_FILES=/etc/httpd/conf.d/myconfig.conf
APK_AUTH_KEY_PATH=/root/.ssh/alternate_keys 

Appliance-Überprüfung nach dem Start

Wenn die Datei "/etc/sysconfig/applogic_appliance" vorhanden ist, liest das APK-Skript "late init" sie als Skript "shell include" (mit dem Befehl "."), nachdem alle anderen Dienste auf der Appliance gestartet wurden. Der Rückgabestatus vom Skript zeigt an, ob die Appliance als richtig gestartet oder fehlgeschlagen betrachtet werden soll. Wenn das Skript eine Meldung in stderr druckt und einen Fehler zurückgibt, wird die Schlusszeile dieser Meldung als Fehlermeldung an den Controller gesandt.

Beispieldatei für die Überprüfung nach dem Start für eine Webserver-Appliance - überprüft, dass der Server läuft und auf "HTTP GET" an die Startseite reagiert:

if ! wget -q -O /dev/null http://localhost/ ; then
echo "start failed - Web server is not responding" >&2
return 1
fi
return 0 

Vermeiden Sie die Verwendung von "/etc/sysconfig/applogic_appliance" als Startskript, um die Appliance-Dienste zu starten. Dies verhindert, dass Ihr Setupformular verwendet oder außerhalb einer Appliance, die APK installiert hat, getestet werden kann.

Wichtig: Windows-spezifischer Hinweis: Im Gegensatz zu den anderen von APK unterstützten Plattformen wird die Datei für die Überprüfung nach dem Start "applogic_appliance" initiiert, nachdem der Windows-SCM (Dienststeuerungs-Manager) alle Dienste geladen hat und NICHT, wenn die Initialisierung abgeschlossen ist. Zusätzlich kompliziert wird die Situation dadurch, dass in Windows 2003/2008 einige Dienste von anderen Diensten mithilfe eines API-Anrufs gestartet werden, statt als eine ausdrückliche Abhängigkeit. (Es kann daher nicht erwartet werden, dass sie darauf warten, dass das automatische Laden der Dienste abgeschlossen ist.) Deswegen muss jeder Code, der zur Datei "/etc/sysconfig/applogic_appliance" hinzugefügt wird, dies berücksichtigen und auf jeden Dienst warten, der überwacht werden muss, falls sie noch nicht initialisiert wurden.