Vorheriges Thema: Linux Distro-InstallationenNächstes Thema: vme: Ereignis-Generator


Gebräuchliche Linux-Komponenten

Dieser Abschnitt enthält die folgenden Themen:

Anpassen des Appliance-Verhaltens

vme: Ereignis-Generator

Dieses Kapitel enthält folgende Themen:

Anpassen des Appliance-Verhaltens

vme: Ereignis-Generator

Anpassen des Appliance-Verhaltens

Sie können das automatische Verhalten des Systemstartskripts anpassen, um benutzerdefinierte Funktionen für die Appliance bereitzustellen.

Definieren Sie die folgenden Parameter in einer der folgenden Dateien:

/etc/sysconfig/applogic_init

Appliance-Initialisierungskonfiguration

Wenn die Datei "/etc/sysconfig/applogic_init" vorhanden ist, liest das APK-Initialisierungsskript sie als "shell include"-Skript mit dem Befehl ".".

Wichtig: Die Datei "/etc/sysconfig/applogic_init" wird ausgeführt, bevor Konfigurationsdaten abgerufen oder angewandt werden. Daher kann das Skript nicht auf die Anwesenheit von Appliance-Konfigurationsdateien vertrauen. 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 

Folgende Parameter können in jedem Skript 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.

Der Standard ist "/root/.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.

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.

Wenn die Appliance das APK nicht verwendet, ersetzt dies die Konfigurationsdateiliste, die im Dialogfeld "Begrenzung ändern" im Infrastruktur-Editor der GUI angegeben wurde.

Wichtig: Wenn Sie das APK in einer vorhandenen Appliance installieren, überprüfen Sie die Konfigurationsdateien im Klassen-Deskriptor. Der Klassen-Deskriptor befindet sich auf der Registerkarte "Konfigurationsdateien" des Dialogfelds "Begrenzung ändern" im Infrastruktur-Editor. Übertragen Sie die Liste der Dateien an die Einstellung "APK_CONFIG_FILES" in der Appliance.

APK_CONFIG_DNS

Dieser Parameter steuert Aktualisierungen der Systemnamensauflösungskonfiguration.

Werte:

  • yes - Das APK aktualisiert die Systemauflösungskonfiguration (Datei "/etc/resolv.conf" unter Linux und DNS-Einstellungen mithilfe des Befehls "Netsh" unter Windows) mit den auf dem AppLogic-Grid konfigurierten Werten.
  • no - Das APK wird keine Aktualisierungen ausführen.
  • auto - Systemauflösungsaktualisierung wird von dem Tag " ---APK_UNMODIFIED---" in der Datei "/etc/resolv.conf" gesteuert. Das APK aktualisiert die Namensauflösungskonfiguration und überschreibt alle Änderungen, wenn dieses Tag in "/etc/resolv.conf" vorliegt.

APK_HOSTNAME_UPDATE

Wenn Sie diesen Parameter auf "No" setzen, wird das Standardverhalten deaktiviert, bei dem der Hostname oder Computername in eine vom Instanzennamen der Appliance abgeleitete Zeichenfolge geändert wird.

Das Deaktivieren der automatischen Hostnamensänderung kann für die Appliances "Virtual Private" oder "Dedicated Server" wünschenswert sein, bei denen der Appliance-Eigentümer alle Aspekte der Konfiguration, einschließlich des Hostnamens, verwaltet.

Wichtig! Wenn APK_HOSTNAME_UPDATE auf "yes" oder gar nicht festgelegt wird, löst die Hostnamensänderung einen Neustart des Betriebssystems aus. Dies tritt beim ersten Start auf oder immer dann, wenn der Instanzenname 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.

Wenn ein Neustart vom APK ausgelöst wurde, wird eine Meldung über den Wechsel in den Wartungsmodus in den Details des Systemstartfortschritts angezeigt.

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 Kombination nicht, und die Appliance kann nicht gestartet werden.


Appliance-Überprüfung nach dem Start

Wenn die Datei "/etc/sysconfig/applogic_appliance" oder "\aookiguc\config\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 ausgibt und einen Fehler zurückgibt, wird die letzte Zeile dieser Meldung als Fehlermeldung an den Controller gesendet.

Beispieldatei für die Überprüfung nach dem Start für eine Webserver-Appliance. Damit wird ü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 Setup verwendet oder außerhalb einer Appliance, auf der APK installiert ist, getestet wird.

Wichtig: Unter Windows wird die Überprüfung "applogic_appliance" nach dem Start initiiert, nachdem der Windows-SCM (Dienststeuerungs-Manager) alle Dienste geladen hat und NICHT, wenn die Initialisierung abgeschlossen ist. Dies ist anders als bei anderen Plattformen, die vom APK unterstützt werden.

In Windows werden 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 Startüberprüfungscode, der zur Datei "/etc/sysconfig/applogic_appliance" hinzugefügt wird, dies berücksichtigen und auf jeden Dienst warten, der überwacht werden muss, falls er noch nicht initialisiert wurde.