Howdy,
Was browsing the Red Hat website earlier and saw an ad that showed how you could replace a RAC with a RHCS setup (active/standby).
Customers that request a setup of an Oracle RAC cluster probably do not understand all of the work that goes into designing, implementing and working with it on a daily basis. They do not understand the redundancy setup. They just want close to 100% uptime (99.999%+) and are willing to pay for it.
I have done work on both sides. I have been around a Oracle RAC setup, and i have done some RHCS installations.
Both setups have a number of things that could be better, but both give a fairly good redundancy.
RHCS is a active/standby setup. The good part here is that you could have 2 nodes, one active for database X, and the other one active for database Y. Node 1 goes down, node 2 checks, and if it does not respond it fences the other node (fencing could be: rebooting the node through a iLO, RSA, shutting down the FC ports the node uses, etc). If fencing succeeds the node that is still alive takes over the resources. This takes about 1-2 minutes. You can have a lot of nodes in a RHCS cluster, and you can pretty much cluster anything.
1-2 minutes you say…..Having a database failover to a new machine, running consistency checks for the databases and be online in 2 minutes. 2 minutes to failover is a pretty impressive job. Sure, some transactions could have failed, but your DBA has been paged, the database is back up and running and if your applications are written correctly they should continue to run.
Oracle RAC runs each database on both nodes. That would be a active-active setup. That is also pretty impressive. Both nodes run the same databases, active sessions are failed over to the other node if a failure occurs. You can even add nodes to your RAC cluster to scale with the load on your databases. RAC could help you achieve 100% uptime and crazy performance if needed.
What i think that is missing from a RAC setup is fencing. RAC does not reboot node X/Y if it detects a problem. The nodes are supposed to withdraw them selfs, do not get me wrong, so far i have not had any problems with this setup. However i would feel a lot better if RAC would have fencing methods, and could reboot a node that is dubious…If the node is not working as expected, it should be rebooted and removed from the cluster without syncing data down to disks etc. I am pretty sure the people at Oracle are very intelligent and have no doubts that they know what they are doing. I am just a very “careful” person and i think the RHCS does a bit better when it detects a failure.
RHCS is a very advanced tool, and when used correctly with a redundant SAN configuration you can achieve 99.999% uptime (around 5 minutes of downtime per year). If you do not need to scale your Oracle databases to 2+ nodes in a active-active configuration choose RHCS over RAC. It saves you a whole lot of money, and is very well supported. Management is (from my perspective) a lot easier and adding new databases, storage etc is no issue.
I bet i sound like a Red Hat sales person, but with my experience i would choose RHCS over RAC (when i would not need the performance of a RAC cluster) anytime. It is a lot cheaper, very easy to manage and is very well supported by the Red Hat support team.
Respect to the RHCS team, you rock!…..It’s because of you i sleep with out fear every night :)!
Laters,
Finnzi