# Helmut4 Server

The purpose of this guide is to provide comprehensive instructions for the successful deployment of the latest version of Helmut4.

Helmut4 offers two hosting options:

* Single (standalone) server installation
* Cluster installation

### Single (Standalone) Server Installation

The single server deployment method is the default for Helmut4. All necessary components run on a single system, ensuring a straightforward and easy setup.

### Cluster installation

For customers managing a higher volume of users (\~60+), a cluster installation provides an alternative solution for load balancing and redundancy.

This setup requires a minimum of three individual machines, which will be combined to form a swarm cluster. For further information check out the official [docker documentation](https://docs.docker.com/engine/swarm/admin_guide/).

{% hint style="warning" %}
For a cluster installation, the customer must provide an external load balancer tailored to their deployment environment. This load balancer can be implemented as a dedicated hardware appliance, a software-based solution, or even a DNS-based round-robin configuration, depending on performance and redundancy requirements
{% endhint %}

{% hint style="info" %}
Cluster systems have a distinct SLA/support agreement compared to the default single-server installation.
{% endhint %}

## Pre-installation check

{% hint style="warning" %}
Before starting the installation of the helmut4 server, please ensure that the target ports are available and not being used by another application.

For more information, refer to [Resolving Port Conflicts](https://docs.helmut.de/helmut4-releases/v4.9.1/support/debug-or-log-collection/helmut4-server/resolving-port-conflicts).

If you need to change the default ports for helmut4, refer to [Changing HTTP/HTTPS Ports](https://docs.helmut.de/helmut4-releases/v4.9.1/getting-started/additional-configurations/change-http-https-ports).
{% endhint %}
