Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
dev:server:eos:service [2021/01/04 13:36] jeroen [Download Time-Out] |
— (current) | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Orbit Enterprise Service ====== | ||
- | |||
- | |||
- | This glossary page bundles all technical information about the Orbit EOS Service and it's including HTTP Web Service. | ||
- | |||
- | <note tip> | ||
- | The " | ||
- | EOS enables corporate management of users, permissions, | ||
- | </ | ||
- | |||
- | ===== Amazon Storage Config ===== | ||
- | |||
- | ===== Azure Storage Config ==== | ||
- | |||
- | ===== Download Time-Out ===== | ||
- | |||
- | Configuration to set URL to connect and download time-out. | ||
- | |||
- | * File : '' | ||
- | * Parameters : | ||
- | * '' | ||
- | * '' | ||
- | * Value : Milliseconds as integer value | ||
- | * Default Value : 60000 | ||
- | |||
- | < | ||
- | urldownloader.timeout.connect | ||
- | urldownloader.timeout.read | ||
- | </ | ||
- | ===== DOX ===== | ||
- | |||
- | ** Desktop Client-Server Communication ** | ||
- | |||
- | The Orbit toolkit is network-neutral. Connectivity requires an IP-resolve system (such as a DNS). The Data Orbit eXchange protocol or shortened " | ||
- | |||
- | DOX requires only 1 port to be accessible from the outside. Firewalls thus need only to open 1 port to allow remote access to an Orbit server system (in contradiction to standard Java RMI connectivity). \\ | ||
- | DOX is a compressed and binary way to do the communication between Orbit Client and Orbit Server in the most secure, simple, and fast way. It has no relation with HTTP or the alikes, but of course, runs over Tcp/Ip. \\ | ||
- | DOX does not influence any other protocol and cannot be hacked. | ||
- | |||
- | All Orbit Products are able to access remote EOS resources and instantly become client/ | ||
- | |||
- | ===== EOS Install ===== | ||
- | |||
- | EOS is a running operating system service and is preferably installed and started using an OS administrator account. The used account must have full permission to read and write into the entire Orbit server installation directory. Read access is required for all resources used by EOS. | ||
- | |||
- | A proper EOS service start, stop and remove are possible as OS administrator using the Orbit shortcuts within the Orbit installation directory : | ||
- | * '' | ||
- | |||
- | ** Stop & Start ** \\ | ||
- | When updating the Orbit Server software or applying hardware maintenance it will be required to stop and restart the Orbit Service. The service needs to be installed before starting and stopped before removing. \\ | ||
- | Use of the Orbit Service shortcuts is recommended at all time, verify successful Service Install, Start, Stop and Remove using the OS Services Management Console. | ||
- | |||
- | ** Multiple instances ** \\ | ||
- | The name of an operating system service supposed to be unique. \\ | ||
- | To install multiple Orbit Services on a single server the Orbit Service Name of the second instance will need to be renamed before installing : | ||
- | * Windows : '' | ||
- | < | ||
- | .. | ||
- | set SERVICE_DISPLAY_NAME=Orbit Enterprise Service 2 | ||
- | set SERVICE_DESCRIPTION=The Orbit application service 2 | ||
- | ... | ||
- | .. // | ||
- | </ | ||
- | |||
- | ===== EOS Logging ===== | ||
- | |||
- | The activity and tasks completed by the EOS service are logged by default into following directory : | ||
- | * '' | ||
- | |||
- | These log files contain only the most recent activity of the EOS service. For reasons of disk space, only 10 files of 8MB each are stored. The most recent log file has no index suffix. | ||
- | |||
- | === Server Configurations === | ||
- | |||
- | Orbit Server configurations are applied at Service Start. To update this configuration the Orbit Service must be stopped and restarted after changing the configurations. | ||
- | |||
- | * '' | ||
- | |||
- | < | ||
- | system.logfile < | ||
- | system.logfile.pagecount 8 | ||
- | system.logfile.pagesize 16 | ||
- | system.logall true | ||
- | </ | ||
- | |||
- | ===== File Access and Permission ===== | ||
- | |||
- | The Orbit EOS service reads all resource requested by Orbit Clients and read & writes configurations as set by the EOS Console. \\ | ||
- | Consequently, | ||
- | |||
- | ** Access to network resources ** \\ | ||
- | Special attention is required regarding file access permissions for the Operating System User running the EOS service. \\ | ||
- | Additional note on Windows, Mapped Network Drives are not available to Operating System Services, use of [[http:// | ||
- | |||
- | When adding resources to EOS, using the [[dev: | ||
- | |||
- | ** Access to system configuration files ** \\ | ||
- | Disk space or file access issues while saving EOS configuration files will result in corrupted configurations and software malfunction. Ensure there is enough disk space and all EOS configuration files are accessible at all times. | ||
- | |||
- | === Server Configurations === | ||
- | |||
- | Orbit EOS Service account settings are applied at Service Install. To update this configuration the Orbit Service must be stopped, removed, updated, re-installed and restarted. Verify the update using the OS Services Management Console. | ||
- | |||
- | * '' | ||
- | |||
- | < | ||
- | set SERVICE_USER=--ServiceUser=< | ||
- | </ | ||
- | |||
- | |||
- | |||
- | |||
- | ===== HTTP Cross Domain Communication ===== | ||
- | |||
- | When embedding and accessing an Orbit Flash WebClient via another server in another domain, cross-domain communication needs to be authorized by the Orbit Publisher HTTP Web Service. \\ | ||
- | This is authorization is required by use of Adobe Flash, more information : | ||
- | * http:// | ||
- | * http:// | ||
- | |||
- | === Server configurations === | ||
- | |||
- | Cross-Domain configurations are applied at loading the Flash WebClient. To update this configuration the Orbit Service doesn' | ||
- | |||
- | * '' | ||
- | |||
- | The example below will authorize all cross domain communication : | ||
- | |||
- | <code html> | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | </ | ||
- | </ | ||
- | |||
- | ===== Http Proxy ===== | ||
- | |||
- | The default configurations for all outgoing HTTP and HTTPS requests can be updated. However, we do advise to use the default operating system proxy settings. | ||
- | |||
- | === Server Configurations === | ||
- | |||
- | Proxy configurations are applied at Service Install. To update this configuration the Orbit Service must be stopped, removed, updated, re-installed, | ||
- | |||
- | Add the following Java VM arguments into : | ||
- | |||
- | * Linux : '' | ||
- | * Windows : '' | ||
- | |||
- | **Set system proxy settings** | ||
- | < | ||
- | -Djava.net.useSystemProxies=true | ||
- | </ | ||
- | |||
- | **Set other proxy settings** \\ | ||
- | Below for https, for http replace " | ||
- | < | ||
- | -Dhttps.proxyHost=0.0.0.0 | ||
- | -Dhttps.proxyPort=0000 | ||
- | -Dhttps.proxyUser=xxx | ||
- | -Dhttps.proxyPassword=xxx | ||
- | </ | ||
- | |||
- | Https example for Linux : \\ | ||
- | < | ||
- | # Java Additional Parameters | ||
- | wrapper.java.additional.1=-Xrs | ||
- | wrapper.java.additional.2=-Djava.awt.headless=true | ||
- | wrapper.java.additional.3=-Dhttps.proxyHost=0.0.0.0 | ||
- | wrapper.java.additional.4=-Dhttps.proxyPort=0000 | ||
- | wrapper.java.additional.5=-Dhttps.proxyUser=xxx | ||
- | wrapper.java.additional.6=-Dhttps.proxyPassword=xxx | ||
- | </ | ||
- | |||
- | When using a proxy that doesn' | ||
- | |||
- | === Client Configurations === | ||
- | |||
- | Orbit desktop client proxy settings are applied on starting the Desktop Client application. | ||
- | |||
- | Add the following Java VM arguments into : | ||
- | * Windows : '' | ||
- | |||
- | < | ||
- | -Dhttp.proxyHost=0.0.0.0 | ||
- | -Dhttp.proxyPort=0000 | ||
- | -Dhttps.proxyHost=0.0.0.0 | ||
- | -Dhttps.proxyPort=0000 | ||
- | </ | ||
- | |||
- | |||
- | ===== HTTP Workthreads ===== | ||
- | |||
- | The default number of concurrent Threads is 32 and a backlog of 64 Tasks. \\ | ||
- | Related to the available Cores the number of concurrent threads and backlog tasks can be increased. | ||
- | |||
- | === Server Configurations === | ||
- | |||
- | Work thread configurations are applied at Service Start. To update this configuration the Orbit Service must be stopped, updated and restarted. | ||
- | |||
- | * '' | ||
- | |||
- | < | ||
- | portserver.HTTP.workthread.count 32 | ||
- | portserver.HTTP.maximum.pending.requests 64 | ||
- | </ | ||
- | |||
- | ===== HTTPS ===== | ||
- | |||
- | ** WebClient - Server communication ** | ||
- | |||
- | The Orbit Publisher includes an HTTP or HTTPS Web Server. One or the other, not both together. Incoming HTTP requests can be redirected to HTTPS services \\ | ||
- | By default, an HTTP Web Service is configured. Below the documentation on how to configure an HTTPS Web Service. | ||
- | |||
- | The Http(s) Web Service is used for Publisher WebClient (" | ||
- | |||
- | === KeyStore File === | ||
- | |||
- | Orbit supports both PKCS 12 and Java KeyStore files. \\ | ||
- | The password-protected KeyStore file must contain your Private Key and full Certificate Chain from Root to Public Domain Certificate. | ||
- | |||
- | Certificate submitting and KeyStore file creation must be completed prior to configuring the Orbit Web Server from HTTP to HTTPS. \\ | ||
- | More information, | ||
- | |||
- | === Server configurations === | ||
- | |||
- | These Web Server configurations are applied at Service Start. To update this configuration the Orbit Service must be stopped, updated and restarted. | ||
- | |||
- | ** KeyStore file ** \\ | ||
- | Copy the KeyStore file '' | ||
- | Supported KeyStore files : .jks, .jceks, .p12, .pks, .pfx | ||
- | |||
- | ** KeyStore file Password ** \\ | ||
- | Add a '' | ||
- | The password can be saved as plain text or scrambled, contact Orbit Support. | ||
- | |||
- | ** HTTPS Service ** \\ | ||
- | Configure the HTTP service to operate in HTTPS mode : | ||
- | * '' | ||
- | |||
- | < | ||
- | Parameter=secure: | ||
- | </ | ||
- | |||
- | ** Port ** \\ | ||
- | In the same '' | ||
- | | ||
- | < | ||
- | Parameter=port: | ||
- | </ | ||
- | |||
- | ===Redirecting from HTTP to HTTPS === | ||
- | |||
- | To redirect an existent from HTTP to HTTPS , the procedure described below must be followed: | ||
- | |||
- | A new folder '' | ||
- | |||
- | * '' | ||
- | |||
- | The folder must containing a '' | ||
- | |||
- | < | ||
- | Services= | ||
- | | ||
- | Name=HttpService80 | ||
- | ClassName=com.orbitgis.toolx.network.interfaces.http.server.HTTPService | ||
- | Parameters= | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | </ | ||
- | |||
- | === Additional configuration consequences === | ||
- | |||
- | For Orbit Publisher EOS-Console users only: | ||
- | * Enable secure cross-domain communication, | ||
- | * Configure geocoding plugins to communicate via secure HTTPS connection to avoid HTTP-HTTPS netwerk security conflicts. \\ See [[180: | ||
- | * Ensure the Publication Server Url is available via HTTPS , see [[dev: | ||
- | |||
- | |||
- | ===== Port Allocation ===== | ||
- | |||
- | By default the EOS service uses TCP port 1100 (DOX), the Orbit Web Service requires port 1111 (HTTP) | ||
- | |||
- | Communication between Client and Server must be available at all times. | ||
- | The default server and port configuration can be changed if required. However, we do advise to use a reverse proxy instead. | ||
- | |||
- | === Server Configurations === | ||
- | |||
- | Port configurations are applied at Service start. To update this configuration the Orbit Service must be stopped, updated, and restarted. \\ | ||
- | Server side Service configuration files : | ||
- | * '' | ||
- | * '' | ||
- | |||
- | === Client Configurations === | ||
- | |||
- | Desktop Client side configuration file : | ||
- | * '' | ||
- | |||
- | ===== Port Logging ===== | ||
- | |||
- | The activity on Dox and HTTP ports can be logged (default " | ||
- | * '' | ||
- | |||
- | === Server Configurations === | ||
- | |||
- | Portserver logging configurations are applied at Service Start. To update this configuration the Orbit Service must be stopped, updated, and restarted. | ||
- | |||
- | * '' | ||
- | |||
- | < | ||
- | portserver.logging.enabled false | ||
- | portserver.logging.interval 10 | ||
- | portserver.logging.location < | ||
- | </ | ||
- | |||
- | ===== Procrun Service ===== | ||
- | |||
- | On Windows Orbit uses the Procrun Service to start and run the EOS Service. \\ | ||
- | The Procrun Service creates by default 2 log files : | ||
- | * '' | ||
- | * '' | ||
- | |||
- | The sum of all these files can become very big and may result in the C:/ partition running out of space. Disable this service logging to avoid a relatively small C partition to run out of space. \\ | ||
- | To disable Procrun logging following server-side configuration file must be updated. | ||
- | |||
- | === Server Configurations === | ||
- | |||
- | Procrun Service configurations are applied at Service Install. To update this configuration the Orbit Service must be stopped, removed, updated, re-installed and restarted.\\ \\ Verify the User Account “Orbit Enterprise Service” before removing the service. Check the service credentials at the “Log On” panel of the Operating System Service “Properties” window. Before restarting the Orbit Service, it is required to change the credentials back to the actual configuration. | ||
- | |||
- | * Windows : '' | ||
- | |||
- | Logging enabled : | ||
- | < | ||
- | --StdOutput=auto | ||
- | --StdError=auto | ||
- | </ | ||
- | |||
- | Logging disabled : | ||
- | < | ||
- | --StdOutput= | ||
- | --StdError= | ||
- | </ | ||
- | |||
- | ===== Test Services ===== | ||
- | |||
- | The availability of the HTTP Web Service or a specific Publication can be verified by requesting respectively the Web Service cross domain configuration or the publication html web page : | ||
- | * ''< | ||
- | * ''< | ||
- | |||
- | A TestService is available to request detailed runtime information about all EOS Services. Optionally a TestMask can be applied. Below the example for " | ||
- | * ''< | ||
- | * ''< | ||
- | |||
- | ===== WMS and WFS Services ===== | ||
- | |||
- | The Orbit EOS server includes the capability to provide OGC compliant WFS (version 1.1.1) and WMS (version 1.1.0) services for EOS Resources. | ||
- | |||
- | More information about the OGC WFS and WMS specifications : | ||
- | * http:// | ||
- | * http:// | ||
- | |||
- | Customization of the Orbit WMS and WFS services can be achieved via the according to configuration.xml file. Next to some service settings and specifications, | ||
- | |||
- | When removing this configuration.xml file : | ||
- | * a default set of service settings and specifications will be used | ||
- | * user authentication will be required at all time | ||
- | * the list of available layers will be set to all dataset for which the user has EOS view permissions | ||
- | |||
- | === Server Configurations === | ||
- | |||
- | WMS and WFS configurations are applied at Service Start. To update this configuration the Orbit Service must be stopped, updated, and restarted. | ||
- | |||
- | * '' | ||
- | * '' | ||
- | |||
- | ** Example for WFS ** \\ | ||
- | This example includes all available tags to configure the Orbit WFS service. | ||
- | |||
- | <code html> | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | </ | ||
- | < | ||
- | < | ||
- | </ | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | </ | ||
- | </ | ||
- | |||
- | ** Example for WMS ** \\ | ||
- | This example includes all available tags to configure the Orbit WMS service. | ||
- | |||
- | <code html> | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | </ | ||
- | < | ||
- | < | ||
- | < | ||
- | </ | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | </ | ||
- | </ | ||
- | |||
- | === Tags === | ||
- | |||
- | For some reason the tags available for WFS and WMS differ, for any explanation see OGC documentation. | ||
- | Some notes about special tags or values used by Orbit : | ||
- | * URLPrefix : <server url>:< | ||
- | * DataSetName : EOS Dataset Registry Name | ||
- | * FixedUsername, | ||
- | * IsMaxFeaturesEnabled : Highly recommended setting to restrict the maximum number of features that can be replied to on a single feature request. | ||
- | ===== Workspace configurations ===== | ||
- | |||
- | As optional server side configuration it is possible to use a dedicated set of configurations for a given service depending on the used Orbit desktop client workspace. | ||
- | |||
- | All server-side service configurations are grouped in the according properties.ini or properties.xml configuration file. It is possible to create a separated " | ||
- | |||
Last modified:: 2021/01/04 13:36