|Table of Contents|
Many clients wish to know what the hardware and operating system requirements are for a Delft-FEWS live system. On this page you can find a list of specifications. If you have any question about the list, or you do not see the operating system of your choice: please contact us. This list is not exhaustive.
The Operator Client (Gui) is the thick client for end users.
Forecasting Shell Server
The Forecasting Shell Server (FSS) is the server for execution of forecast runs and import tasks. It contains the modelling software and it's operation is controlled by the Master Controller
Master Controller Server
The master controller organises task traffic and scheduling
JMS Server (no longer required in 2017.02 and beyond)
Java Messaging Service (JMS) controls a large part of the communication between the components.
This component can often be installed on the same server as the Master Controller.
This is the central data repository, linked to the master controller. The live system is known to run with the following database versions:
This list is not exhaustive, so contact us if you are thinking of using a different database or a different type.
The Open Archive is an optional component for Delft-FEWS that stores forecast data, performance indicator data and configurations on a longer time scale than in the central database of the Delft-FEWS system.
OpenArchive poses modest requirements to host hardware:
The file system containing archive data:
The webserver is an optional server that hosts and distributes the webpages generated by Delft-FEWS. Hardware requirements depend on the intended use.
This is an optional service which allows SOAP clients to interact with and retrieve data from the Delft-FEWS system. Hardware requirements depend on the intended use. In general it is not recommended to have the PiService on the same machine as the master-controller.
Oracle 12c for Delft-FEWS 2017.02 and later
All activities contribute to resource consumption on a computing box, whether that box is hardware or virtual and Delft-FEWS will consume resources when running.
Scalability, number of servers
The components mentioned above can all be located on one (powerful) server or each on an individual machine, with all possible configurations in between. It is however common practice to separate the Forecasting Shell server from the Master-controller server. When using multiple machines it is essential that all machines have matching clocks. This can be achieved by making use of one and the same ntp server.
A typical configuration is:
Typically in a dual master-controller setup every master-controller has its own machine so that maintenance can take place without offline time.
It is very well possible to deploy the master-controller components / forecasting shells in virtualized environments. The Deltares ICT team has most experience with Delft-FEWS on VMWare VSphere with in-depth knowledge but Delft-FEWS is also known to run on Microsoft Hyper-V. Virtualization of the Delft-FEWS back-end services can generally be done without problems. Take into account that (not Delft-FEWS related) modelling software may have other requirements or limitations with respect to virtualization of the Forecasting Shells.
FEWS can work with grid computing. Especially when working with heavy computations, e.g. ensemble forecasting or 3d hydraulic computing, this can be an interesting option to explore. It is recommended to contact the Delft-FEWS product management beforehand.
Embedded Java JRE software versions and other dependencies
Java JRE versions (from 2018.02)
++++++ provisional text ++++++++
a 'embedded' stripped-down jre (java runtime environment) based on OpenJDK 11. Together with the Delft-FEWS binaries, it forms the Delft-FEWS base-build. The java runtime libraries are placed in an operating system specific sub-folder in the well-known Delft-FEWS bin folder. The jre sub-folders are clearly recognizable under /bin/windows/jre or /bin/linux/jre. This jre can be easily replaced by any other open source or commercially supported version of java 11. Since an Operator Client/Stand Alone and in most cases also Forecasting Shell Server run in a controlled (and secured) environment, it is not necessary to have this jre sub-folder replaced, although it is technically feasible.
In two other locations java is required to run a Delft-FEWS client-server system: in Tomcat (for deploying the Admin Interface or Open Archive) and for the Master Controller. These are part of the server-package we distribute to you. Although these jre's are not embedded, they can be treated similarly with respect to replacing them (or not) by another open source version or commercially supported version of java 11. The decision to arrange additional 'support for Java' is up to the end user of Delft-FEWS.
If - at some point in time - crucial (security) fixes are required to the embedded jre in the client-package of Delft-FEWS, Deltares will distribute a new 'base-build' for 2018.02 (or higher). Since the distribution of this (new) base-build will take place via the database (and is uploaded via the Admin Interface), updating of all FSS and OC machines will be rather simple. The update of the base-build (including updated embedded jre) will then take place automatically and will neither be a large maintenance burden nor very time-consuming.
New table: to be included/finalised
NB. only the jvm.dll and not the java executable is shipped with the base build. The jre release version is listed in windows\jre\release and linux
NB2. The Master Controller and Apache Tomcat 9 (Admin Interface, Open Archive, Fews Web Services and Database HTTPS Proxy) are known to work with the OpenJDK 11 as distributed by RedHat, our test suite).
Java JRE versions (2017.02 and earlier)
Note that for security reasons, java should never be installed inside a browser. Delft-FEWS should only be using the java JRE in embedded form.
Since 2014.01 Delft-FEWS requires a base-build. This base-build requires a (minimal) jre-version. See the table below. For 2015.01, 2015.02 and 2016.01 with Java JRE 8 upgrades above _100, a new base-build is required.
Tomcat webcontainer for Admin Interface / PiService / Proxy
When multiple components require one and the same dll (e.g. for Active Directory / kerberos integration), it is
required to run those components in a separate tomcat instance to avoid problems.
JMS providers and their Java JRE versions (no longer present in 2017.02 onwards)
The Delft-FEWS software contains Windows executables requiring a VC++ Redistributable Package being installed.