Mercurial > dive4elements > gnv-client
diff doc/admin-manual/installation-artifact-server.tex @ 949:11d8cc2deb92 1.0
merged doc/1.0
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Fri, 28 Sep 2012 12:13:58 +0200 |
parents | 3b67f53ff57b |
children | 17c3770e6c63 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/admin-manual/installation-artifact-server.tex Fri Sep 28 12:13:58 2012 +0200 @@ -0,0 +1,137 @@ +\subsection{Artifact-Server} +The Artifact-Server contains the entire business logic of the system. +The server provides a RESTful interface with a XML-based protocol to the +webclient. Technically the server is a standalone java process serving the +REST interface. + +\subsubsection*{Installation} +\label{ref:artifact-server-install} + +Running the server with its own user\footnote{Remark: A group with the +same name is created automatically.}: +\begin{lstlisting} + adduser artifacts +\end{lstlisting} + +Setup and configuring logging: +\begin{lstlisting} + cd /var/log + mkdir artifacts + chmod 770 artifacts + chmod g+s artifacts +\end{lstlisting} + +The log level can be adjusted in the file \verb+ conf/log4j.properties+. +Further information can be found there. + +Integrate software of artifact-server into filesystem: +\begin{lstlisting} + cd /opt + tar xfvj /root/artifact-server-$VERSION.tar.bz2 + ln -s artifact-server-$VERSION artifact-server + cd artifact-server +\end{lstlisting} + +Setting the access rights: +\begin{lstlisting} + bin/setup.sh +\end{lstlisting} + +Configure connection to database: +\begin{lstlisting} + cd /opt/artifact-server + vim conf/arcsdeconnectionpool.properties + + # in conf/arcsdeconnectionpool.properties do: + server=xyz.server.com + username=guest + credentials=XYZ + port=5151 + database=esri_sde +\end{lstlisting} + +Configure address for finding the WMS-Server: +\begin{lstlisting} + cd /opt/artifact-server/ + vim conf/conf.xml + # adapt the address in the element + # artifact-database/gnv/mapserver/server. This is + # the string the server uses to provide an address of the mapserver to enduser. + e.g. http://SERVER/cgi-bin/gnv-wms +\end{lstlisting} + +The artifact server can export and import projects of the user's +parameterizations. In order to protect the server against invalid files, +configure a secret for signing artifacts. + +{\em Hint: If the secret is changed, all files that were created before +are not valid anymore.} + +\begin{lstlisting} + # generate a randomized string, e.g. + cd /opt/artifact-server/ + pwgen -s 30 + # populate the tag artifact-database/export-secret +\end{lstlisting} + +Adapt TCP-port of artifact-server, if the default has to be changed +(default:8181): +\begin{lstlisting} + cd /opt/artifact-server + vim conf/conf.xml + + # in conf/conf.xml edit the element artifact-database/rest-server/port +\end{lstlisting} + +Integrate artifact-server in startup-process of operating system: +\begin{lstlisting} + cp -i /opt/artifact-server/bin/debian/artifact-server /etc/init.d/ + chmod +x /etc/init.d/artifact-server + update-rc.d artifact-server defaults +\end{lstlisting} + +The server can be started and stopped via +\begin{lstlisting} + /etc/init.d/artifact-server {start | stop} +\end{lstlisting} + +The installation of the artifact-server is finished. It can be tested +now. + +\subsubsection*{Test of the Installation} +\label{ref:artifact-server-testing} + Start the server: + \begin{lstlisting} + /etc/init.d/artifact-server start + \end{lstlisting} + + 1. Operating System: Check if the process of the server called "App" + is running: + \begin{lstlisting} + jps + + # Example with list of java processes: + 19252 + 19509 Jps + 19441 App + + cat /var/run/artifact-server + \end{lstlisting} + + Task: Compare the running process numbers. + + 2. Network: Check if the artifact-server opens a TCP-port (default: 8181) + \begin{lstlisting} + netstat -nltp + + # Check for an entry like: + tcp 0 0 127.0.0.1:8181 0.0.0.0:* LISTEN 18648/java + \end{lstlisting} + + 3. Artifact-Server ready for communication with client? + \begin{lstlisting} + curl "http://localhost:8181/factories" | xmllint --format - + \end{lstlisting} + + Task: Check for a XML-document describing possible expert information + systems (FIS)