Client/Server FAQ

mSupply Server Requirements

OPERATING SYSTEM:

Windows Server 2019 or above

Windows 10 Pro can be used on laptop servers at smaller remote sites

MEMORY:

New mSupply installation: 16GB minimum

Migration of existing mSupply Server: multiply mSupply datafile size + index-file by 1.5 (e.g. datafile 20GB + index-file 2GB x 1.5 = 33GB RAM min)

PROCESSOR:

4 cores minimum

STORAGE:

100GB minimum allocated for mSupply backups (preferably on an additional volume rather than on the main drive)

NETWORK:

Assign a local static IP address to server

BACKUPS:

We can provide remote daily datafile backups to Backblaze cloud storage. We utilise an application on the server to encrypt all data before sending to the cloud storage so your is safe. This service will require urls to be whitelisted if your server restricts outbound traffic

Ports & Firewall Configuration

Central Sync Server

Our standard port configuration for an mSupply sync server (where remote sites need to connect to a central server over internet). Alternative ports can be used if required, for example if TSPlus remote kiosk access is not required then the mSupply web server can be configured to run over port 443

Service	Allow Port	Protocol	Network	Requirement
mSupply Web Server	TCP 2048	HTTPS	Public	mSupply web server traffic from remote mSupply sync sites
mSupply Dashboards	TCP 3000	HTTPS	Public	mSupply Dashboard server traffic (if dashboards are to be accessible from the internet)
TSPlus Remote Web Kiosk	TCP 443	HTTPS	Public	if running TSPlus for remote kiosk access to mSupply Client on the server
mSupply Application Server	TCP 19812, 19813, 19814	Local	mSupply Client connections to mSupply application server over LAN
mSupply Client broadcast	UDP 49157 to 65535	Local	mSupply clients will automatically broadcast on the local network over this UDP port range to find the mSupply server

Central Server with no syncing remote sites

All mSupply Client applications connect to the server over the LAN. There are no remote sites that need to sync to the central server.

Service	Allow Port	Protocol	Network	Requirement
mSupply Application Server	TCP 19812, 19813, 19814	Local	mSupply Client connections to mSupply Server over LAN
mSupply Client broadcast	UDP 49157 to 65535	Local	mSupply Clients will automatically broadcast on the local network over this UDP port range to find the mSupply server

UDP Ports: If a local static IP address is assigned to the mSupply server then mSupply Clients can be manually directed to the server without needing to open the UDP broadcast ports

Separate Dashboard Server Instance

The mSupply Dashboard application uses a PostgreSQL database. It may be advisable to run the Dashboard and Postgres server on a separate server instance from the mSupply server so that each instance can be configured specifically for the application that it is running, and so server resources required by Postgres do not interfere with the smooth functioning of mSupply Server.

If mSupply Dashboards and PostgreSQL are running on a separate server instance to the mSupply Server the following configuration will be required for the dashboard server:

Service	Allow Port	Protocol	Network	Requirement
PostgreSQL	TCP 5432	HTTP	Local	export of data from the mSupply db to the Postgres dashboard db
mSupply Dashboards	TCP 3000	HTTPS	Public	mSupply Dashboard server traffic (if dashboards are to be accessible from the internet)

mSupply Client Requirements & Configuration

OPERATING SYSTEM:

Windows 10 64 Bit

MEMORY:

4GB minimum, 8GB recommended

If the UPD ports on the server are not open, or the mSupply Clients are on a separate subnet to the mSupply Server, then the Clients will not automatically find the Server. In this case the Server will require a static local IP address (which is good practice either way).

There are two methods to direct mSupply Clients to the IP address of the mSupply server:

1) Client configuration file

After mSupply Client has been installed edit the EnginedServer.4Dlink found at this path C:\mSupply client\Database using notepad. Replace <SERVER IP ADDRESS> in the code below with the Server IP. This same file edited file can then be deployed to this folder of all the mSupply Client installations on this LAN.

<?xml version="1.0" encoding="UTF-8"?><database_shortcut is_remote="true" server_database_name="mSupply" server_path="<SERVER IP ADDRESS>:19813" cache_folder_name="mSupplyClient"/>

2) Client Server Connection Window

Double click on the mSupply client icon but hold down the alt key just after double clicking (This will open Connection to 4D Server window)

Go to the 'Custom' tab as per the screenshot attached

In project name field enter mSupply

In the Network address field enter the server ip address

Click OK (if Client successfully connects the connection config will be saved and this process will not need to be repeated)

Standard Sync or Mirror Sync?

For more information on both our standard sync and mirror sync setups please see this page of our docs