RACing ahead with Oracle on VMware - Part 2: Oracle RAC and RAW disk setup on Windows 2003 Enterprise Server

Thursday Nov 3rd 2005 by Tarry Singh
Share:

Part two of this series continues the discussion of Oracle RAC, how to install the VMware tools and set up RAW disks on Windows 2003 Enterprise Server.

A Brief Pep talk

Part 1 of this series gave you a gentle nudge on what Virtualization is and how you could use this technology to test and run all kinds of scenarios on your PC, before you started doing it in production. Contrary to what people say, you CAN deploy an Oracle RAC on VMware using the ESX Servers.

Before I introduce Oracle RAC, and to keep my articles interesting I will try to give a little pep talk so that I have your total attention. We will then talk about Oracle RAC and end up this article with some print shots of installing and setting up Windows 2003 Enterprise edition for RAC readiness, such as preparing RAW disks.

Do you identify yourself as being stuck in situations like these?

  • Your application is becoming popular and is apparently getting *mission critical* all of a sudden.
  • You have scaled-up your servers (meaning added as many processors, memory) to the maximum and you do not know how to contain the load anymore.
  • Scaling out the load (spreading it across more machines), you have heard from some guys that you could have a bunch of "pizza boxes" to run your database.
  • You are confronted with a choice and you want to cluster your databases? But wait a minute, is it clustering what you want? You do indeed want High Availability (HA), but don't you need something to balance out the load?

And, if your manager has given you an ultimatum to go out there and look for the best solution, this list of questions will keep growing. MSSQL offers a clustering option where you can make your database highly available but NOT load balanced! Many people are misinformed about this whole difference between high availability and load balancing; they are indeed two different things, VERY VERY different things! If you have been a managing a SQL Server cluster you know very well that you are merely managing an HA option in which you won’t even experience the failover scenario. So is mere HA good? No, I would say! You need a solution (and I mean in terms of a hardware resource) that also does the work for you while it is in its so-called passive state. That is exactly what Oracle RAC can do for you. It is a groundbreaking technology where you can do a whole lot of things, other than load balancing. So what is Oracle RAC?

Oracle RAC (Real Application Clusters)

Clustering technology is not new (actually a lot of things that we do today have found their origin long ago) , DEC introduced its VAX cluster and Oracle made its entry into the clustering world with its OPS (Oracle Parallel Server) which was a humble beginning. Did you know that oracle 9i had some 400 odd new features? Well RAC was one of them!

The RAC architecture has changed a lot since its inception so we will quickly check all the features from 9i up. In addition, as we go ahead with our series we will try to dissect the RAC understanding and move further into Administration, troubleshooting, management, performance, migration of single instance to Oracle RAC. I want to make sure that you really get on to playing on RAC. Also, note that with Oracle 10g onwards you do not need to buy an Enterprise Edition, you can very well deploy RAC with a Standard Edition. Upon writing this article, I also read somewhere that Oracle will be releasing its Express Edition (beta is already released) which will be totally free and lightweight. Who knows, someday you may REALLY be RACing on PC’s!

Now let’s take a quick look at the latest features of Oracle RAC in the latest product 10g Release 2.

New features in Oracle 10g Release 2

  • Cluster Ready Services are called Oracle Clusterware now. It has also grown in size; it is about 180MB. You can also use it for Single Instance databases.
  • Oracle Clusterware High Availability API Support available.
  • Cluster Verification Utility (CVU), handy if you want to check the cluster features such as node availability, administration, etc.

Use these commands before Clusterware installation for system verification

cluvfy comp sys [ -n node_list ] -p { crs | database } }  
[-r { 10gR1 | 10gR2 } ] [ -osdba osdba_group ] [ -orainv orainventory_group ] [-verbose]
  • Cloning the Clusterware and Nodes

    The advantages are obvious. You can install once and deploy anywhere--be it development to production or production to test.

  • Oracle Load Balancing Advisory

    This advisor monitors the load across the cluster and advises appropriately to the AWR (automatic workload repository) and a Fast Application Notification (FAN) event is published.

  • Oracle RAC Runtime Connection Load Balancing
  • Oracle Fast Connection Failover (FCF)
  • Watch out for these deprecated views (Since 10g Release 1):
    • GV$CLASS_CACHE_TRANSFER and V$CLASS_CACHE_TRANSFER
    • GV$CACHE_LOCK and V$CACHE_LOCK
    • GV$FALSE_PING and V$FALSE_PING
    • GV$FILE_CACHE_TRANSFER and V$FILE_CACHE_TRANSFER
    • GV$GC_ELEMENTS_WITH_COLLISIONS and V$GC_ELEMENTS_WITH_COLLISIONS
    • GV$TEMP_CACHE_TRANSFER and V$TEMP_CACHE_TRANSFER
    • GV$LOCK_ACTIVITY and V$LOCK_ACTIVITY
  • Changing the Archiving Mode

    You do not have to modify the CLUSTER_DATABASE parameter to change the archiving mode in RAC. You can do it while the database is mounted (and not open)!

  • Oracle 10g Release 2 allows for dynamic RMAN channel allocation for RAC environments.
  • Multiple Clusterware files: Clusterware file redundancy is achieved by maintaining two copies of the Oracle Cluster Registry (OCR) and three or more copies of the voting disk files thereby eliminating the single point of failure and the continual dependency on 3rd party support.

