Load Balancing

The Load Balancing tab allows you to set up multiple IceWarp Server installations to serve as a load balanced system, with each server taking a share of the processing.

This is achieved by using common folders for Configuration, Antispam and GroupWare settings, and for the mail and logs folders. Each instance of IceWarp Server will use these common settings.

Note: For a fully balanced system you should also:
- Use common folders for mail and logs. (See Directories in Storage).
- Make sure that Automatically check if configuration has changed and reload is checked. (Storage - Local settings).
- Not share the Temp folders, these should be separate and local for each IceWarp Server. (See Directories in Storage).
- Use different hostnames and IP addresses for each IceWarp Server (Storage - Local settings).

Figure. Storage management: Load Balancing tab.

General Section

Field

Description

Server ID

Specifies the prefix for all message files. Maximum two characters. Numbers are recommended.

Master host

Enter a server name or IP address of the server that works in master mode.

Slave host

Enter server names or IP addresses of all servers that work in slave mode. Use semicolon for separation.

This server operates in master mode

If you do not Check this box, you inform IceWarp Server that this server is a "slave" in a load balanced system.

This server will ignore certain features, which will be handled by the master server. These features include Remote Server Watchdog, Backup, AD Sync, Antispam Reports, Mail Archive Backups, plus others.

Using this option will reduce the workload of your slave servers.

Automatically check if configuration has been changed and reloaded

If enabled, IceWarp Server will automatically check the settings and configuration of Load Balancing and if something has changed IceWarp Server will automatically reload new configuration.

In the case two administrators logged to console at once, it will ask administrator what to do regarding the changes other admin made (to accept/reload or not).

Directories Section

Field

Description

Config

The fully qualified path to the config directory ....\<InstallDirectory>\Config\

Antispam

The fully qualified path to the spam directory ....\<InstallDirectory>\Spam\

GroupWare

The fully qualified path to the calendar directory ....\<InstallDirectory>\Calendar\

Note: Unless you have direct access to the drive as a letter, these paths are to be UNC pathnames and each IceWarp Server should have full rights to each path.
For example when you use UNC path to access a remote storage, IceWarpservices have to run under a user, that has write/read/delete rights to that destination, not under Local System. To check/set it, navigate to the services.msc file - Log On As item and ensure it is set to other user than Local System (IceWarp [service] Properties (Local Computer) dialog - Log On tab).

Note: These directories have to be shared between the load balanced servers.

Other Section

Field

Description

IP binding

The IPs you want the services to listen on.

Example:

127.0.0.1;192.168.0.1

Note: This setting always overrides settings for individual services within the <service> dialog - Properties tab - All Services field (System - Services - General).

Note: When set, this applies also for single node mode.

Hostname

The hostname you want the server to use in communication with other servers.

Remote logon

You may want to use a shared storage (e. g.: for emails) with protected access.

Specify the remote path, username and password to logon there with.

Example:

\\server\mail;user;password|\\server\logs;user;password

Load Balancing Setup Considerations

Shared Settings and Data Visualization

  • Most of the settings/visualizations are shared, if you centralize the config folder in storage. Example - all the settings in the console are shared (with the exception of System - Storage - LB (paths.dat)), but even all the data in the DBs too. E. g. antispam whitelist/blacklist entries, accounts settings (forwarders, limits, etc), volume (Status - Volume), etc.
  • Each server does have separate statistics in Status - Statistics, also graphs and sessions, queues, etc. of course.
  • Intrusion prevention shows the result of all load balanced servers in each one. So, for example server A had 50 items in intrusion, server B 40 other records. It shows 90 records on both front end load balanced servers.

Note: IM always routes from the master to slave, so master has to be online for IM to work (in the case it is down, you need to make the slave server the new master manually).