Installing the 52°North Sensor Event Service
Requirements
- Apache Tomcat 6.x or higher (with Java 1.6 or higher)
- PostgreSQL with PostGIS 1.5+ (only needed for certain spatial operation)
Installation Procedure
After
downloading and
installing Apache Tomcat, you simply need to deploy the SES' .war file. You can do this with two distinct approaches:
Copy
Copy the .war to the Tomcat's "webapp" directory (located in
/webapps
). Tomcat may already be started or not.
Manager Webapp
Use the manager webapp provided by the tomcat installation. It is reachable through your browser, e.g.
http://localhost:8080/manager/html. In the "Deploy" section's "WAR file to deploy" subsection choose the downloaded 52n-ses-x.war.
This method is the preferred one as the manager should also be used later on for starting/reloading/stopping the SES.
Installing PostgreSQL + PostGIS (optional)
If you want to use the SES with advanced spatial filtering functionality (filters with buffer, e.g.
DWithin
,
Beyond
) you need to have access to a PostGIS 1.5+ installation. If you already have one running, you may skip to
SensorEventServiceInstallation.
TBD. Please refer to the deprecated
PDF installation guide for instruction on how to install and setup the PostGIS 1.5+ database for the SES.
Configuration
The SES consists of a built-in configuration frontend. It can be accessed via the SES URL subpath
/config
(e.g.
http://localhost:8080/52n-ses-1.1.0/config). It is secured via the
Tomcat authentication mechanism against abuse. If you want to use the config frontend you need to set up a dedicated role ("ses-admins") in the tomcat-users.xml (located in
/conf
). Alternatively, you can edit the configuration file manually. It is located at
/webapps/52n-ses-x/WEB-INF/classes/sesconfig/ses_config.xml
.
Adjust the
tomcat-users.xml
similar to the following markup.
<tomcat-users>
<!-- 52n-ses specifics: add the following three lines (if not already present) to tomcat-users.xml -->
<role rolename="ses-admins"/>
<role rolename="manager-gui"/>x
<user username="ses-admin" password="2asdf3" roles="ses-admins, manager-gui"/>
<!-- END OF 52n-ses specifics -->
</tomcat-users>
|
Once set up (
Tomcat must be restarted if you made changes to
tomcat-users.xml
), you are able to use the configuration frontend.
Parameters and their meaning
There is a bunch of parameters to configure the SES. Details can be found at
SensorEventServiceConfiguration. Nevertheless, the most important parameters are described further on.
Parameter |
Value |
Meaning |
SES_INSTANCE |
http://your-ses.host:port/52n-ses-x/services/Broker |
This parameters has to define the globally available URL of the Service. If the service is only used locally, =http://localhost.../52n-ses-x.y.z/services/Broker = could be sufficient. Be aware that the service can only be reached by posting requests to exactly this URL. |
USE_CONCURRENT_ORDERED_HANDLING |
true / false |
If enabled, the SES ensures the preservation of order of incoming messages. This is useful in scenarios where filtering on patterns of messages is applied which rely on correct message order. Note that activation could slow down message processing when dealing with high data rates (> 100/s) in combination with costly message processing. |
POSTGRES_* |
(varying) |
Parameters to define access to the PostgreSQL/PostGIS database. |
Testing your SES instance
Once you have configured the SES to fit your needs, you can proceed to testing the service. In your browser navigate to the globally known URL of the service (value of
SES_INSTANCE
, see before). You should find a landing page which displays the port types of the SES as well as a status indication at the top of the page. If the status message is highlighted in red, please revise your previous steps in configuring the SES. If you need further help, do not hesitate to get help via the
Sensor Web mailing list.
JMeter testplans
We have bundled a JMeter testplan to get started with the interface communication of the SES. You can find it at the dedicated
52North SES Interface Documentation.
Client testing webapp
tbd