As you have seen, the 10g version has loads of new features and I particularly like the cluster verify and the Cloning Utility. Please read the documentation for more on new features.

OK, now having given this gentle introduction to the Oracle RAC (I know, there is a lot more to it than meets the eye but we’ll cover that later).

Installing Windows 2003 Enterprise Edition

All right now, let’s start cooking our OS system inside our virtual machine.

Step 1: Preparing to install using the *.iso file

Click for larger image

Step 2: This we will install after having installed the OS

Step 3: Next, we go through a series of "Next" clicks, and I am sure you have done Windows Installations before so we will skip the 'next parts.' After having partitioned the primary hard drive (SCSI0:0), press enter

Click for larger image

Step 4: Here you might get a warning should you choose a weak password.

Click for larger image

Step 5: Choose your time zone

Click for larger image

Step 6: Typical Settings

Step 7: Restart the OS after having installed it.

Step 8: Install the VMware tools by clicking on top of the pane (outside the VMachine). Again, it is a simple few NEXT clicks.

Step 9: Setup your IP Address, Click on properties.

Step 10: Fill in your IP Address (I have my Home WLAN and I fill in IP Addresses as per my Wi-Fi Gateway).

Step 11 : Amazing, I have a 1 Gbits connection inside my Virtual Machine (Imagine if you were setting up two VM’s , which by the way I will do later using RHEL 4 Eval Version. You can achieve amazing results with the high speed inter-connects on your clusterware.

Step 12: I did have some problems connecting to this VM via my laptop (via WLAN) so I go ahead and also install Terminal Services.

Click for larger image

Setting up RAW Disks

Here we will go about setting up RAW disks. Clusterware NEEDS to find these disks for installation. Otherwise it will not start.

Step 1: Add Disks to the VM.

Click for larger image

Step 2: 5 G should be enough.

Click for larger image

Step 3: Choose manage my computer.

Step 4: Upon right clicking the "Disk Management," disk installation wizards pop up!

Click for larger image

Step 5: Next

Click for larger image

Step 6: Next, these Disks should NOT be checked or else your Clusterware will NOT function!

Step 6: After a couple of 'NEXTS', you see that the Disks are BASIC and Unallocated.

Step 7: Right Click "Disk 1" to create a partition.

Step 8: Choose extended partition.

Step 9: Again, click NEXT two times and you see the Disk turn Green. Right click to create a "logical drive."

Step 10: Upon clicking NEXT three times, you must choose "do not assign a drive letter…"

Step 11: Do NOT format this partition!

Step 12: Now upon completing the RAW disk, you can see for yourself that it differs from your "regular cooked" disk.

Click for larger image

Disk Setup using Shared Array/SAN kind of simulation

To get closer to the typical scenario (each instance residing in its own node) and accessing a (simulated) shared array/SAN, I have successfully been able to simulate this scenario on VMware GSX Server by following these steps.

  • Get GSX Server Evaluation
  • Get Plain SCSI disks (I have linked you too the site, scroll down to get the disks of your choice, I typically pick a 10G disk). Then all you need to do is to unzip it (it might take a while though).
  • Install two (or more) identical OS’s.
  • Edit both *.vmx files and see the following print dumps.

Click for larger image

As you can see above, I unzipped one 20g disk and one 10g disk and having edited both the *.vmx files, I can see the disks available on both machines!

Machine 1:
Click for larger image

Machine 2:
Click for larger image

Shared Array/SAN on other physical disk: You can keep this shared disk on another disk to achieve better results during tests. As you can see below, I have it on a K:\ Disk while my VM’s are on another physical disk. Note: Do edit your *.pln file to point to that location or else you will get an error!



Conclusion

We are done setting up RAW disks. So is this really a Shared Array/SAN kind of scenario? Well you do come a bit close with the plaindisk scenario. What we will do is simulate the RAC by installing CRS (Cluster Ready Services) or Clusterware (as it is called in Oracle 10g Release 2), Install Software, Configure Listener, etc., Install Database, Add Instance using SRVCTL utility (which has a lot of fancy commands which we will cover later in the coming articles). If you do however want to install two VMware machines with a shared array/SAN simulated setup I suggest you follow these steps with the plaindisks (I will detail it out in other articles).

» See All Articles by Columnist Tarry Singh

Share:
Home
Mobile Site | Full Site
Copyright 2017 © QuinStreet Inc. All Rights Reserved