Mercurial > dive4elements > river
view artifacts/doc/installation_de.rst @ 7458:b2e167f193d7
run_geo.sh: allow logging as documented.
author | Tom Gottfried <tom.gottfried@intevation.de> |
---|---|
date | Tue, 29 Oct 2013 18:57:40 +0100 |
parents | d9488ca6090b |
children | 9cf5fd49837a |
line wrap: on
line source
================= FLYS Installation ================= Übersicht --------- Dieses Dokument beschreibt die Installation des Fachdienstes FLYS. Abgehandelt werden die Installation der Server-Anwendung (D4E-River), der Web-Anwendung, die Einrichtung der Datenbanken sowie die Einrichtung des Moin-Wikis. Als Basis dient ein SUSE Linux Enterprise Server in Version 11.2. .. contents:: Inhalt .. raw:: pdf PageBreak Vorbereitung des Systems --------------------------- Die Vorbereitung des Systems ist als Root auf dem Zielsystem durchzuführen. #. Hinzufügen des OBS Repositorys von Intevation:: zypper addrepo -f \ http://download.opensuse.org/repositories/home:/intevation:/bfg/ SLE_11_SP1/home:intevation:bfg.repo #. Installieren der benötigten Pakete:: zypper install python-devel python-setuptools libxslt-devel libxml2-devel \ mozilla-nss-devel apache2 tomcat6 java-1_6_0-ibm libgeos0 netcdf \ proj xerces-c FastCGI php MyODBC-unixODBC posgresql-libs #. Anlegen der Logger Gruppe:: gropadd flys_log #. Anlegen des Flys Nutzers:: useradd -G users,flys_log,www -m flys #. Tomcat und Apache zur flys_log Gruppe hinzufügen:: usermod -A flys_log tomcat usermod -A flys_log wwwrun #. Logging Verzeichnis anlegen:: mkdir /var/log/flys chgrp flys_log /var/log/flys chmod 775 /var/log/flys #. Betriebsordner anlegen:: mkdir /opt/flys chown flys /opt/flys #. Firewall ausschalten:: SuSEfirewall2 off Der Key-Fingerprint des Intevations Repositorys ist: ``18F8 A017 6DFB 7FD1 22BC 20D6 A73E 24AF BC5A 7BAC`` Nun sollte der weitere Inhalt der beiliegenden CD nach /opt/flys kopiert und dem Benutzer flys zugänglich gemacht werden. .. raw:: pdf PageBreak Oracle Client installieren -------------------------- #. Instantclient entpacken:: cd /opt tar -xf /opt/flys/instantclient_11_2.tar.gz chown -R flys /opt/instantclient_11_2 #. Library loader konfigurieren:: cp /opt/flys/oci.conf /etc/ld.so.conf.d/oci.conf Datenbank initialisieren ------------------------ ``Datenbank erstellen`` ~~~~~~~~~~~~~~~~~~~~~~~ Das Erstellen der Datenbank sollte vom zuständigen DB-Admin bereits durchgeführt worden sein. Wichtig ist insbesondere, dass der Nutzer Zugriff auf die Spatial-Tabellen besitzt. Im folgenden ein Beispiel:: --CREATE TABLESPACE for user CREATE TABLESPACE "flys3" DATAFILE '/u01/app/oracle/oradata/XE/flys3.dbf' SIZE 500M AUTOEXTEND ON NEXT 100M MAXSIZE 1G LOGGING ONLINE PERMANENT BLOCKSIZE 8192 EXTENT MANAGEMENT LOCAL AUTOALLOCATE DEFAULT NOCOMPRESS SEGMENT SPACE MANAGEMENT AUTO; --CREATE USER CREATE USER flys3 IDENTIFIED BY flys3; -- USER SQL ALTER USER flys3 DEFAULT TABLESPACE "flys3" TEMPORARY TABLESPACE "TEMP" ACCOUNT UNLOCK ; -- QUOTA for user on TABLESPACE ALTER USER flys3 QUOTA UNLIMITED ON "flys3"; GRANT ALL on "MDSYS"."ALL_SDO_GEOM_METADATA" to flys3 ; GRANT CREATE SESSION TO flys3 ; GRANT CREATE VIEW TO flys3; GRANT CONNECT, RESOURCE TO flys3; ``Schema importieren`` ~~~~~~~~~~~~~~~~~~~~~~ Abweichend von der hier beschriebenen Vorgehensweise kann natürlich ein alternativer Client verwendet werden. Die SQL-Skripte liegen im Unterordner DB-Schema. Wichtig ist, dass die folgenden SQL-Skripte in dieser Reihenfolge und in einer UTF-8 Umgebung ausgeführt werden: #. oracle.sql #. oracle-minfo.sql #. oracle-spatial.sql #. oracle-spatial_idx.sql Mit einem vorhandenen sqlplus unter /opt/instantclient_11_2:: NLS_LANG=.AL32UTF8 /opt/instantclient_11_2/sqlplus <user>/<pass>@<ip>:<port>/<dbname> @oracle.sql @oracle-minfo.sql @oracle-spatial.sql @oracle-spatial_idx.sql ``Schema löschen`` ~~~~~~~~~~~~~~~~~~ Zum Löschen der im Schritt Schema importieren importierten Schemata liegen entsprechende drop Skripte bereit. Diese sollten bei Bedarf in folgender Reihenfolge ausgeführt werden:: #. oracle-drop-spatial.sql #. oracle-drop-minfo.sql #. oracle-drop.sql D4E-River Server Installieren ----------------------------- Neue Versionen des gesamten FLYS Pakets werden üblicherweise als GZIP komprimierter Tarball mit dem Namensschema flys-VERSION.tar.gz zur Verfügung gestellt. Als Beispiel wird hier die Version 3.0.16 angenommen. ``Server entpacken`` ~~~~~~~~~~~~~~~~~~~~ #. Als Nutzer flys einloggen:: su - flys #. Tarball entpacken:: cd /opt/flys tar -xf flys-3.0.16.tar.gz #. Symlink für die aktuelle Version anlegen:: ln -s flys-3.0.16 current ``Server konfigurieren`` ~~~~~~~~~~~~~~~~~~~~~~~~ #. Datenbank-Verbindung: Die externen Datenbanken von Dive4Element River werden in den Dateien server/conf/backend-db.xml und server/conf/seddb-db.xml konfiguriert. In diesen sind Nutzername, Passwort und URL entsprechend den passenden Werten anzupassen. Die URL ist dabei nach folgendem Schema aufgebaut: jdbc:oracle:thin:@//<hostname>:<port>/<backend> Mithilfe des Eintrags:: <connection-init-sqls>ALTER SESSION SET CURRENT_SCHEMA=$SCHEMA;</connection-init-sqls> kann man den initalen Schema Präfix der Datenbank ändern. Wobei $SCHEMA ein Platzhalter für das zu verwendende Schema ist. z.B.:: <connection-init-sqls>ALTER SESSION SET CURRENT_SCHEMA=SEDDB;</connection-init-sqls> #. URL für Kartendienste Sollte der Host-Name des neuen Servers nicht flys3-devel.bafg.de lauten, muss man noch die entsprechenden Verweise auf den Kartendienst anpassen:: cd /opt/flys/flys-3.0.16/server/conf sed -i s@flys3-devel.bafg.de@<neue_url>@ rivermap.xml floodmap.xml #. URL für das Wiki: Die URL unter welcher das Flys-Wiki erwartet wird ist in server/conf/conf.xml im Eintrag <help-url> konfiguriert. Dies muss auch ggf. auf den neuen Host-Namen angepasst werden. Standard ist: https://flys3-devel.bafg.de/wiki #. Gewässerdaten: Zur Berechnung von Überschwemmungsflächen werden digitale Geländemodelle benötigt. Der Ort an dem diese Daten liegen ist in der Datei server/conf/conf.xml als <dgm-path> zu konfigurieren. z.B.:: <dgm-path>/home/teichmann/gewaesser-final/</dgm-path> ``Server starten`` ~~~~~~~~~~~~~~~~~~ #. Zurück auf root wechseln:: exit #. Startskript hinterlegen:: cp /opt/flys/d4e-river /etc/init.d chmod u+x /etc/init.d/d4e-river cd /etc/init.d/rc3.d ln -s ../d4e-river S10d4e-river ln -s ../d4e-river K10d4e-river cd /etc/init.d/rc5.d ln -s ../d4e-river S10d4e-river ln -s ../d4e-river K10d4e-river #. Server starten:: /etc/init.d/d4e-river start Nun kann man sich mit einem Blick in /var/log/server-3.0.16.log vergewissern, dass der Server korrekt gestartet wurde. In diesem Fall wäre die letze Zeile des Logs in der Art:: INFO Standalone - Starting org.dive4elements.artifactdatabase.rest.Standalone HTTP server on localhost:18989 .. raw:: pdf PageBreak Kartendienste einrichten ------------------------ In SuSE Linux Enterprise ist kein Paket für den benötigten Mapserver vorhanden. Dieses muss manuell installiert werden:: cd /opt/flys/mapserver-pakete rpm -i --nodeps *.rpm Ob die Installation erfolgreich war kann man durch Abfrage der Mapserver Version testen:: /srv/www/cgi-bin/mapserv -v Nun können die Kartendienste (river-wms, user-wms) von Flys eingerichtet werden (als root):: cp /opt/flys/*-wms /srv/www/cgi-bin/ chmod a+x /srv/www/cgi-bin/*-wms Apache konfigurieren -------------------- Eine Beispielkonfiguration für den Apache Webserver ist die Datei flys.conf auf der beigelegten CD. Diese kann in das Apache vhosts.d Verzeichnis kopiert werden. In dieser muss ggf. der Redirect für das Geoportal angepasst werden, da in diesem die URL enthalten ist. Apache Konfiguration kopieren:: cp /opt/flys/flys.conf /etc/apache2/vhosts.d /etc/init.d/apache2 reload ``HTTPS einrichten`` ~~~~~~~~~~~~~~~~~~~~ Um verschlüsselten Zugriff über https einzurichten kann man o.g. Konfiguration entsprechend anpassen. Wie dies zu geschehen hat ist der Apache Dokumentation zu entnehmen und soll nicht Teil dieser Anleitung sein. Allerdings ist zu bemerken, dass darauf geachtet werden sollte, es weiterhin zu ermöglichen Kartendienste über http abzurufen. Dies kann man durch einen bedingten Redirect in der Konfiguration des VirtualHosts auf Port 80 erreichen:: RewriteEngine on RewriteCond %{REQUEST_URI} !^/cgi-bin/ RewriteRule (.*) https://flys3-devel.bafg.de/$1 [R=301,L] Web Client Installieren ----------------------- Der Web Client läuft als Tomcat Webapp. Damit Tomcat diesen startet muss der Client nur an die richtige Stelle kopiert werden.:: /etc/init.d/tomcat6 stop cp /opt/flys/flys-3.0.16/client/flys-3.0.16.war /usr/share/tomcat6/webapps /etc/init.d/tomcat6 start Das Neustarten des Tomcat Servers ist hierbei optional, kann aber dazu dienen die Stabilität des Tomcat Servers zu verbessern. Ggf. ist noch der eintrag print-url in der web.xml anzupassen insbesondere wenn man zwischen https und http wechselt. Default ist https. Wiki installieren ----------------- Das Wiki für den Fachdienst Flys ist so konfiguriert, dass es unter /home/flys/wiki erwartet wird. Wiki entpacken:: su - flys cd /home/flys tar -xf /opt/flys/flys-wiki.tar.gz exit Rechte für wwwrun setzen:: cd /home/flys/wiki/moin-2013-02-01/wiki/ chown -R wwwrun data underlay