...
Component | Description | Hardware requirements | Operating system / Software requirements | Instances |
---|---|---|---|---|
Operator Client (Gui) | The Delft-FEWS client used by end-users. | client side, normal pc Screen resolution depends upon the hardware supplied not on the Delft-FEWS software | Windows 7 / 8 / 10, Server 2012(R2), 2016 Linux RedHat Enterprise, CentOS (6.x 64 bit, 7.x 64 bit) | As many as there are clients |
ConfigManager
| Control and distribute configuration via the Master Controller database. | client side, normal pc | Windows 7 / 8, Server 2012(R2), 2016 Linux RedHat Enterprise, CentOS (6.x 64 bit, 7.x 64 bit) | As many as there are application managers |
Forecasting Shell Server | Executes forecast models and stores the results in the central database. | Minimum 2 GB RAM and 1 one CPU core per Forecasting Shell Server instance. CPU typically Intel Xeon E5606 2.33 GHz or equivalent. Always reserve 1 CPU core for the OS. | Windows 7 / 8 / 10, Server 2012(R2), 2016 Linux RedHat Enterprise, CentOS (6.x 64 bit, 7.x 64 bit)
| recommended minimum 2, add more depending on computational load |
Master Controller Server | Dispatches tasks to the Forecasting Shell Servers. Maintenance of central database. Synchronisation between master-controllers. Sends system alerts.
| Minimum 1 GB RAM per MC instance. CPU typically Intel Xeon 2.33 GHz or equivalent. | Windows 7 / 8 / 10, Server 2012(R2), 2016 Linux RedHat Enterprise, CentOS (6.x 64 bit, 7.x 64 bit)
| 1 or 2 |
Central Database | Central data repository | See Database vendor requirements + 8 GB RAM per DB server including 1 MC DB instance and. CPU typically Intel Xeon E5606 2.33 GHz or equivalent. Add 1 GB RAM per extra MC DB instance. | Oracle 10 / 11 / 12 for versions up to Delft-FEWS 2017.01, Oracle 12c for Delft-FEWS 2017.02 and later PostgreSQL 9.6 MS SQL Server 2012 / 2014 / 2016 MS SQL Server 2012 or later for Delft-FEWS 2017.02 and later. The database instance(s) can be a hosted on an existing database server or cluster. | One instance per Master controller |
Admin Interface | Super-user monitoring, system control and task scheduling | Minimum 1 GB RAM | Requires internet browser with javascript and session cookies enabled. 2018.02 requires Tomcat 9, Internet Explorer 10 or older is not supported. 2017.02 and before: Apache Tomcat 6 or higher The web application runs over the Internet, E.g. Internet Explorer, Edge, Firefox, Chrome. | One instance per Master-Controller machine |
"NFFS/FEWS" Web Server (optional) | For disseminating forecast data and data from other sources | Typically 1 GB RAM per server instance and CPU Intel Xeon 2.33 GHz or equivalent. | Weblogic 11g with an Oracle Database. Weblogic as Application Server . | One instance per Master-Controller machine (optional) |
PiService (optional) | Data access component. | Typically 1 GB RAM per server instance and CPU Intel Xeon 2.33 GHz or equivalent. | Apache Tomcat 6 / 7 or later Preferrably not on the same machine as the master-controller / MQ server. | 1 (optional) |
JMS Server | Messaging communication between FEWS components | No longer present in 2017.02. Minimum 1 GB RAM per JMS instance. CPU typically Intel Xeon 2.33 GHz or equivalent. Minimum 1GB disk space for cache. | Windows 7 / 8, Server 2012(R2) (32bit, 64bit) Linux RedHat Enterprise, CentOS (6.x 64 bit, 7.x 64 bit) | One instance per Master controller |
Archive Server (optional) | Stores forecast data, performance indicator data and configurations on a longer time scale than in the central FEWS system. For new projects consider using the Deltares Open Archive instead. | No longer supported in 2017.02, please migrate to the open archive. Ample storage space for Archive files | Apache Tomcat 6 / 7 or later Separate database instance with same requirements as Central Database for Master Controller. | 1 (optional) |
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:
- Master Controller server running Master Controller(s), Apache Tomcat for Admin Interface
- Open Archive Server
- Database Server
- Forecasting Shell Server(s)
Typically in a dual master-controller setup every master-controller has its own machine so that maintenance can take place without offline time.
Virtualization
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.
Grid computing
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 ++++++++
The new client-package of Delft-FEWS 2018.02 (OC/CM/SA/FSS) will contain an 'embedded' 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
Version | Base-build | Operator Client Forecasting Shell | Tomcat |
---|---|---|---|
2019.02 | |||
2018.02 | embedded | openjdk11.0.2 |
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\jre\release.
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.
Div | ||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||
|
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 requred to run those components in a separate tomcat instance to avoid problems.
Version | Product |
---|---|
Delft-FEWS 2018.02 | Tomcat 9 |
Delft-FEWS 2017.02 and before | Tomcat 5, 6, 7, 8, 9 |
JMS providers and their Java JRE versions (no longer present in 2017.02 onwards)
Version | Product | JRE version | Windows / Linux | Remarks |
---|---|---|---|---|
Delft-FEWS 2017.02 | No JMS provider required anymore. Direct database access (DDA) is replacing synchronisation via JMS. Https (as supported by JMS) is not supported. | |||
Delft-FEWS 2017.01 | ActiveMQ 5.14.5 | Java JRE 8 |
64 bit (installation of 32 bit is not recommended) | ActiveMQ 5.14.5 requires JRE 8 (best 64 bit), but may also be used with JRE 7. |
Delft-FEWS 2016.02 and older | ActiveMQ 5.11.1 | ActiveMQ 5.11 requires JRE 8 (best 64 bit), but may also be used with JRE 7. | ||
Delft-FEWS 2017.01 and older | JBoss 4 / 5 / 7 | Java JRE 6 / 7 | Does not function with JRE 8. Note that JBoss4 requires a jdbc driver for storing temporary messages. The JRE version with which this driver is compiled should be compatible with the JRE used for Jboss4. |
Windows VC-Redistributables
The Delft-FEWS software contains Windows executables requiring a VC++ Redistributable Package being installed.
Executable | Installer | Download location |
---|---|---|
JavaService.exe | Microsoft Visual C++ 2008 Redistributable Package (x86) | https://www.microsoft.com/en-us/download/details.aspx?id=29 |
JavaService_x64.exe | Microsoft Visual C++ 2010 Redistributable Package (x64) | https://www.microsoft.com/en-us/download/details.aspx?id=14632
|
...