Introduction
Delft-FEWS components are being deployed on many different architectures and hardware. A considerable amount of Delft-FEWS users use an IT infrastructure with virtual machines. The usual goal of virtualization is to centralize administrative tasks while improving scalability and overall hardware-resource utilization. When organizations are in the initial stage of (re-)defining their IT infrastructure, it is commonly recognized that after virtualization, containerization is the next logical step in the evolution of IT infrastructure. Deltares will provide guidance. This guidance shall be focused on Kubernetes because in our view Kubernetes is the most commonly accepted and best supported cloud computing solution.
Kubernetes uses Docker containers. A container is a “lightweight” abstraction layer on top of the host operating system. Multiple containers share the machine’s operating system kernel and do not require the overhead of associating an operating system within each application. In comparison with VMs, containers bring reduced start-up time, more compute capacity, more flexibility, fault isolation, ease of management, simplified security and reduced costs. The operational benefits for Delft-FEWS systems are also in line with the Roadmap plans for automation of installations with less needless customization, better auto-scaling and more flexible testing. We prefer using linux containers as much as possible. Whether linux containers can be used may depend on the requirements of the forecast model. Any Windows-based forecast models can be separately run on Windows hardware, Windows VMs (or in a Windows docker container).
Delft-FEWS Software: A cloud agnostic approach
Master Controller | Yes (plans to improve service replication) |
Admin Interface | Yes |
Operator Client / SA | Use Azure Virtual Desktop or Database proxy |
Config Manager | Use Azure Virtual Desktop or Database proxy or API |
Forecasting Shell Server | Yes |
WebServices | Yes |
DatabaseProxy | Yes |
OpenArchive | Yes |
Fileshares | cloud-specific |
Delft-FEWS in the cloud: reference architectures
Explain and visualize reference architectures
- Single MC
- Dual MC (Multi MC?)
Hard- software requirements
Indications of hardware specs for installing the different VM's / containers.
The memory requirements in the cloud are similar as in a VM or on-premise. We recommend all containers to be linux unless Windows containers are specifically required. For Windows containers HW virtualization is required.
Typical cloud related choices (cloud FAQs)
Based on Webinar content / known FAQs specify a number of sub-topics, like
- Use of managed services
- Where to place OC(s)
- How to deal with (incoming, outgoing) data feeds
- Security aspects
- Costs
Scalability
Kubernetes/Containers
DevOps (Infrastructure as Code, Automatic deployments of config changes)
Best practices & recommendations
- Project references
- Technical knowledge Deltares has successfully completed Delft-FEWS projects with Azure ARM templates and AWS Elastic Beanstalk. For practical reasons, will keep our requirements / installation instructions as cloud neutral as possible.
- Involved people
- More info / Deltares contact(s)