> For the complete documentation index, see [llms.txt](https://docs.helmut.de/helmut4-releases/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.helmut.de/helmut4-releases/v4.10.0/getting-started/overview/deployment-options.md).

# 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](/helmut4-releases/v4.10.0/getting-started/installation-guide.md)

### 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](https://docs.docker.com/engine/swarm/admin_guide/) (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.

#### &#x20;Advantages:

* High reliability
* Good load distribution
* No downtime during maintenance work on the operating system [of the servers](https://docs.docker.com/engine/swarm/admin_guide/)

#### &#x20;Disadvantages:

* More hardware resources
* Higher technical complexity


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.helmut.de/helmut4-releases/v4.10.0/getting-started/overview/deployment-options.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
