Windows Installation
Gültig ab: EBKuS 4.4.1
Die Software, mit der frühere Versionen von EBKuS auf Windows automatisch installiert wurden, ist inzwischen in die Jahre gekommen. Ab Version 4.4.1 ist nun auch eine automatische Installation mit neuerer Software möglich. Dazu ist eine komplette Neuinstallation erforderlich. Der parallele Betrieb von alter und neuer Software ist nicht möglich.
Inhaltsverzeichnis
Benötigte Software
Alle benötigten Dateien befinden sich auf dem EBKuS FTP-Server in diesem Verzeichnis. Nur die ersten drei müssen manuell heruntergeladen und installiert werden. Die übrigen werden bei Bedarf automatisch heruntergeladen (sofern eine Internetverbindung besteht, ansonsten siehe unten).
Hier findet sich die Software für 64 bit, die ebenfalls funktioniert, aber manuell installiert werden muss, da sie nicht von den Installationsskripten unterstützt wird.
Natürlich muss noch die neueste [EBKuS-Software selbst heruntergeladen werden.
Sonstige Voraussetzungen
- Betriebssystem: Erfolgreich getestet auf Windows 2000 Professional, Windows XP Professional, Windows 7 Professional und Windows Server 2008.
- Die von einer EBKuS-Installation verwendeten Ports dürfen nicht anderweitig verwendete werden:
- Port 443 für den Apache-Webserver mit SSL-Verschlüsselung (kann mit der Konfigurationsvariablen
server_https_port
verändert werden) - Port 80 für den Apache-Webserver ohne SSL-Verschlüsselung (kann mit der Konfigurationsvariablen
server_http_port
verändert werden). Dieser Port wird allerdings von der Anwendung nicht benötigt; man kann damit aber überprüfen, ob der Webserver installiert ist unabhängig von EBKuS-Instanzen. - Port 3306 für den MySQL-Datenbankserver
- Die in der
ebkus.conf
explizit genannten Ports für die EBKuS-Instanzen
- Port 443 für den Apache-Webserver mit SSL-Verschlüsselung (kann mit der Konfigurationsvariablen
- Administratorrechte für die Installation. Insbesondere muss bei neueren Windows-Systemen die Kommandozeile explizit mit Administratorrechten aufgerufen werden (rechtsklicken, mit Administratorrechten ausführen). Sonst gelingt die Einrichtung der Dienste nicht.
- Die von EBKuS verwendeten Namen für Dienste dürfen nicht in Gebrauch sein:
Apache, MySQL
sowie die mitEBKuS
beginnenden Namen für die Instanzen. - Keine Reste in der Registry von früheren Installationsversuchen :-)
I can't believe I've been going for years without kinonwg that.
Nur Erstkonfiguration erzeugen
Die Beispiele gehen davon aus, dass die heruntergeladene EBKuS-Software im Verzeichnis C:\EBKuS-4.4.1
liegt.
Wenn man die Option -c
bzw. --config
des install-py
-Skripts verwendet, wird lediglich die Konfigurationsdatei c:\ebkus_installation\ebkus\ebkus.conf
erzeugt und nichts weiter installiert.
C:\>cd EBKuS-4.4.1 C:\EBKuS-4.4.1>install.py -c c:\ebkus_installation
Die so entstandene c:\ebkus_installation\ebkus\ebkus.conf
kann nun weiter bearbeitet und in der eigentlichen Installation verwendet werden.
Infomration is power and now I'm a !@#$ing dictator.
Installation mit vorhandenem Webserver und Datenbank
Mit
C:\EBKuS-4.4.1>install.py --no_mysql --no_apache c:\ebkus_installation
kann man eine Installation durchführen, wenn Apache und MySQL bereits vorhanden sind und nicht durch die EBKuS-Installation bereitgestellt werden sollen. Das Vorgehen ist dann ähnlich der Linux_Installation. Es muss manuell dafür gesorgt werden, dass die generierte Datei ebkus_httpd.conf
in die Apachekonfiguration eingebunden wird, z.B. durch die Zeile
Include c:\ebkus_installation\ebkus\ebkus_httpd.conf
am Ende der Apache httpd.conf
. Außerdem muss man nach der Installation und der Umkonfigurierung den Webserver manuell neu starten, damit er die neue Konfiguration übernimmt.
Anpassen der Konfiguration
In der Konfigurationsdatei ebkus.conf
gibt es die Systemabschnitte DEFAULT, ebkus, apache
und openssl
sowie je einen Abschnitt für jede zu installierende Instanz.
Dokumentation aller Konfigurationsvariablen siehe Konfiguration.
Systemabschnitte
Im Abschnitt apache
muss für die Variable server_name
der Name angegeben werden, unter dem der Rechner im Netz ansprechbar ist (FQDN), ersatzweise die IP-Adresse. Der Name bzw. die IP-Adresse ist Bestandteil der URL, unter der EBKuS angesprochen wird. Der Standardwert ist hier localhost
, womit EBKuS nur auf dem lokalen Rechner erreichbar wäre.
Falls die Standardports 80 und 443 nicht für EBKuS zur Verfügung stehen, müssen hier alternative freie Ports eingetragen werden. server_http_port
dient nur zur Kontrolle des Apache Webservers (http://localhost/
liefert "It works!"). Falls eine Alternative für server_https_port
eingetragen wird, muss der Port in der URL aufgeführt werden, um die Anwendung anzusprechen.
Des weiteren kann die Email-Adresse des Systemadministrators bei server_admin
eingetragen werden (die evt. auf Fehlerseiten des Servers erscheint). Im Abschnitt openssl
sollten die regionalen und organisatorischen Angaben angepasst werden, da sie auf dem erzeugten Zertifikat erscheinen (das man sich z.B. im Browser ansehen kann).
Sie können ein Passwort setzen für die Datenbankuser root
(der Instanzdatenbanken löschen und erstellen kann):
C:\>cd ebkus_installation\mysql5.1\bin C:\ebkus_installation\mysql5.1\bin>mysqladmin.exe -uroot password Neues Passwort
Dies muss dem Konfigurationsparameter database_admin_password
zugewiesen werden.
Alle anderen Werte in den Systemabschnitten sollten nur in Ausnahmefällen verändert werden.
Instanzen
Der Name des Abschnitts muss identisch sein mit dem Wert der Variablen instance_name
. Der Name muss mit einem Buchstaben beginnen und darf neben Ziffern und Buchstaben nur das Sonderzeichen '_' enthalten.
Mit der Variablen initial_content
kann man einer Instanz eine Datei mit einem Datenbankdump (Sicherungsdatei) zuweisen, mit dem die Instanz initialisiert wird:
initial_content: C:\backup\demo_braunschweig_backup_v4.4.1_2011-06-17_02-10-00.zip
bzw.
initial_content: demo_braunschweig_backup_v4.4.1_2011-06-17_02-10-00.zip
Wenn nur der Dateiname angegeben ist, muss die Datei im Homeverzeichnis liegen (c:\ebkus_installation\ebkus\
).
Damit ist es möglich, eine Instanz aus einer bestehenden Installation in eine Neuinstallation zu migrieren (siehe unten).
Jede Instanz benötigt einen eigenen freien Port (Variable port
).
Installation ohne Internetzugang
Wenn alle Dateien aus diesem Verzeichnis des FTP-Servers in das Verzeichnis c:\ebkus_installation\download
kopiert werden, wird kein Internetzugang benötigt.
Alternativ kann beim ersten Aufruf von install.py
ein Downloadverzeichnis angegeben werden, in dem sich die Installationsdateien befinden müssen:
C:\EBKuS-4.4.1>install.py -d c:\ebkus_download c:\ebkus_installation
Wenn bereits eine ebkus.conf
existiert, wird das in der Variable download_dir
definierte Verzeichnis verwendet und die Option -d
kann entfallen.
Begun, the great itrneent education has.
Einzelne Instanzen
Entfernen
Mit Hilfe des uninstall.py
-Skripts lassen sich auch einzelne Instanzen entfernen.
C:\EBKuS-4.4.1>uninstall.py c:\ebkus_installation Instanzname
Das uninstall.py
-Skript kann auch aus dem Homeverzeichnis aufgerufen werden.
Wichtig: Den Konfigurationsabschnitt der Instanz in der ebkus.conf
erst nach der erfolgreichen Deinstallation entfernen! Sonst ist Handarbeit angesagt.
Hinzufügen
Als erstes muss in der ebkus.conf
ein Abschnitt für die neu zu erstellende Instanz erstellt werden, evt. mit Angabe einer Sicherungsdatei oder eines SQL-Dumps für die Initialisierung der Datenbank der Instanz (Variable initial_content
).
Die Instanz kann dann mit
C:\>cd ebkus_installation\ebkus C:\ebkus_installation\ebkus>configure.py Instanzname
eingerichtet werden.
Wenn keine Datei zur Initialisierung angegeben wird, wird eine Datenbank mit den Standardmerkmalskatalogen und einem evt. konfigurierten Straßenkatalog erstellt. Wenn der Instanzname mit demo
beginnt, werden zusätzlich Demodaten generiert.
Mögliche Probleme
- Windows-Dienste werden nicht automatisch installiert: die Konsole muss als Administrator ausgeführt werden.
- Nicht vollständig deinstallierte Dienste: notfalls mit
sc delete Name
entfernen. Wenn der Name dann trotzdem noch in der Liste der Dienste auftaucht mit dem ZustandDeaktiviert
, muss ein Neustart gemacht werden. - Übrig gebliebene Reste in der Registry von früheren Installationen, z.B. des MySQL-Servers. Diese müssen notfalls manuell beseitigt werden.
- Instanz lässt sich nicht mit Sicherungsdatei initialisieren: Die Sicherungsdatei muss von einer Instanz mit demselben Namen stammen.
- Automatischer Download klappt nicht: Falls der Internetzugang über einen Proxy erfolgt, muss man möglicherweise (ich habs nicht probiert) manuell herunterladen und die Dateien im Downloadverzeichnis ablegen.
- Firefox akzeptiert das von EBKuS gelieferte Zertifikat (wg. doppelter Seriennummer oder so ähnlich): Zertifikate in Firefox löschen über Einstellungen > Erweitert > Zertifikate > Zertifikate anzeigen > Löschen. Die EBKuS-Zertifikate stehen unter dem Namen EFB bzw. unter dem Namen, der in der
ebkus.conf
alsorganisation
(im Abschnittopenssl
) eingetragen wurde.
Tipps
- Das
install.py
-Skript lässt sich wiederholt ausführen. Eine bestehende MySQL- und Apache-Installation wird nicht wiederholt. Vorhandene Instanzdatenbanken bleiben ebenfalls intakt. Evt. neu hinzugekommenen Instanzkonfigurationen werden ausgeführt, d.h. die neue Instanz wird eingerichtet. (Löschen einer Instanz jedoch immer mituninstall.py
!) Alle zu generierenden Dateien werden neu generiert, so dass z.B. auf diese Weise Port-Änderungen oder die Änderung des Servernamens durchgeführt werden können. - Wenn das
install.py
-Skript mit der Option-u
bzw.--update
wiederholt wird, werden zusätzlich alle EBKuS-Dateien aus der Distribution in das Homeverzeichnis kopiert. - Hilfe für alle Skripte erhält man mit der Option
--help
oder kurz-h
:
C:\EBKuS-4.4.1>install.py --help C:\EBKuS-4.4.1>uninstall.py -h C:\ebkus_installation\ebkus>configure.py -h C:\ebkus_installation\ebkus\demo>dienst.py -h
- Falls Änderungen an generierten Dateien nötig sind (z.B. Apache- oder MySQL-Konfiguration) ist es wenig sinnvoll, diese selbst zu verändern, da man dann nicht mehr die Möglichkeit hat, die Installationsskripte zu verwenden. Besser ist is es, die Templates selber anzupassen. Alle Templates (Vorlagen) für generierte Dateien finden sich im Verzeichnis
templates
im Homeverzeichnis.