Should I create a Backend Group even if I only have one server?
Short answer
It is not required; a Backend Group with a single server is valid and works like an individual Backend Service. In the group, all settings other than the address, Weight, Connection Limit and Cookie Content (health check, SSL, SNAT, Proxy, Maintenance Mode, Backup Service) are applied in common to all servers of the group; therefore, if the number of servers is expected to increase, creating a group from the start is recommended: a new server is added only as a row and takes the settings automatically. If the server will remain single or if the servers will need to be put into maintenance one by one later, an individual Backend Service is sufficient.
How Does It Work?
- In a group with a single row, the health status of the group is the status of that server; traffic flows as in an individual Backend Service.
- When a row is added to the group, the common settings of the group are applied to the new server; since the vService already points to the group as the target, no change is needed on the vService. When the group is saved, the vServices that use it are reloaded with the new server list.
- If an individual Backend Service is used at the start and a group is adopted later, the group is created separately, and the group is selected in place of the Backend Service in the list of the vService.
- When the common settings are changed later, the change is applied to all servers of the group at the same time.
Comparison
| Backend Group with a single server | Individual Backend Service | |
|---|---|---|
| Current traffic behavior | Same | Same |
| Adding a second server | A row is added to the group | A new Backend Service is created and added to the list of the vService |
| Transfer of the settings to the new server | Automatic | Manual, entered again |
| Per-server maintenance / backup | None; Maintenance Mode and Backup Service are at group level | Available |
| Per-server Weight, Connection Limit, Cookie Content | Available (per row) | Available |
In TR7
The group is created with Load Balancer → Backend Groups → Add. There must be at least one row in the Backends table; when a single row remains, the delete control of that row does not appear. A new row comes with port 80. docs recommends using a group even with a single server if there is a scaling plan.
Common Misconceptions
- "A group requires at least two servers." A group with a single row is valid.
- "Switching to a group requires setting up the vService again." The group is selected in place of the Backend Service in the list of the vService, and the vService is saved.
- "A group brings extra load with a single server." There is no difference in terms of traffic; the difference is only in management.
- "I can put one server of the group into maintenance separately." Maintenance Mode is applied to all servers of the group together; if single-server maintenance will be needed, an individual Backend Service is used.
How it is done in the documentation
