The NEC Express5800/R320 is a fault-tolerant server that’s ideally suited to mission-critical virtualization, database, and email tasks—all the vital services that your organization depends on. I reviewed a NEC Express5800/R320 4U rack-mounted server with two CPU modules that are kept in lockstep. The CPU modules aren’t simply individual processors. Instead, each CPU module is a completely enclosed 2U unit; each module contains its own six-core Intel Xeon CPU, motherboard, RAM, power supply, and hard drives. Each CPU module slides into a chassis that you mount in your rack. Figure 1 shows the NEC Express5800/R320.
The NEC 5800’s mission-critical design was apparent immediately, beginning with my out-of-the-box experience. Unlike most servers that are shipped in a standard corrugated box, the NEC 5800 comes on a wooden pallet. After opening the box I was a bit surprised to see that the unit required some assembly. My NEC contact told me that the company ships the unit with each CPU module packaged separately to improve shipping reliability. Each CPU module is housed in a steel case. The chassis is also extremely rugged and made out of steel. As you might guess, this solid construction makes for a pretty heavy unit. The NEC 5800 weighs in at just about 105 pounds.
To install the unit I basically slid each of the CPU modules into the chassis and fastened them in place using the thumbscrew latch assembly provided on the front of each CPU module. I then mounted the unit in the rack and connected it to the power and network. Each CPU module has its own power supply. The NEC 5800 unit that I tested came equipped with one logical Xeon 5670 processor—a six-core CPU running at 2.93GHz, with the new Intel 5500 chipset. My test unit had 4GB of RAM and 144GB of disk storage with a 73GB, 2.5", 15K rpm hard disk drive.
Just to be clear, I use the term logical because the unit actually had two physical sets of CPU, motherboard, RAM, and disk storage—one set per CPU module. This redundant hardware is what enables the fault tolerance. Each CPU module can support up to 96GB of RAM running at 1333MHz, as well as up to 4.8TB of Serial Attached SCSI (SAS) disk storage.
Internally, there were two PCI Express 2.0 expansion slots and two PCI Express 1.0 expansion slots. On the back of each CPU module there were three 1GB network ports. Two ports were intended for client networking activity, whereas the other port was intended for remote management. In total there were four client network ports that were configured as a team using Intel’s Advanced Network Services (ANS) technology. The teaming technology provided fault tolerance for networking connectivity to the unit.
Notably, the CPU modules themselves don’t provide connections for a video display, keyboard, or mouse. Instead, the video, keyboard, and mouse connections were on the chassis—not on each CPU module. The integrated video controller provided 32MB of RAM and supported a maximum of 1280 x 1024 display resolution. Like several of the newer servers I’ve tested, the NEC 5800 had no PS/2-style mouse and keyboard ports; the mouse and keyboard connections were USB only. You could use the port on the front of the unit or the ports on the back of the unit. Because two of these ports are required by the mouse and keyboard, I did wish that the unit had more USB ports available—especially on the front of the system. The front of the chassis provided a vertically mounted DVD drive and the single USB port. On the back the chassis had the two additional USB ports, as well as the monitor port and two serial ports.
The power switch is protected by a hard plastic flip cover designed to prevent accidently powering the unit on or off. When the unit is powered on it takes a couple of minutes before it displays the BIOS setup prompt, then it continues its boot process like any standard server. After I initially powered the unit on, it went through a period of about a half hour while it synced the storage. A Ready to Pull light indicates when the unit is operating in fault-tolerant mode. At first the unit wouldn’t go into fault-tolerant mode. However, after I reconfigured the network teaming, the Ready to Pull light came on and the unit was fully fault tolerant.
I tested the NEC 5800 by setting up four virtual machines (VMs) and running our inhouse virtualization test suite. Each VM was running Windows Server 2008 Enterprise Edition with the Hyper-V role installed and a single instance of SQL Server 2005 Enterprise Edition. The VMs were all configured to use 512MB of RAM and the VM files were stored on the local drives. The use of NIC teaming made this unit a bit different to set up because Hyper-V’s external networking needed to be pointed to the network team name rather than using a physical network adapter.
The test suite consists of a mixed workload of database queries running on four active VMs. The database tests run a set of 27 queries against each virtual SQL Server instance. The NEC 5800 proved to be an excellent performer, with test scores that were comparable to other high-end servers we’ve tested. However, the NEC 5800’s built-in fault tolerance really set it apart from other servers.
While running the SQL query test suite I tried a number of different tests, including pulling the power cord out of the back of one CPU module, then putting it back in and pulling the power cord out of the second CPU module. I also pulled out all the network connections from one of the units, then put them back in. The NEC 5800’s fault tolerance worked exactly as advertised. The server continued processing the queries with no noticeable slowdown and absolutely no interruption of services.
After I reconnected the power, the unit took a few minutes for the two CPU modules to resynchronize. The resynchronization process was completely automatic and there was no operator action required. The time required for synchronization depends in part on the workload the unit is handling. Under heavy workload the resynchronization took upwards of 20 to 30 minutes. When the workload subsided, the resynchronization completed in a couple of minutes. During the resynchronization period the unit isn’t fault tolerant; I needed to wait until the Ready to Pull light was relit to perform another test. When the Ready to Pull light came back and the NEC 5800 was fully fault tolerant again, I performed many additional tests with no problems. The NEC 5800’s fault tolerance just works.
Managing the NEC 5800 is much the same as for a regular Windows server. The interface is essentially the same, with familiar tools such as Server Manager, Hyper-V Manager, and SQL Server Enterprise Manager for SQL Server management. All these tools work exactly as you would expect them to. NEC provides two additional tools to manage the system’s fault tolerance: the FTServer utility, which Figure 2 shows, and an RDR utility.
The FTServer utility manages the fault tolerance of the CPU and PCI devices. It tracks failure information, as well as provides the ability to bring CPU and PCI modules online and offline. The RDR utility manages disk fault tolerance and shows you the status of all the drives in each CPU module, as well as the current resynchronization level when the CPU modules resynchronize after a failure.
As you might expect from a high-availability server, the NEC 5800 provides a robust set of remote-management capabilities. You can connect remotely to the NEC 5800 by directing your web browser to the IP address of its management network adapters. You’re then presented with a sign-on screen; after entering the appropriate authentication information, you can perform a number of remote management actions, including powering the unit on or off. Notably, the remote management works even when the server is powered down. To enable this level of management, the unit never really completely powers off while the power supplies are connected. Sitting idle at what could be considered a power-off condition, the unit consumed about 53 watts. While running under the workload generated by our virtualization test suite, the unit consumed about 520 watts.
The NEC 5800 is an excellent platform for mission-critical workloads such as virtualization and database serving. This fully fault-tolerant server can endure a CPU, motherboard, network, or storage hardware failure and continue to provide end-users services with no interruption. As you might expect, the unit costs more than a standard server—but if you need scalability and extreme availability, the NEC 5800 is an excellent solution.