25.01. mSupply client / server installation part 1

  • mSupply Server can be installed on a range of Windows OS hardware platforms. Installations of the mSupply Server and client software on these different platforms will not be identical.
  • This page includes instructions for installing the mSupply Server and client software on a typical Windows 10 Pro platform. This will include many hardware configuration issues as these have been known to be important for mSupply Server operation and troubleshooting.

4D is the database underlying mSupply software. 4D has recommendations for hardware.

Based on decades of experience with mSupply in demanding field environments, the single biggest cause of problems around mSupply usage is power failures. Even if the system was working perfectly during the initial install, UPS batteries fail, and then the ICT equipment is no longer protected from power failure. Losing access to mSupply during power cuts is bad enough. But the real danger is ungraceful shutdown of the mSupply server resulting in corruption of the mSupply data file as well as other software and hardware. It is often possible to fully restore a corrupted mSupply database, but not always. In a synced system it can be almost impossible to fix all discrepancies between servers caused by such a data corruption. The key to a reliable mSupply ICT installation is mSupply servers that are resilient to power cuts. The solution: Laptop computers.

  • Laptop batteries have a much longer life than typical UPS batteries
  • Laptops are inherently better at shutting down gracefully when the laptop batteries have drained

In certain environments, it may be important to make sure that the laptop server is physically secured with a locking cable.

The following table lists our current minimum recommended hardware for a locally installed mSupply server. mSupply satellite servers in a synced system do not require the same level of data redundancy (RAID array, etc.) as the central server.

Item Recommendation
OS 64-bit Windows 2016 /2019 or Win 10 Pro with latest service packs
Processor For server Quad core minimum is recommended. Consider adding more cores for 15 users or more
Memory ECC memory Minimum 8Gb +1Gb per user over 8 users
Hard disks 4 total: 3 Hard drives to run RAID 1 (or 5) Array + Hot Spare. 1 separate Hard disk for primary back up
Network card Gigabit
RAID controller RAID 1: Onboard RAID controller is fine
Power supply Dual hot-swap power supply is best, single power supply acceptable with good power quality

Indicative pricing before local taxes: USD3,000 to USD5,000.

For a Terminal server, the general specification changes in that

  • More RAM is needed.
  • Hard disks are less important, as no data is stored on the server (unless you are using the same server for both hosting the mSupply server and hosting the terminal sessions).
  • An additional Gigabit Ethernet port could be useful

Pricing should be similar.

If you are running a server that is not in a datacentre with proper power protection: Beware of Solid State Drives (SSDs) without Power Loss Protection!

At least one country using mSupply on servers in health facilities with SSDs installed has had the bitter experience of the SSDs failing after ungraceful shutdowns due to failing UPSes.

The vast majority of ICT documentation on the internet is written from and for locations enjoying relatively stable power supplies. When the above-mentioned experience happened, there was precious little information available for facilities suffering from the sort of chronic power supply issues which the majority of mSupply users experience. Now there is more literature - refer here : Surviving SSD sudden power loss

UPS (Interruptible power supply)

  • Unless you have extremely reliable power we strongly suggest you install a UPS with external batteries that will provide several hours run time, e.g.:
  • The UPS must be able to communicate with the server (usually with a USB cable) to initiate a graceful shutdown in advance of UPS shutdown.
  • For the UPS to protect the server from power surges / spikes, the UPS needs to be connected to a power socket that is properly earthed.

More details on configuration of the UPS is contained below.

ICT capacity

Do you have sufficient in-house ICT capacity to do the rest of the server installation yourself?

  • This server hardware belongs to you (or maybe not… see tip below).
  • Sustainable Solutions is a software development company and our core business is not hardware

However, we know that if the server is not installed and configured correctly, the mSupply software and your medical supplies data is vulnerable. Therefore, in most instances, we end up playing a significant role in installing and configuring the mSupply Server.

Over recent years, with the development of reliable and relatively low-cost cloud based server solutions, more and more mSupply client / server installations have used a cloud based server. In many cases, Sustainable Solutions has provided this cloud based server as a separate service, thus relieving you of any responsibility for installation, configuration and management of the mSupply Server hardware.

