Deployment Options

Depending on availability and load balancing requirements, the system can be installed as a single server instance or in a three-server cluster.

You can learn more about how to install your Helmut4 server here

Single server:

When installed as a "Single server", all application containers including the database are running on one server.

Advantages:

  • Less hardware resources required

  • Less technical complexity

Disadvantages:

  • Downtime of the system in case of necessary maintenance

  • No redundancy in case of a server failure

  • No load balancing when accessed by too many users

Cluster:

Installation as a cluster is recommended for use by approximately 100 users or more due to load balancing and/or when high availability of the system is required. Usually we install a docker swam cluster based on three servers (odd number).

Each server can be addressed directly as HTTP(s) endpoint or the distribution of requests is done by a load balancer placed in front of it (provided by the customer).

All application containers run in parallel on all servers (except cronjob and rabbitmq). The database is set up as realtime replication in this setup. Each server has a 1:1 copy of the data. The individual application containers can access all three database instances - the distribution of requests is done automatically.

Advantages:

  • High reliability

  • Good load distribution

  • No downtime during maintenance work on the operating system of the servers

Disadvantages:

  • More hardware resources

  • Higher technical complexity