Why run Oracle RAC on VMware?

With Oracle RAC and VMware both growing in popularity, end users might be tempted to combine the two. So what are the pros and cons of running Oracle RAC on VMware?

Oracle Real Application Cluster (RAC) and VMware are both growing in popularity, but do the two fit together?

Both technologies have increased in interest and use, according to a recent SearchOracle.com reader survey. In addition, VMware is the most popular virtualization platform in Oracle shops. Yet arguments exist on both sides over whether running Oracle RAC on VMware is worthwhile.

In many cases, the pressure to put Oracle RAC on VMware comes from business executives. They see that the data center is benefiting from the use of VMware, so they wonder why IT can’t virtualize Tier 1 workloads like Oracle RAC as well. So the IT staff sets out to make it happen.

That is the case for David Robbins, a database administrator at Reed Elsevier, a Europe-based publishing company best known for its LexisNexis subsidiary. The company runs Oracle RAC as its standard, mainly for high availability.

But there can be technical benefits as well, according to Dave Welch, chief technology officer at House of Brick, an Omaha, Neb.-based Oracle consultancy. Welch said that if an end user adds the VMware layer to any Oracle instance, whether it be RAC or single-instance, it allows for a lot more flexibility of that instance or group of nodes.

“Now, I can clone that whole thing as a unit and allow a non-technical director of development or QA to clone these environments with the push of a button,” Welch said. “You can separate availability of the environment with the availability of the hardware. Before, you would have to add dedicated hardware to that environment.”

Welch added that VMware can also help when Oracle RAC does node eviction. If Oracle RAC thinks that a cluster is not performing correctly, it does a hardware reset and the surviving Oracle instances “clean up the mess,” as Welch put it. If you put VMware around it, that reset goes to the virtual machine instead of the entire hardware. That allows DBAs to put other workloads on the same machine as RAC without having to worry about those workloads going down if RAC performs a node eviction.

However, there are some who say that running Oracle RAC on VMware doesn’t yield any discernible benefits. Alex Gorbachev, the chief technology officer of Ottawa-based Oracle consultancy Pythian, is one of them. He said that end users usually deploy RAC for two reasons that tend to go hand-in-hand: high availability and scalability. But he said it’s easier to scale smaller numbers of large, physical-only nodes than large numbers of small virtual nodes.

Gorbachev added that Oracle RAC is “very sensitive to the infrastructure.” By that he means that because RAC is a shared-everything database, actions must synchronize across nodes. For that to happen, each node must have enough resources to work. Since virtualization on VMware results in sharing CPU and memory resources, he said, running Oracle RAC on VMware is a little dicey.

“The benefits of RAC [on VMware] are really none,” Gorbachev said. “You might have a bit of independence between clusters, but clusters are sensitive. Anything within VMware that could cause change in the CPU or memory total could cause a change in the cluster.”

Another strike against running Oracle RAC on VMware is Oracle’s support policy on it -- or rather, its lack of support. That is why at Reed Elsevier, despite Robbins’ desire to put Oracle RAC on VMware, they haven’t done it yet.

Mark Fontecchio can be reached at [email protected].

Dig Deeper on Oracle RAC and database clustering

Data Management
Business Analytics
Data Center
Content Management