Set up the physical hardware including

  • RAID 1 volume with Spare (3 disks total)
  • Separate backups volume
  • OS install with correct region, and keyboard - refer Region / Language below.
  • Administrator account called Sussol (mSupply server will operate from this account.

There are a number of miscellaneous server tweaks that we recommend:

Decimal Symbol

The PC can sometimes have the incorrect decimal symbol (e.g. $2,000,00 instead of $2,000.00).

You can update the decimal symbol through your regional settings. Start by opening Control Panel and choose Change date, time or number formats (as shown below).

You will have the Region window appear. Click Additional settings… in the bottom right.

You will now see the Customise Format window. Select the Decimal symbol drop-down list, and select the desired decimal symbol - for most countries, the default is a full stop.

Click Apply to save these changes!

Hibernation / sleep

  • The pc can go to sleep after a few hours so change the power settings to never sleep etc. Even after setting the sleep setting to never you still must go into the advanced settings and change the hibernate setting to never: How to turn off Hibernation on Windows 10

Set correct regional settings including keyboard, copy to 'New user accounts'

Microsoft keeps changing how these settings are accessed. You'll likely need to hunt around to find them :-(

Be sure to set the correct regional settings, particularly if this is a cloud server which may be physically located in a different region to the country where the server will be used…

  • Go to SettingsTime & LanguageRegion & LanguageLanguage
  • Click on Change date, time, or number formats
  • A Region window will open, set your preferences on Formats and Location tabs.

Even if you chose the correct keyboard (normally US) during setup, another keyboard (like the UK keyboard) can sometimes still be the default keyboard. Check this by trying to type the @ character… To fix this, you will need to:

  • Add the correct language (e.g. English (Australia)). This will auto select US keyboard
  • Move it up to the default position and delete the other language option(s).
Date format
  • In the regional settings in Control Panel, we recommend that the short date format is set to display only 2 digits for the year (YY, not YYYY).mSupply lists are set up to allow only enough space for 4 digits with most font sizes, but occasionally 4 digit years may be truncated. Having the wrong setting here will only affect display, not the actual data. It does not matter if you use DD/MM/YY or MM/DD/YY or YY/MM/DD
  • If the display of lists in mSupply overlaps the separator lines, turn off large font in the display control panel.
Copy to New user accounts
  • Click Change date, time or number formats
  • Click Administrative tab.
  • Click on Copy settings button. On the next window:
  • Check Welcome screen and new user accounts settings will open.
  • Check New user accounts check box.
  • Click OK button on same window
  • Click Apply button and then OK button on Region window.

Turn off UAC (User Account Control)

Only follow this step if the mSupply Client requires user permission every time to run. In that case, you may need to do the following to avoid the UAC popup:

User Account Control (UAC) can interfere with 4D - refer 4D Knowledgebase: Tech Tip: Windows UAC and the "Program Files" directory, so, we need to turn it off - refer https://social.technet.microsoft.com/wiki/contents/articles/13953.windows-server-2012-deactivating-uac.aspx

  • You have the option to turn off UAC via registry by changing the DWORD EnableLUA from 1 to 0 in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system
  • You may get a notification that a reboot is required. Reboot anyway.
  • After the reboot, UAC is disabled.

Region / Language

After installation, if mSupply fails to start, then it's quite possible that the Language setting needs to be changed. Not all Windows OS languages are supported by the 4D database that mSupply is built on. Unfortunately, 4D does not maintain a list of unsupported languages.

For example with regional format setting of English (Nigeria) it is known that mSupply will not start.

The solution is to change the regional format setting to something more common like English (United Kingdom) or English (US):

For language tab, Drag and drop “English (United States)” at the top of the preferred list:

Known unsupported languages include:

  • English (Nigeria) (2019-08-28)
  • English (Papua New Guinea) (Win10 1903)
  • English (Cook Islands) (2020/10/1)

If you discover other unsupported languages, please let us know, and we'll update this list!

  • Last modified: 2024/03/27 03:54
  • by Kahn Wynyard