CMS System Requirements
From NewHaven Software Wiki
CMS 7.0 system requirements are fairly meager considering the capabilities of today's machines. As such, most anything you buy or even already own today will be more than adequate. You do, however, want to make sure you're meeting the following system requirements.
64-bit vs 32-bit
This option affects both your hardware and software. Many Windows operating systems are available in either a 32-bit or 64-bit version. Either will work with CMS and CMS's database server software - Sybase Adaptive Server Anywhere (aka iAnywheree). The 64-bit version does not offer any benefits to CMS over its 32-bit counterpart. Sybase, on the other hand, would stand to benefit to some degree from a 64-bit OS, at least in its support of additional RAM and caching. If you're looking at running Windows XP Pro, Vista or 2003 Server we'd recommend sticking with the 32-bit editions. If you're considering Windows 7 or 2008 Server you may opt for either the 32 or 64-bit editions. Be aware that Windows Server 2008 R2 is only available in 64-bit.
Hardware
Servers
This section applies to machines that are operating as pure servers or for stand-alone installations which are acting as both a server and workstation.
Minimum Requirements
- Pentium 4 - 1.8 GHz or faster CPU
- 1 Gigabyte RAM (CMS will work with less but not recommended)
- 20 GB Hard Drive with 2 GB available
- CD-ROM or CD-R/RW Drive
- SVGA Monitor
Database Server Additional Recommendations
- The best things you can do to improve the performance of your CMS server is maximize your RAM and purchase fast hard drives. The speed and number of processors has less to do with CMS performance than does I/O (disk read/write speed) and being able to cache some or all of the database into RAM. This should be your first goal when purchasing a new server or optimizing and existing server. Read more about database caching options below to make the most of your available RAM.
- Solid State Drives (SSD) can be an attractive option/addition to your server. They are essentially RAM and are extremely fast.
- Isolate your CMS database onto its own drive so it is not sharing a drive with your operating system or other server files.
- The CMS database server (Sybase) can make use of dual processors but, as a rule, processing speed does not play a huge role in performance. Consider this nice to have but not a necessity and lower in priority than the RAM and fast drive recommendations above.
- Fast network cards - Especially useful if you run a lot of reports from your workstations.
- RAID 6 or other drive array. Priority of redundancy over striping if going with a different RAID configuration. Your server is at the heart of your company's operation and you need to make sure you can keep it going. Redundancy will help you sleep at night.
- Backups - While not a performance issue, this is an important consideration for a new server. You'll want to have an automated system in place to move the nightly CMS backup (must be turned on and configured) to other storage locations. Ideally you'd have a rolling backup routine that allows you to store backups for each night without overwriting the previous backups and then move the last backup of the week off-site (DVD, tape or online backup location). This way even if your place of business was in a natural disaster or your server was stolen, you would reasonably be able to recover. We unfortunately had a customer of ours go out of business because they were unable to recover when their server was lost in a fire. Protect yourself from the same fate.
Configuration
When running directly on a Windows server (2003 and up), CMS will not be able to make web service calls until the following configuration change is made. This can impact some CMS integrations so the following setting should be made on your server:
* Server 2003: Go into Control Panel->System->Advanced->Performance->Settings * Server 2008: Go into Control Panel->System & Security->System->advanced System Settings->Performance->Settings * Choose the Data Execution Prevention tab.
The default setting is Turn on DEP for all programs and services except those I select, and there is no reason to change it for CMS. However, you need to add CMS to the exception list, which will then allow CMS to communicate with web services.
CMS workstations
Workstations are those machines that are running CMS from a server on your network. If you are running CMS on only one machine or that machine is your server, please see the Server requirements above.
Minimum Requirements
- Pentium III 500 MHz or faster
- 1 GB RAM
- CD-ROM Drive
- 20GB Hard Drive with 2GB available
- SVGA Monitor
- 10Mbps Network Card(s) or faster
CMS Workstation Recommendations
Very little processing, disk space or hardware is required to run CMS on a workstation. Most everything takes place on the server so your workstation requirements are reasonably small. Our only recommendation beyond the minimums is to maximize your RAM and consider faster network cards.
Peripherals
CMS will work with most any peripheral (e.g. printers) as long as the manufacture still supports it and offers drivers for your operating system. If the manufacture does not support your device and offer drivers for your operating system, NewHaven Software cannot assist you with it. It may work with CMS but, if not, you must upgrade your device to a currently supported model.
While this may seem like we're just washing our hands of supporting older hardware, there is really more to it. CMS, like most other Windows applications, relies on Windows to operate as an intermediary with its peripherals. In other words, CMS communicates to Windows and then Windows communicates with the peripheral. If Windows does not have a current driver, that communication may fail or operate in unexpected ways. In other words, any problems with the peripheral are outside of our software and control.
POS Module
The only place where CMS has more specific hardware requirements are the peripherals used with its POS Module. The Point of Sale Module only supports specific models of printers, cash drawers, credit card swipes and UPC bar code scanners.
- Printers - Star TSP143II or Samsung SRP-350
- Barcode Scanners - CMS requires USB serial emulation mode. If you are not purchasing these models through NewHaven Software, be sure that you are supplied with a proper cable to allow USB serial emulation.
- Honeywell (HandHeld) 3800G
- Metrologic Fusion MS3780
- Cash Drawer - APG 320 MultiPro or MMC 225151644204
- Credit card swipe/reader - Magtek model 21040102
Other hardware may work with CMS but these are the only models we have tested and can support or offer configuration instructions for. The credit card reader, however, is unlikely to work unless you have the specific model we have recommended.
NHS recommends POS World for your POS hardware. Sharp people, great service, prices and support. Contact Rich King there and identify yourself as a CMS user and he will make sure you get the right equipment. rking@posworld.com , 1.888.801.7282 x678 , www.posworld.com
Shipping Manifest
- Barcode scanners - CMS supports the serial scanners listed above under POS Module and also can work with any keyboard wedge style scanner albeit with reduced capability. Read this article on Barcode Scanners for more information.
- Scales - CMS will work with most any scale that connects via a serial connection and can emulate a Mettler Toledo (models 8213 or PS60) or the UPS Fairbanks scale. USB connections for scales are not currently supported.
Other scanners or scales may work with CMS but these are the ones we support and can assist you with configuration.
Operating Systems
The following are operating systems currently supported by Microsoft and NewHaven Software for use with CMS.
Servers
- Windows Server 2003 SP2
- Server 2003 Editions supported - Standard, Small Business Server, Enterprise
- Windows Server 2008
- Server 2008 Editions supported - Standard, Small Business Server, Enterprise
Workstations
- Windows XP Pro (must be SP3)
- Vista Business Edition SP2
- Vista Ultimate SP2
- 7 Professional
- 7 Ultimate
NOTE: Microsoft will end support for Windows 2000 Professional on July 13, 2010. Windows 2000 is also not compatible with CMS version 7.0. For more information please refer to the article Windows 2000 and CMS
Remote Connections
There are many options available to you when wanting to run CMS remotely. The core issue that must be observed is that CMS must be running on a machine that is connected locally to its database server. As long as that is true, you'll have no troubles running CMS remotely. You cannot, however, have CMS running locally on your workstation and connect to a remote server. The following are some remote access solutions and tips.
Remote Access Software
Software like LogMeIn and GoToMyPC are inexpensive remote access tools that allow you to connect to your PC via their website, thus from any other PC. Performance is a little slower than other solutions but is low cost, flexible and easy to use.
Remote Desktop and Terminal Server
- Our preferred method is to use Windows built-in remote access options. Remote Desktop allows you to connect to your work machine with CMS on it and control it remotely. To do this you must first establish a virtual private network (VPN) connection.
- Terminal Services is also an option that will allow you to VPN into your server and create/run a remote session right on the server and without the need for a dedicated workstation. This is also a popular option but does require purchasing Windows client access licenses (CALs).
Virtual Deployments
We do not yet support running CMS on a virtual server but expect to announce our support for it some time in 2011. We are currently running several virtual machines here at NewHaven Software for our many test environments. We are also running our production environment on a virtual server (VMware). We hope to look at VDI and Citrix XenServer/App in the future.
Early indications are that CMS and the database server will run with no particular technical issues although performance is not as good as running on a dedicated non-virtual server. Reinforcing what has been said above, lots or RAM and fast drives (read/write) are the biggest factors that impact CMS performance. We suspect that any recommendations we make for running CMS on a virtual server will revolve around ensuring that proper resources are dedicated to CMS.
If you think virtualization is in your future, please contact us for assistance in setting up a test environment. Keep us in the loop regarding your successes and failures so we can build a knowledge base here to share with other users.
Before deploying into production we of course strongly recommend testing. You'll want to validate that performance is acceptable and that all connectivity, including from peripherals, and all integrations are working and performing at acceptable levels.
Cloud Computing
While there are many appeals to moving to the cloud, there is still a great deal of uncertainty in how this will affect your PCI DSS compliance. It appears the PCI Council is currently wrestling with issues surrounding cloud and mobile computing so more information and regulation may be coming soon. We will be testing cloud computing alternatives to prepare but we will hold back recommending any such solutions until the PCI Council has announced their stance.
FAQ's
Do I really need a new machine?
Probably not. The operating system is far more important than your hardware. If your operating system is no longer supported, you may be able to update it or reinstall a current operating system on your current machine. Please consult Microsoft for their minimum requirements for the operating system your selecting. Generally if it meets Microsoft's requirements for their operating system, it will be good enough for CMS as well. From there, you need to decide if good enough is really good enough and that will be clear in the performance of Windows, CMS or other applications.
My operating system is currently supported, do I need a new machine?
Hardware is rarely an issue with CMS and you could be running old machines and still experience reasonable performance. If you're satisfied with the speed of CMS, you're able to run a supported operating system without errors, and you have adequate disk space, you may choose to continue to run on your existing machine(s).
If you were to do only one thing, it should be to max the amount of RAM your machine will take. RAM is cheap, too cheap to not have plenty of.
Secondarily, a CMS server needs a lot of disk space not just for its database but it may require additional free gigabytes of space for temp files that is creates and destroys through normal usage. You should never have less than 2Gig of free space on your server. If that is a problem, and you're not going to upgrade your server, at least move onto new hard drives. Here too, drive space is cheap these days.
There may be other compelling reasons to upgrade your machines, be it for speed, other applications or compatibility with other new technologies. New machines that are capable of running 64-bit operating systems, for example, are capable of handling more than 4 Gigabytes of RAM. While this would rarely be a CMS consideration for a workstation, if you have a database (.db file) that is larger than 2 Gig, you should seriously consider a server with more than 4G of RAM.
As a rule, the performance you need from CMS is merely a factor of hardware. As your company grows, CMS can scale perfectly well with you but may require improved hardware to keep up with the increased server load. Evaluating CPU/memory usage and free disk space during the heat of the day will give you an indication of how well your server is handling the load and if more resources are needed.
Why can't I continue to use an older operating system?
Even if has worked fine with CMS for years, if Microsoft no longer supports it, you really don't want to be using it. Once they stop offering security patches, as they just have stopped doing for Windows 2000, you become vulnerable to new threats (viruses, hacks, etc.) and you may find that CMS will no longer work. Such is the case with Windows 2000 as it does not contain the components need for CMS version 7.0 to run properly. This link provides more information on this subject.
PCI requirements also dictate that your systems must be kept up to date with current security patches.
What is "database caching"?
One of the great features of your CMS database is that it requires little to no maintenance. There is no re-indexing, server administration, etc. It largely just takes care of itself.
One thing you can do, however, to maximize your database performance is to use a setting for database caching. This option requires more RAM but RAM is cheap and the performance gains are worthwhile. With this option, you can force Windows to allocate a specific amount of RAM to your database to allows some or all of your database to be loaded into memory and thus can have significant affects on your server performance.
Limitations (applicable to v8 thru v12) are as follows:
- Maximum cache size for (Win32) Windows XP Home Edition, Windows XP Professional, Windows Server 2003 Web Edition, Windows Server 2003 Standard Edition, Windows 2008, Windows 7 - 1.8 Gb
- Maximum cache size for (Win32) Windows Server 2003 Enterprise Edition, Windows Server 2003 Datacenter Edition, Windows Vista Ultimate, Windows Vista Enterprise, Windows Vista Business, Windows Vista Home Premium, Windows Vista Home Basic - 2.7 Gb
- Maximum cache size (Win 64) limited by physical memory on 64-bit engines - NOTE: Our experience to date has shown that caching beyond 1.8G is not possible even with 64bit operating systems.
To update your cache size, you'll want to modify the registry key for the service (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ASANYs_NHSDataService\Parameters) like this:
-n NHSDataServer "C:\NewHaven Software\Data\Company\Company.db" -c 1800M -ti 0 -tl 0
The above is a cache of 1800 Meg (1.8 Gig.) K, M and G are recognizable increments and they must be in caps. It does not accept decimals however so if you want 1.5G you should do 1500M as shown in the above example. You can experiment with other or higher values but if the service doesn't start you may need to back your number down or revert to an earlier setting.
If you're interested in this option and have enough RAM, please contact NewHaven Technical Support for information on how to enable this option.
What about my network?
Our recommendations here are pretty generic. If you're still on the old 10mbps cards you should consider upgrading. 1Gbps is pretty standard these days. CMS doesn't need a lot of bandwidth but could benefit from 100mbps over 10mbps...depending on what other network traffic you might expect. If you have hubs or old switches, that would be a good place to look at upgrading.
Will CMS work with wireless?
Yes, although CMS must maintain a constant connection with its database and even momentary interruptions in that connection can be enough to cause errors. As such, we do not recommend running CMS over a wireless network connection. You can, however, use Remote Desktop via wireless to connect to a machine that is on your physical network and, in that scenario, you would not be subject to disconnect issues.
Can I run CMS remotely?
Yes, but it must be done using RDP (remote desktop), terminal services or remote access software like Logmein. CMS must be running on the same network/domain as its database server. You'll need to remote into Windows first and then run CMS from that machine. You cannot have CMS installed locally and connect to a remote network/server. See the section on remote connections above.
Can NewHaven Software assist with purchasing or configuring my hardware/network?
We can make recommendations, like we have in this article, but the actual purchase, configuration and maintenance of your hardware and network must be performed by someone at your location. This would either be done by someone on staff that is capable or a local contractor that can provide these services and expertise to you. We're happy to consult with your staff or contractors on any CMS related configurations.