Previously, with HP's hardware-partitioning capability, called nPars, or nPartitions, you could add or subtract resources only by shutting down the partition, which resulted in downtime for mission-critical Unix applications. With this upgrade, users can now adjust resources for nPars on the fly. The capability works for Itanium-based HP BladeSystem Integrity and PA-RISC-based HP 9000 servers running HP-UX.
"It dramatically increases the flexibility of using nPars," said Tony Iams, a senior analyst at Rye Brook, N.Y.-based research firm Ideas International. "You get isolation and some of the flexibility of using virtual machines."
NPars are only one type of partitioning available on HP-UX. The first, vPars, relies on hypervisor firmware to create logical partitions. With nPars, each partition is electrically isolated. As Iams says, "the circuitry itself is separate for each of the partitions."
HP has offered nPars for years, but it wasn't the first to develop hardware partitioning. Sun Microsystems Inc., for example, offers what it dubs Dynamic System Domains on its large Unix boxes. IBM dynamic logical partitioning, or LPARs, meanwhile, and Sun's Logical Domains (LDOMs) rely on a hypervisor and don't provide electrical isolation between partitions.
How important is electrical isolation for partitions? That's debatable, and Iams said a lot of the "marketeering" tends to get introduced here. HP argues that electrical isolation protects partitions from one another. Brian Cox, a director of software planning for business-critical systems at HP, said that in the absence of the electrical isolation, "if you ever have a hardware fault and a processor dies, all those partitions crash. Users accessing those partitions are all out of service."
"You assign a partition to a dedicated set of processors and memory," Cox explained. "You use software to make the initial assignment, but once made, it locks down. Then all signal traffic will only flow over those processors."
But frequently, when one piece of hardware fails, other hardware components in the same box follow suit, Iams said. Thus, if one processor fries, others might soon burn out as well. In this scenario, having electrically isolated partitions doesn't make a lick of difference.
Still, there may be cases where nPars provide a distinct advantage; if, for example, a particular memory bank fails.
"IBM and HP have argued bitterly about this for a long time," he said. "HP has some credibility, in that you do get stronger isolation with nPars than with IBM's dynamic LPARs."
HP-UX 11i addresses one of the major knocks against nPars: that is, they weren't flexible. Previously, to add resources like CPU, memory and I/O to an nPar, you would have had to shut down not only that partition but also other partitions using these resources. With HP's announcement, nPars have become more limber.
But there's a catch; dynamic nPars work only on HP-UX partitions. If you want to add resources to a Linux or Windows partition on the fly, you're out of luck. But Iams said the reason most people want dynamic partitions is so they can avoid downtime on mission-critical applications, which run more often on Unix than on Linux and Windows.
Iams gave a good before-and-after example of how it all breaks down. Assume an Integrity-based server with three partitions: one on HP-UX, one on Linux and one on Windows:
- Previously, to add CPU to the HP-UX partition, you had to shut down the HP-UX as well as either one or both of the Linux and Windows partitions. Downtime affects at least two partitions.
- Now, to add CPU to the HP-UX partition, you shut down either or both of the Linux and Windows partitions, remove the resources from them, and then add them to the online HP-UX partition. This way, only the Linux or Windows partitions experience downtime.
"In the old days, the tradeoff was that you couldn't do this online," Iams said. "But they've neutralized that with this new release."
He added that dynamically adding resources to a partition is difficult, as you have to get an operating system to recognize the new resources as the OS is running. While the new capability allows taking away resources on the fly, that's even more difficult.
"That is the hard part, especially with memory because you have to tell the operating system to stop using those memory banks," Iams said. "You have to tell each application to stop using this little bit of memory. It's an everyone-out-of-the-pool kind of thing. And you need to do this in a way that's totally bulletproof, because these are done on the most critical workloads."
The need for hypervisors
Still, nPars are not as flexible as logical or hypervisor-based partitions. Since nPars are board based, with Integrity servers, for example, you can have partitions only in multiples of four sockets. With a hypervisor, each partition can use one processor (in the case of HP's vPars), one processing thread (as with Sun's LDOMs), or share CPU with other partitions (as with IBM's LPARs).
Jim Rymarczyk, an IBM fellow and chief virtualization technologist, added that while electrical isolation is nice, it isn't going to protect a user in the event of various disaster scenarios.
"They're in such proximity -- in the same box -- that you still have a single-point-of-failure problem," he said. "If you really want high availability, you want separation. You really want two machines, not one machine that happens to have a hardware-enforced boundary within it."