4: Choosing Server Hardware
[Original article by: KC Lai]
Server specifications for electronic medical record system
[This is a part of a series on self-hosting OSCAR. Start by reading the first article.]
This is a difficult topic to write about when giving you advice on what kind of server you will need to get without knowing your specific current needs and future needs. It also depends on your risk tolerance for failure and how much you want to spend. However, here are some points for discussion.
If you are thinking of running other server applications (such as Windows Server, firewall appliances, virtual desktop environments etc), consider getting a bigger server with more CPU and RAM, and then use virtualization (read Hypervisor Server) to save yourself from buying a separate hardware server for each type of server.
There are people who have installed OSCAR on a $50 Raspberry Pi computer (although we would not recommend this). There is a physician who runs his 2-doctor clinic on a re-purposed Mac Mini (running Parallels). Some physicians may try to install OSCAR on a Windows OS or on an Ubuntu Desktop computer and keep that running all the time. You can even use a good quality desktop computer (with a CPU that supports virtualization) to run a server. All this is possible, however, it may not fit your specific circumstance.
Some examples for server hardware:
Server for OSCAR EMR with 40 providers:
- Dell PowerEdge Server
- Dual CPU Xenon processors
- iDRAC SSD PERC RAID controller for hard drives
- 72 GB ECC (error-correcting) RAM
- Dual power supply
- Dual NIC (network interfaces)
Server for 10 providers:
- HP Proliant Server
- Single CPU Xenon processor
- HPE Dynamic Smart Array B120i RAID controller for hard drives
- 32 GB ECC RAM
- Single power supply (but a spare one on hand in case it needs to be replaced quickly)
- Dual NIC
Server for 2 providers:
- Mac Mini
Some General Advice on Picking a Server
- Choose a CPU that has Virtualization hardware features (Intel VT-X or AMD-V)
- Use error-correcting memory (ECC RAM). Get as much RAM as you afford and need.
- Use a RAID controller (hardware is preferable, but you can also use Linux software RAID)
- Buy at least 2 hard drives and RAID them for protecting against data loss with hard drive failure. Consider using enterpise grade hard drive such as SAS drives (instead of regular SATA drives). Besides the traditional mechanical drives (SAS or SATA), consider using SSD if you want even faster server performance.
- Have a backup power supply unit (either built-in redundant power supply or a spare one on hand you can install quickly)
- Dual ethernet NIC (or you can buy a separate network card or a multi-NIC network card to install in the expansion slots)
* Keep in mind that OSCAR will run decently on a regular desktop computer (any CPU) with 2-4 GB of RAM, and 50 GB of hard drive space.
Read Next: Hypervisor Host Server