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.
End-Of-Life of third party components
Deltares cannot support any release that is marked as end of life by the supplier. For a quick check whether a component is still supported:
Components
Operating Systems
JDK
Embedded JDK that can be replaced
Delft-FEWS binaries contain an embedded JRE. It should be possible to replace the embedded version of the JRE with a commercial JDK or OpenJDK of choice.
Before starting to use Oracle JRE packages released after April 2019, please be aware of changes in the Oracle Java License model, see https://java.com/en/download/release_notice.jsp.
Our software is known to work with the following OpenJDK alternatives (Corretto is recommended):
- The Amazon OpenJDK distribution https://aws.amazon.com/corretto/.
The OpenJDK reference implementation found at https://jdk.java.net/.
The Delft-FEWS binaries contain a embedded stripped-down JRE (Java Runtime Environment) based on Amazon Coretto OpenJDK. This package is referred to as the Delft-FEWS base build. These OS specfic JREs can be found in folders bin/linux/jre and bin\windows\jre. These JREs can be easily replaced by any other open source or commercially supported version of the same major Java version. Since Operator Clients / Stand Alone Clients and and Forecasting Shell Server mostly run in a controlled (and secured) environment, it is not necessary to have these jre subfolders replaced. The decision to arrange additional 'support for Java' is up to the end user of Delft-FEWS. If crucial security fixes are required in the embedded jre in the Delft-FEWS binary package, Deltares may distribute updated base builds. Optionally, distribution of new base builds can be done by upload via the Admin Interface.
Some models / model adapters may require a separate JDK installed
The OpenJDK supplied in the Delft-FEWS binaries is not the full JDK. Instead it is bundled by the jlink executable to a stripped-down JRE with only the parts that the OC / FSS / CM / MC require. This economizes the number of bytes that needs to be copied to every FSS host. This is different from 2017.02 and before where the full JRE was normally installed. If a model adapter or external model to be run by the Forecasting Shell or Operator Client is also using this stripped down version of the JRE for its operation, it is possible that some of the java classes required are missing from the shipped jre and the adapter or model won't be able to run properly. It is the responsibility of the application managers / model configurators to ensure that their adapter and models requiring Java are already supplied with the correct Java Runtime modules. It is essential that the Forecasting Shell Launcher startup script should not be contaminated by additional path variables, instead the models should contain their own embedded jre. See the General Adapter Module for more details.
Central database
- Central database hardware and software requirements - 2023.02 and later
- Central database hardware and software requirements - 2023.01
- Central database hardware and software requirements - 2022.01 - 2022.02
- Central database hardware and software requirements - 2021.01 - 2021.02
- Database connection count calculator
Master Controller Server
Server for workflow management, event processing, sending system alerts and cleaning up expired records. Synchronizes from other Master Controllers in multi-MC systems. Multi-MC systems are useful for redundancy and / or for cooperation between organizations.
Minimum requirements
- OS minimum +1 GB RAM (multi Master Controller systems +2 GB)
- OS minimum +1 CPU per Master Controller instance
- 10 GB free diskspace
Admin Interface
Operator Client
Forecasting Shell Server
Database Proxy
Deltares Open Archive
Minimum requirements
- Failsafe storage. Any RAID (https://en.wikipedia.org/wiki/RAID) with ample capacity will be sufficient.
- OS minimum +3 GB RAM.
- OS minimum +3 CPUs.
- See Tomcat requirements.
- Load balancers must use sticky sessions.
- Permissions for the file system containing archive data:
- Must be accessible by the THREDDS server with read permissions.
- Must be accessible by the Archive Server with full permissions.
- Must be accessible by the Forecasting Shell Servers with write permissions.
FEWS Web Services
- Delft-FEWS Webservice requirements - 2023.01 and later
- Delft-FEWS Webservice requirements - 2022.02 and before
Requirements overview
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.
Security
Read more about the shared responsibility model. >>