Sie sind auf Seite 1von 63

Oracle 11gR2 11.2.0.

3 2-node RAC on
Windows 2008 on VMware Workstation
9 – Intro
Posted on July 10, 2013 by gruffdba • Posted in Oracle, RAC, VMware, Windows •
Tagged 11.2.0.3, 11gr2, 11gR2 RAC, RAC install, step by step, VMWare Workstation,
Windows RAC • Leave a comment

A while back I put together a very detailed ten step process to create a simple two-node
RAC on VMware Workstation using Red Hat Linux 5.5.

There were already many blog posts on creating RAC systems, including some using
VMware, but partly because I felt that none of them were detailed for someone not
already an expert in Linux, and partly because I wanted to learn for myself, I created my
own.

The Oracle 11gR2 2-node RAC on VMware Workstation has consistently been one of
my most popular posts, and so I decided to see how it would work using Windows
instead of Linux.

Windows is a very popular operating system and the backbone of many IT departments.
Although it is often criticized by those who prefer UNIX or Linux, Windows has many
powerful features, and in departments where it is already needed to run Exchange or
SharePoint, there can be many solid reasons for wanting to use Windows to support
Oracle instead of another choice.

This ten-part post walks through the provisioning of Windows based VMs, the
modifications to the registry and the installation of a Windows based DNS sever.

Finally we install Grid and Database software to complete the RAC system.

To complete the steps in these posts, you will need the following:

 A host computer with at least 8GB of RAM


 VMware Workstation 9 or later install
 40GB of free disk
 Windows Server 2008R2 64-bit install media
 Oracle 11gR2 11.2.0.3 for Windows install media

The parts are laid out as follows:

Part I – Install the OS. (30 mins)

Part II – Adding NICs, IP resolution and Windows workgroup. (30 mins)

Part III – Registry modifications. (10 mins)


Part IV – Users, Groups and Security Policies. (20 mins)

Part V – Add a DNS server. (20 mins)

Part VI – Clone the VM. (20 mins)

Part VII – Add shared disk. (30 mins)

Part VIII – Install Grid Infrastructure. (60 mins)

Part IX – Install Database. (60 mins)

Part X – Create a database with DBCA. (10 mins)

All timings are suggested and approximate, and assume the reader will diligently follow
all steps.

Those familiar with the steps may move much faster. Those looking to try this for the
first time may need a bit longer.

Good luck!
racle 11gR2 11.2.0.3 2-node RAC on
Windows 2008 on VMware Workstation
9 – Part I
Posted on July 3, 2013 by gruffdba • Posted in Oracle, RAC, VMware, Windows •
Tagged 11.2.0.3, 11gr2, 11gR2 RAC, RAC install, step by step, VMWare Workstation,
Windows RAC • Leave a comment

Time Required: 30 minutes

Class Materials:

 50GB of free disk


 An operational VMware Workstation 9 or later install
 Windows Server 2008R2 64-bit install media

To create our Oracle RAC database on Windows on VMware Workstation 9, we first


need to create a Windows VM.

I am using an ISO image of Windows Server 2008R2 that I downloaded from MSDN.
An MSDN subscription offers developers the opportunity to test out different
technologies from Micorosft for development purposes.

We are going to run a basic OS install and then customize for the needs of Oracle RAC.
At various points we will have the opportunity to clone the VM and make backups.

Okay, to begin, let’s fire up VMware Workstation and create a new VM.

From the main VMware Workstation menu, select File->New Virtual Machine. We are
going to create a Custom (advanced) VM.
Select Custom (Advanced) for our new VM

On the next screen we confirm that our new VM will be compatible with Workstation
9.0.

The new VM will be compatible with Workstation 9.0

On the next screen we point the installer at our ISO DVD image containing the
Windows Server 2008 software.

On the next screen we select the version of Windows we are installing. VMware
Workstation has already detected that the ISO is Windows Server 2008 R2 Datacenter.
It also asks us for the Windows activation key and a first account to create.

I am not going to enter the activation key at this point. But I will go ahead and create an
oracle account named “oracle”. This first account will automatically be added to the
Administrator group in Windows. Set an easy to remember password and click Next.
On the next screen we name our VM. I am going to continue the opera theme of my
Linux RAC but this time I am going to use La Boheme as my inspiration. I am going to
name my first Windows VM Rodolfo. The second node later on will be named Mimi.
Obviously you may choose whatever names you like.

VMware Workstation allows us to set the location for the VM files. Since this is a
Windows laptop, VMs are created in the user’s Documents area in a sub-directory
called Virtual Machines.

We can specify the location of our VM files at this point. The default is in the user’s
Documents directory.

Next we select the number of processors for our VM. Since this is for demonstration
purposes only, a single vCPU and core is fine here. We don’t want to over tax the host
machine.
Next we set the amount of RAM for our new VM. In this example I set it to 3GB. RAC
on Windows requires a minimum of 2.5GB and I have run into problems with less than
3GB per node.

Remember you will end up with two of these machines running concurrently, so be sure
not to exceed your physical RAM. Since I have 8GB of RAM on my laptop, I am
comfortable giving the VMs 3GB each.

Remember that you will have two VMs running concurrently. Make sure the combined
VRAM does not exceed your physical RAM.

Next we set the networking option. We will to revisit this later on for the RAC, but for
now we can select “Use Bridged Networking”. This will allow our VM to have its own
IP on the network and should allow you to access the Internet from inside the VM.
Since I am deploying this on a laptop, that IP will change as I travel, but that’s okay.
A bridged network adapter will allow us to access the internet from inside our VM.

Next we add a SCSI controller. Again we will revisit this later on, but for now we can
select the recommended LSI Logic SAS option.

Next we add a SCSI disk to our VM. Each of our two RAC VMs will eventually have a
local disk each, plus access to shared disks, but for now we can simply “Create a new
virtual disk”.
Next we select SCSI as the disk type.

Next we size the new disk at 40GB and select “Split virtual disk into multiple files”. At
the end of the install the new disk will actually be about 8GB, but sizing it larger allows
us to install the Oracle binaries later on.

Splitting the disk into multiple smaller parts allows us some flexibility in backing up the
files later.
Next we specify the disk file name. VMware Workstation likes to name the disk file
using the same name as the VM. Although this allows disks from multiple VMs to live
in the same directory, the names start to get very unwieldy, especially if you later add a
second and third disk. I prefer to name the local disk “boot disk” and keep the local disk
in the same directory as the other VM files. Be sure to add the vmdk extension so you
can identify the files as VM disk files later on.

The default names get cumbersome when you have multiple local disks.

Finally we are ready to create our new VM. If everything looks good, click the Finish
button to start the Easy Install process.
VMware Workstation will now load the Windows Server 2008 operating system into
your new VM as well as handle all initial start up tasks such as setting time zones,
setting security policy, partitioning the local disk, installing VMware tools and so on.

If we are successful, at the end of the process we should be presented with the Windows
login screen:

Now would be a great time to shut down the new VM and make a clone to be kept for
future uses.
Oracle 11gR2 11.2.0.3 2-node RAC on
Windows 2008 on VMware Workstation
9 – Part II
Posted on July 3, 2013 by gruffdba • Posted in Oracle, RAC, VMware, Windows •
Tagged 11.2.0.3, 11gr2, 11gR2 RAC, RAC install, step by step, VMWare Workstation,
Windows RAC • 2 Comments

Time Required: 30 minutes

Class Materials:

 None

Next we need to add additional networking components to allow our RAC nodes to
communicate.

Oracle RAC requires two separate networks, one for public traffic and one for private
cluster traffic. Both adapters must use static IP addresses.

VMware Workstation already installed a Bridged Adapter as part of the install process,
and this adapter will provde internet access to our VM. But in most cases, the IP address
of this adapter will change as DHCP leases expire, or in the case of a laptop, the
machine moves from network to network.

Therefore, we need to add two additional NICs on virtual networks between the RAC
nodes, one to be our public network and the other to be our private network.

In addition we will need static IP addresses for the virtual IPs of the cluster, and for the
SCAN (Single Client Address Name) address. It is a good idea to have these ready
before you start. In my example I am going to use the following:

Rodolfo Mimi
Public IP 10.10.1.30 10.10.1.40
Private IP 10.10.2.30 10.10.2.40
Virtual IP 10.10.1.31 10.10.1.41
SCAN IP 10.10.1.32 10.10.1.42

If you do not have virtual networks for the 10.10.1.x and 10.10.2.x subnets already set
up, then you will need to do the following:

Use the VMware Workstation interface and select Edit->Virtual Network Editor.

This allows us to create new virtual networks that allow our guest VMs to talk amongst
themselves, to the host computer and/or to the outside world.
For this example I am going to create VMnet2 and VMnet3.

VMnet2 will be a host-only network allowing communication to other VMs and the
host, but not to the outside world. We will assign a Subnet IP of 10.10.1.0 to VMnet2,
and a Subnet mask of 255.255.255.0

VMnet3 will also be a host-only network allowing communication to other VMs and the
host, but not to the outside world. We will assign a Subnet IP of 10.10.2.0 to VMnet3,
and a Subnet mask of 255.255.255.0

For both VMnet2 and VMnet3 DHCP is enabled.

Now we have our two networks created in VMware, we will add two new NICs to our
VM. Shut down your new Windows VM and if you want, make a clone or snapshot
backup.

Right click on the VM in the VMware Workstation menu, and select Settings. This will
bring up the Virtual Machine Settings panel.

Now click Add

The Add Hardware Wizard allows us to select Network Adapter


On the Network Adapter Type menu, we will select the Custom: Specific virtual network
radio button, and use the drop down to select VMnet2.

Now repeat the above steps to add another Network Adapter, this time using VMnet3.

Our final VM hardware configuration should look like this:


.

.
.

.
.

Q,f

Restart the Windows VM and log in as Administrator.

Start a command prompt and type ncpa.cpl to access the Network Connections
interface. You can also reach this interface by selecting:

Start->Control Panel->View network status and tasks->Change Adapter Settings

From this interface we can see three network adapters listed. In my example they are
named:
 Local Area Connection
 Local Area Connection 2
 Local Area Connection 3

The first Local Area Connection is the bridged adapter to the internet. We will not
change this.

Local Area Connection 2 is the new NIC we added on VMnet2. This will be our public
network. Right click on the adapter and select Rename.

Change the name of the adapter to Public.

Now right click on the newly named Public adapter and select Properties.

At the properties panel, highlight the Internet Protocol Version 4 (TCP/IPv4) option and
select Properties.

When the properties window open, change the selection to Use the following IP
address: and enter the IP address as 10.10.1.30 or whatever you have selected for your
public IP address.

The Subnet mask should be 255.255.255.0.

Leave the Default gateway blank.

Select Use the following DNS server addresses: and then enter the Preferred DNS
server as 127.0.0.1. This will point DNS requests back to the local machine. We will be
installing a DNS server in an upcoming step.
If all looks good, click OK.

Now rename the Local Area Connection 3 adapter to Private.

Using the same procedure you used for the Public adapter, set the IP address to
10.10.2.30, remembering to set the subnet mask and DNS server entries as before.

Now using the same Network connections interface, press the ALT key to access the
Advanced Menu. Then select Advanced Settings. You can also short cut this as ALT-
S/ALT-N.
In the Advanced Settings menu, use the green arrow keys to the right to move the Public
connection to the top of the bind order, with Private being second, and the Local Area
Connection being third.

Next we are going to set our default network to a private network. This will avoid
certain problems during the install.

Open a command prompt and enter the command:

control.exe /name Microsoft.NetworkandSharingCenter

This will open the Network and Sharing Center interface. Alternatively you can
navigate here by selecting:

Start->Control Panel->Network and Internet->Network and Sharing Center

Look to where you see Network 3 listed and click on the “Public network” listed
underneath.
Change the network type to “Work network” and then click Close.

Next we are going to set the IP address for our two nodes in the hosts file. A hosts file is
a simple lookup table to resolve IP addresses.

Open a command prompt and edit the file:

%SystemRoot%\system32\drivers\etc\hosts

And add the following entries:

127.0.0.1 localhost.localdomain localhost

# Public on VMnet2
10.10.1.30 rodolfo.hadesnet rodolfo
10.10.1.40 mimi.hadesnet mimi

# Virtual on VMnet2
10.10.1.31 rodolfo-vip.hadesnet rodolfo-vip
10.10.1.41 mimi-vip.hadesnet mimi-vip

# Private on VMnet3
10.10.2.30 rodolfo-priv.hadesnet rodolfo-priv
10.10.2.40 mimi-priv.hadesnet mimi-priv
Save the file and then test IP resolution by pinging the MIMI machine (which does not
exist yet). You should see Windows trying the address 10.10.1.40 which it got from the
hosts file you just edited.

C:\>ping mimi.hadesnet

Pinging mimi.hadesnet [10.10.1.40] with 32 bytes of data:


Control-C
^C
C:\>

You may note we did not add the SCAN addresses in the hosts file. SCAN addressess
must resolve to more than one address and this is not possible in a hosts file. We will
use a DNS server to achieve this is a later step.

Finally we are going to change the machine name and workgroup name.

Open a command prompt and type:

sysdm.cpl

This will open the System Properties menu. Alternatively you can select:

Start->Control Panel->System and Settings->System->Change Settings

Click the Change button and enter the machine as RODOLFO. Enter the workgroup
name as LABOHEME.
CLick OK and Windows will wait a few moments before reporting Welcome to the
LABOHEME workgroup. Click OK and you will be prompted to reboot your VM.

Alright, that is the networking taken care of, this might be a good time to shut down
your VM and make a backup.
Oracle 11gR2 11.2.0.3 2-node RAC on
Windows 2008 on VMware Workstation
9 – Part III
Posted on July 3, 2013 by gruffdba • Posted in Oracle, RAC, VMware, Windows • Tagged
11.2.0.3, 11gr2, 11gR2 RAC, RAC install, step by step, VMWare Workstation, Windows RAC •
Leave a comment

Time Required: 10 minutes

Class Materials:

 None

Next we need to edit the Windows registry to change certain behaviours and to make
sure we are ready for a RAC install.

Open a command prompt and type regedit to open the Windows registry editor.

Then navigate to the following key:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\
System

Enter a new value called LocalAccountTokenFilterPolicy and set it to type


DWORD(32-bit). Set the value data to 1.
It is very important to set the value name correctly with no trailing spaces. This new
value allows remote access to the Windows operating system from a named account that
exists on this machine as well, provided the passwords are the same.

Later we will install Oracle as the oracle user, and by keeping the passwords consistent
between the machines, oracle on Rodolfo will be able to access resources on Mimi.
Without this option we would have to use a doman account or install Oracle as the
Administrator user.

Next we going to disable IPv6 across all interfaces except the loopback interface. Some
guides indicate this is an optional step, but failing to do this results in errors on the
database install.

Navigate to the following key:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters

Enter a new value called DisabledComponents and set it to type DWORD(32-bit). Set
the value data to ffffffff.

Next, navigate to the following key:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

Edit or create a value called DisableDHCPMediaSense of type DWORD (32-bit) and


set the value data to 1. This change stops Windows from uncoupling an IP address from
a network interface card when the link to the local switch is lost.
Lastly we are going to locate the following registry keys:

 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAccess\Parameter
s\FirewallPolicy\DomainProfile
 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAccess\Parameter
s\FirewallPolicy\PublicProfile
 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAccess\Parameter
s\FirewallPolicy\StandardProfile

In each case we are going to set the value EnableFirewall to 0. This change completely
disables the Windows firewall and allows the Oracle installer to complete.

If you need a shortcut, you can create a REG file with all the changes listed, and then
execute this in Windows by double-clicking it.

My complete winrac.reg file can be found here: winrac.reg. WordPress does not allow
regsitry files to be uploaded, so the extension is DOC, although it is a raw ASCII text
file.

Download the file and copy the contents to a file on your Windows VM called
winrac.reg. Then execute the file.

When you execute the reg file, Windows will ask you to confirm the changes.

Once the changes have been made, reboot the VM for the changes to take effect.
Oracle 11gR2 11.2.0.3 2-node RAC on
Windows 2008 on VMware Workstation
9 – Part IV
Posted on July 3, 2013 by gruffdba • Posted in Oracle, RAC, VMware, Windows • Tagged
11.2.0.3, 11gr2, 11gR2 RAC, RAC install, step by step, VMWare Workstation, Windows RAC • 1
Comment

Time Required: 20 minutes

Class Materials:

 None

Next we are going to modify the Windows security policy and account settings to
support Oracle RAC.

Open a command prompt and enter the following command:

secpol

This opens the Local Security Policy interface. Alternatively you can navigate here by
using:

Start->Administrative Tools->Local Security Policy

Using the interface, navigate to Local Policies->Security Options and scroll down to
User Account Control: Behavior of the elevation prompt for administrators in Admin
Approval Mode.
Double click on this option and change the behaviour to Elevate without prompting.

Next we are going to manually create the ORA_DBA group. Although the installer will
do this automatically on Windows, I have had mixed results when using non
Administrator accounts, so I prefer to do this step manually.

Open a command prompt and enter the following command:

compmgmt

This opens the Computer Management interface. Alternatively you can navigate here by
using:
Start->Administrative Tools->Computer Management

Select Local Users and Groups->Groups and right click to add a new group.

Create a new group called ora_dba and add both the Administrator and oracle users to
it.

Now log out of Windows and log back in as the oracle user. You can also use the Switch
User option to do this.

Once logged in as oracle, open a command prompt and create a new directory called
TMP on the boot disk. Usually this is the C: drive.
Now enter the following command:

control.exe nusrmgr.cpl

This opens the User Accounts interface. Alternatively you can navigate here by using:

Start->Control Panel->User Accounts->User Accounts

Now select “Change my environment variables” and change both TEMP and TMP to
the directory you just created – C:\TMP

Oracle 11gR2 11.2.0.3 2-node RAC on


Windows 2008 on VMware Workstation
9 – Part V
Posted on July 3, 2013 by gruffdba • Posted in Oracle, RAC, VMware, Windows • Tagged
11.2.0.3, 11gr2, 11gR2 RAC, RAC install, step by step, VMWare Workstation, Windows RAC • 4
Comments

Time Required: 20 minutes


Class Materials:

 none

Next we are going to add a DNS server to our Windows VM.

The DNS server is needed to support the SCAN address. If you have an existing DNS
server available to you, then by all means use it, but in my case I do not, so I am going
to create one on my Windows VM.

Open a command prompt and enter the following command:

ServerManagerLauncher

This opens the Server Manager interface. Alternatively you can navigate here by
clicking on the button on the taskbar.

Click on the Roles button, and select Add Roles.

Click Next and then select DNS Server. Click Next twice and then click Install.
Windows will now install a DNS server.
Click Close to return to the Server Manager interface, and now click on the DNS Server
button to configure the DNS server.

Navigate to:

Roles->DNS Server->DNS->MIMI->Forward Lookup Zones


Right click on Forward Lookup Zones and select New Zone.

Using the wizard, create a new Primary Zone called hadesnet. The wizard will suggest a
new file of hadesnet.dns and you should accept this file-name.
On the Dynamic Update screen, select Do not allow dynamic updates and click Next.
Click Finish to complete the creation of the new zone.

Under the Forward Lookup Zones you should now see the hadesnet zone listed. Right
click on the zone and select New Host (A or AAAA)….
On the New Host screen, enter a name of laboheme-scan which will yield a fully
qualified domain name of laboheme-scan.hadesnet. Enter an IP address of 10.10.1.32
and select Add Host.
Repeat this operation to a second host, using the same host name of laboheme-scan and
an IP address of 10.10.1.42.

Open a command prompt and check that the laboheme-scan name resolves to the two
addresses we specified:

C:\>nslookup laboheme-scan.hadesnet
Server: localhost
Address: 127.0.0.1

Name: laboheme-scan.hadesnet
Addresses: 10.10.1.32
10.10.1.42

Okay, we have finished the RAC preparations as far as we can go as a single machine.
Shut down your VM and make a backup of it.

Then use the VMware Workstation interface to create a Full Clone and name the clone
Mimi, or whatever you want to call your second RAC node.
Oracle 11gR2 11.2.0.3 2-node RAC on
Windows 2008 on VMware Workstation
9 – Part VI
Posted on July 3, 2013 by gruffdba • Posted in Oracle, RAC, VMware, Windows • Tagged
11.2.0.3, 11gr2, 11gR2 RAC, RAC install, step by step, VMWare Workstation, Windows RAC •
Leave a comment

Time Required: 20 minutes

Class Materials:

 none

We are now ready to clone our VM. From this point forward we will have two
machines, and we will start to think of them individually.

Make sure your Windows VM is shutdown.

As mentioned earlier I am going to call my two virtual machines Rodolfo and Mimi after
the lovers from the opera La Boheme.

Right click on the Windows VM and select Manage->Clone. This will pull up the
cloning dialog box. If you have been making clones of the machine throughout the
previous parts then you will already be familiar with this dialog.

I recommend you select The current state of the virtual machine and Create a full
Clone.
VMware will prompt you for a name for your new clone. In my example I cloned the
exisitng machines called Rodolfo to create the machine Mimi.

Keep a note on disk free space, since full clones can consume disk space fast.

Once the cloning is complete, start up the Mimi machine as we need to rename and re-IP
the machine.

Use the ncpa.cpl command again to access the Network Connections interface, and
repeat the steps you used in Step 2 to change the Private IP address to 10.10.2.40, and
the Public IP address to 10.10.1.40.
Next, use the command:

command sysdm.cpl

To open the System Properties interface, and select the Change button to change the
hostname to MIMI.

When this is done, reboot the VM.

Oracle 11gR2 11.2.0.3 2-node RAC on


Windows 2008 on VMware Workstation
9 – Part VII
Posted on July 3, 2013 by gruffdba • Posted in Oracle, RAC, VMware, Windows • Tagged
11.2.0.3, 11gr2, 11gR2 RAC, RAC install, step by step, VMWare Workstation, Windows RAC • 1
Comment

Time Required: 30 minutes

Class Materials:
 5GB of disk space
 an ASCII text editor

Next we are going to add a shared disk to our two Windows VMs.

VMware Workstation makes the allocation of shared disk to VMs very simple. Shared
disk has been the biggest obstacle to create Oracle RAC clusters at home, but VMware
gives us a reliable and portable solution that does not require fire-wire hacks, your own
NFS server or a SCSI disk array.

Make sure both VMs are shut down. If you want to make a clone of your progress then
now is your last chance to do so without the complication of shared external disk.

We will add a new disk to Rodolfo first, and then add the same disk into Mimi.

Using the VMware Workstation menu, right click on Rodolfo and select Settings.

This will bring up the Virtual Machine Settings menu. Click on the Add button.

At the Add Hardware Wizard menu, select Hard Disk and click Next.

Select Create a new virtual disk and click Next.


When the Select a Disk Type menu appears, select SCSI (Recommended) and for mode
check Indepenent and the radio button Persistent.

When the Specify Disk Capacity menu appear, set the new disk size at 5GB. This should
be just enough to support our demo RAC database. If you have an abundance of disk
space then by all means set the disk size much larger.

Check the All all disk space now. button and Store virtual disk as a single file
NOTE: These last two options are very important for our RAC. Trying to create a
shared disk with VMware Workstation using thin-provisioning will result in disk
corruption.

Next VMware Workstation will ask where you want to store your new disk and what
you want to call it. By default it will want to place the virtual disk in the same directory
as the rest of the Rodolfo VM. However this new disk is to be shared, so I prefer to
place it in a separate directory.

VMware Workstation stores its VMs by default in the user’s Documents directory under
a sub-directory called Virtual Machines. In this directory you will find sub-directories
for both our VMs Rodolfo and Mimi. I suggest creating a new sub-directory here called
Shared Disk and storing our new virtual disk in the Shared Disk directory with the name
asm disk 1.vmdk.

VMware will ask you confirm your selection. Press Finish to confirm.
Now we need to move our new disk to a different virtual SCSI device within the VM. In
order to avoid all manner of cluster disk issues, we need to place the shared disks on a
different SCSI controller to the local disks.

Highlight the Rodolfo VM in the VMware Workstation menu and select Settings. When
the Virtual Machine Settings menu appears, highlight Hard Disk 2 and select the
Advanced button on the right hand side.

The Hard Disk Advanced Settings menu allows to modify the Virtual device node. By
default this will be set to SCSI 0:1, but we need to change this to SCSI 1:0. This will
move our new disk to SCSI controller 1, device 0.

Repeat these steps on the Mimi VM, but instead of creating a new virtual disk, select
“Use an existing virtual disk”, and select the same VMDK file you created for the new
disk for Rodolfo.
NOTE: On Mimi make sure you also set the disk to SCSI 1:0.

Next we will have to resort to a little hacking to make our shared disk really sharable.
We are now leveraging VM functionality that is not really supported in VMware
Workstation 9, but does appear to work, at least for demo purposes.

Navigate to the directory where the Rodolfo VM files are stored, in most cases this will
be Documents/Virtual Machines/Rodolfo. In there you will find a file called
Rodolfo.vmx

The VMX file contains the hardware profile of the VMs we have created. Before we do
anything else, make a copy of it so we have something to go back to if we make a mess.

Open the VMX file with an ASCII editor and add the following entries:

disk.locking = "FALSE"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize = "0"
diskLib.dataCacheMinReadAheadSize = "0"
diskLib.dataCachePageSize = "4096"
diskLib.maxUnsyncedWrites = "0"
scsi1.sharedBus = "virtual"

These changes force the VMs to not try to buffer reads and writes to the disk, which
would result in block corruption to the shared database. The new directives can be
added anywhere in the VMX file, although I tend to add them immediately above the
SCSI settings.

Repeat these steps for the Mimi.VMX file.

Now start up Rodolfo. As you do so, you might notice a small warning in the bottom
right hand corner of the VMware window that states:

Clustering is not supported for WMware Workstation – this setting will be ignored
Don’t worry about this. This is expected behavior.

When Windows has booted up, log in as either Administrator or oracle, and open a
command prompt. Then enter DISKPART.

The Disk Partition utility is used to partition new disks.

Use the LIST DISK command to see what disks are available. For my VM I have two,
the 40GB boot disk I created originally, and the new 5GB disk I just added.

C:\>diskpart

Microsoft DiskPart version 6.1.7601


Copyright (C) 1999-2008 Microsoft Corporation.
On computer: RODOLFO

DISKPART> list disk

Disk ### Status Size Free Dyn Gpt


-------- ------------- ------- ------- --- ---
Disk 0 Online 40 GB 0 B
Disk 1 Offline 5120 MB 5120 MB

Disk 1 is shown as being offline, so first let’s bring it online:

DISKPART> select disk 1

Disk 1 is now the selected disk.

DISKPART> online disk

DiskPart successfully onlined the selected disk.

New disks default to being readonly, so we need to set the new disk to read-write:

DISKPART> attributes disk clear readonly

Disk attributes cleared successfully.

Next we are going to create a partition on the disk. With Windows Server 2008,
Windows now automatically offsets the partition to 1MB.

DISKPART> create partition extended

DiskPart succeeded in creating the specified partition.

DISKPART> create partition logical

DiskPart succeeded in creating the specified partition.

DISKPART> list partition

Partition ### Type Size Offset


------------- ---------------- ------- -------
Partition 0 Extended 5118 MB 1024 KB
* Partition 1 Logical 5117 MB 2048 KB

Now start up Mimi.

When Mimi starts, log in to Windows as Administrator or oracle. Then open a


command prompt and type DISKPART.

Repeat the steps used on Rodolfo to list the disks, select disk 1, online the shared disk
and clear the read-only attributes.

Microsoft DiskPart version 6.1.7601


Copyright (C) 1999-2008 Microsoft Corporation.
On computer: MIMI

DISKPART> list disk

Disk ### Status Size Free Dyn Gpt


-------- ------------- ------- ------- --- ---
Disk 0 Online 40 GB 0 B
Disk 1 Offline 5120 MB 1024 KB

DISKPART> select disk 1

Disk 1 is now the selected disk.

DISKPART> online disk

DiskPart successfully onlined the selected disk.

DISKPART> attributes disk clear readonly

Disk attributes cleared successfully.

If we now check the partition table, we can see that the partitions created on Rodolfo are
visible on the shared disk:

DISKPART> list partition

Partition ### Type Size Offset


------------- ---------------- ------- -------
Partition 0 Extended 5118 MB 1024 KB
Partition 1 Logical 5117 MB 2048 KB

DISKPART>

Somtimes, when the disk is onlined, Windows will automatically assign a drive letter to
it, and prompt you to format the disk.

If this happens, ignore the dialog box and use DISKPART to remove the drive letter
assignment:
DISKPART> list volume

Volume ### Ltr Label Fs Type Size Status


Info
---------- --- ----------- ----- ---------- ------- ---------
--------
Volume 0 D DVD-ROM 0 B No Media
Volume 1 C NTFS Partition 39 GB Healthy
System
Volume 2 E RAW Partition 5117 MB Healthy

DISKPART> select volume 2

Volume 2 is the selected volume.

DISKPART> remove letter=e

DiskPart successfully removed the drive letter or mount point.

We now have shared disk on both Rodolfo and Mimi.

Oracle 11gR2 11.2.0.3 2-node RAC on


Windows 2008 on VMware Workstation
9 – Part VIII
Posted on July 3, 2013 by gruffdba • Posted in Oracle, RAC, VMware, Windows • Tagged
11.2.0.3, 11gr2, 11gR2 RAC, RAC install, step by step, VMWare Workstation, Windows RAC • 2
Comments

Time Required: 60 minutes

Class Materials:

 Oracle 11gR2 Grid Infrastructure software for Windows

Next we are going to install the Oracle Grid Infrastructure software.

The Grid Infrastructure will provide the Cluster software that allows the RAC nodes to
communicate, as well as the ASM software to manage the shared disks.

To begin, download the zip file from the Oracle software download website and unzip
on Rodolfo.

There is one zip file for 11gR2 11.2.0.3 Windows 64-bit called
p10404530_112030_MSWIN-x86-64_3of7.zip. This is available from MOS under patch
number 1040530.

Having unzipped it, we should have a directory called grid.


Log in to Windows as the oracle user. Start a command prompt session as
Administrator by right-clicking on the Command Prompt icon and selecting Run as
Administrator.

Navigate to the grid install directory and there is a file called runcluvfy.bat. This script
check to see if the cluster is ready for RAC install. Run the script as follows:

runcluvfy stage -pre crsinst -n rodolfo,mimi -verbose

I have included the complete script output from my Windows cluster so you can see the
expected output:

E:\windows\11.2.0.3\grid>runcluvfy stage -pre crsinst -n rodolfo,mimi


-verbose

Performing pre-checks for cluster services setup

Checking node reachability...

Check: Node reachability from node "RODOLFO"


Destination Node Reachable?
------------------------------------ ------------------------
mimi yes
rodolfo yes
Result: Node reachability check passed from node "RODOLFO"

Checking user equivalence...

Check: User equivalence for user "oracle"


Node Name Status
------------------------------------ ------------------------
mimi passed
rodolfo passed
Result: User equivalence check passed for user "oracle"

Checking node connectivity...

Interface information for node "mimi"


Name IP Address Subnet Gateway
Def. Gateway HW Address MTU
------ --------------- --------------- ---------------
--------------- ----------------- ------
Public 10.10.1.40 10.10.1.0 On-link
UNKNOWN 00:0C:2A:84:F3:90 1500
Private 10.10.2.40 10.10.2.0 On-link
UNKNOWN 00:0C:93:84:F3:86 1500
Local Area Connection 192.168.204.131 192.168.204.0 On-link
UNKNOWN 00:0C:29:84:F3:7C 1500

Interface information for node "rodolfo"


Name IP Address Subnet Gateway
Def. Gateway HW Address MTU
------ --------------- --------------- ---------------
--------------- ----------------- ------
Public 10.10.1.30 10.10.1.0 On-link
UNKNOWN 00:0C:2A:6C:D7:AB 1500
Private 10.10.2.30 10.10.2.0 On-link
UNKNOWN 00:0C:93:6C:D7:A1 1500
Local Area Connection 192.168.204.130 192.168.204.0 On-link
UNKNOWN 00:0C:29:6C:D7:97 1500

Check: Node connectivity of subnet "10.10.1.0"


Source Destination
Connected?

------------------------------ ------------------------------ ----


-----------
mimi[10.10.1.40] rodolfo[10.10.1.30] yes

Result: Node connectivity passed for subnet "10.10.1.0" with node(s)


mimi,rodolo

Check: TCP connectivity of subnet "10.10.1.0"


Source Destination
Connected?

------------------------------ ------------------------------ ----


-----------
RODOLFO:10.10.1.30 mimi:10.10.1.40
passed
RODOLFO:10.10.1.30 rodolfo:10.10.1.30
passed

Result: TCP connectivity check passed for subnet "10.10.1.0"

Check: Node connectivity of subnet "10.10.2.0"


Source Destination
Connected?

------------------------------ ------------------------------ ----


-----------
mimi[10.10.2.40] rodolfo[10.10.2.30] yes

Result: Node connectivity passed for subnet "10.10.2.0" with node(s)


mimi,rodolo

Check: TCP connectivity of subnet "10.10.2.0"


Source Destination
Connected?

------------------------------ ------------------------------ ----


-----------
RODOLFO:10.10.2.30 mimi:10.10.2.40
passed
RODOLFO:10.10.2.30 rodolfo:10.10.2.30
passed

Result: TCP connectivity check passed for subnet "10.10.2.0"

Check: Node connectivity of subnet "192.168.204.0"


Source Destination
Connected?
------------------------------ ------------------------------ ----
-----------
mimi[192.168.204.131] rodolfo[192.168.204.130] yes

Result: Node connectivity passed for subnet "192.168.204.0" with


node(s) mimi,rdolfo

Check: TCP connectivity of subnet "192.168.204.0"


Source Destination
Connected?

------------------------------ ------------------------------ ----


-----------
RODOLFO:192.168.204.130 mimi:192.168.204.131
passed
RODOLFO:192.168.204.130 rodolfo:192.168.204.130
passed

Result: TCP connectivity check passed for subnet "192.168.204.0"

Interfaces found on subnet "10.10.1.0" that are likely candidates for


a private
interconnect are:
mimi Public:10.10.1.40
rodolfo Public:10.10.1.30

Interfaces found on subnet "10.10.2.0" that are likely candidates for


a private interconnect are:
mimi Private:10.10.2.40
rodolfo Private:10.10.2.30

Interfaces found on subnet "192.168.204.0" that are likely candidates


for a priate interconnect are:
mimi Local Area Connection:192.168.204.131
rodolfo Local Area Connection:192.168.204.130

WARNING:
Could not find a suitable set of interfaces for VIPs
Checking subnet mask consistency...
Subnet mask consistency check passed for subnet "10.10.1.0".
Subnet mask consistency check passed for subnet "10.10.2.0".
Subnet mask consistency check passed for subnet "192.168.204.0".
Subnet mask consistency check passed.

Result: Node connectivity check passed

Checking multicast communication...

Checking subnet "10.10.1.0" for multicast communication with multicast


group "20.0.1.0"...
Check of subnet "10.10.1.0" for multicast communication with multicast
group "20.0.1.0" passed.

Checking subnet "10.10.2.0" for multicast communication with multicast


group "20.0.1.0"...
Check of subnet "10.10.2.0" for multicast communication with multicast
group "20.0.1.0" passed.
Checking subnet "192.168.204.0" for multicast communication with
multicast group "230.0.1.0"...
Check of subnet "192.168.204.0" for multicast communication with
multicast group "230.0.1.0" passed.

Check of multicast communication passed.

Checking the status of Windows firewall


Node Name Enabled? Comment
------------ ------------------------ ------------------------
mimi no passed
rodolfo no passed
Result: Windows firewall verification check passed

Check: Total memory


Node Name Available Required
Status
------------ ------------------------ ------------------------ --
--------
mimi 2.9995GB (3145208.0KB) 922MB (944128.0KB)
passed
rodolfo 2.9995GB (3145208.0KB) 922MB (944128.0KB)
passed
Result: Total memory check passed

Check: Available memory


Node Name Available Required
Status
------------ ------------------------ ------------------------ --
--------
mimi 2.5102GB (2632160.0KB) 50MB (51200.0KB)
passed
rodolfo 2.4308GB (2548924.0KB) 50MB (51200.0KB)
passed
Result: Available memory check passed

Check: Swap space


Node Name Available Required
Status
------------ ------------------------ ------------------------ --
--------
mimi 5.9972GB (6288572.0KB) 2.9995GB (3145208.0KB)
passed
rodolfo 5.9972GB (6288572.0KB) 2.9995GB (3145208.0KB)
passed
Result: Swap space check passed

Check: Free disk space for "mimi:C:\Windows\temp"


Path Node Name Mount point Available Required
Staus
---------------- ------------ ------------ ------------ --------
---- -----------
C:\Windows\temp mimi C 30.1868GB 1GB
pased
Result: Free disk space check passed for "mimi:C:\Windows\temp"

Check: Free disk space for "rodolfo:C:\Windows\temp"


Path Node Name Mount point Available Required
Staus
---------------- ------------ ------------ ------------ --------
---- -----------
C:\Windows\temp rodolfo C 29.9761GB 1GB
pased
Result: Free disk space check passed for "rodolfo:C:\Windows\temp"

Check: System architecture


Node Name Available Required
Status
------------ ------------------------ ------------------------ --
--------
mimi 64-bit 64-bit
passed
rodolfo 64-bit 64-bit
passed
Result: System architecture check passed

Checking length of value of environment variable "PATH"


Check: Length of value of environment variable "PATH"
Node Name Set? Maximum Length Actual Length
Comment

---------------- ------------ ------------ ------------ --------


--------
mimi yes 5119 100 passed
rodolfo yes 5119 130 passed
Result: Check for length of value of environment variable "PATH"
passed.

Checking for Media Sensing status of TCP/IP


Node Name Enabled? Comment
------------ ------------------------ ------------------------
mimi no passed
rodolfo no passed
Result: Media Sensing status of TCP/IP check passed

Starting Clock synchronization checks using Network Time


Protocol(NTP)...
No NTP Daemons or Services were found to be running

Result: Clock synchronization check using Network Time Protocol(NTP)


passed

Checking if current user is a domain user...


Check: If user "oracle" is a domain user

WARNING:
User "oracle" could not be verified as a domain user, domain "RODOLFO"
is eithe
an invalid domain or can not be contacted
Check: Time zone consistency
Result: Time zone consistency check passed

Checking for status of Automount feature


Node Name Enabled? Comment
------------ ------------------------ ------------------------
mimi yes passed
rodolfo yes passed
Result: Check for status of Automount feature passed

Pre-check for cluster services setup was successful.

E:\windows\11.2.0.3\grid>
The cluster has passed the checks, so we are ready to install 11.2.0.3 Grid Infrastructure.
Type setup to launch the Oracle installer.

At the first screen, select Skip software updates.

We are going to select the first option; Install and Configure Grid Infrastructure for a
Cluster

On the next screen we select Advanced Installation


On the next screen we select the languages to install. I am happy with just English.

On the next screen we unselect Configure GNS and then define our cluster name and
SCAN port number. I am going to call my cluster laboheme with a SCAN name of
laboheme-scan.hadesnet. This matches the SCAN definition we added to our DNS
server back in Part V.
On the next screen we define our cluster nodes. Rodolfo is added automatically but we
need to add Mimi manually by selecting Add and then defining the addresses
mimi.hadesnet and mimi-vip.hadesnet. Again these should match the addresses we
added to the hosts file back in Part V.

On the next screen we define the ethernet networks to use for our cluster traffic. Since
we named these Public and Private earlier, the installer should default to the correct
setting.
On the next screen we choose Automatic Storage Management (ASM)

On the next screen we initially see no disks listed. Select the Stamp Disk option to bring
up the asmtool.
Using the ASM tool, stamp the disk \Device\Harddisk1\Partition1 with the prefix
DATA. Then click Finish.

We should now see the 5MB shared disk listed as a candidate disk. Set the Redundancy
to External and highlight the candidate disk. Click Next

On the next screen check Use same passwords for these accounts. Since this is a demo I
usually set these to something very simple like oracle. But make a note of this password
as you will need it in the next part.
The installer warns us that our password choice is not very secure. That’s okay, I don’t
forsee anyone really trying to hack into this RAC cluster.

On the next screen select Do not use Intelligent Platform Management Interface (IPMI).

On the next screen we choose where to install the Oracle Base and the Grid software.
On the next screen the installer warns us that the “oracle” user is not a domain account.
If this is the only issue, click the Ignore All button. Otherwise address the errors the
installer reports.

If you have followed these steps carefully the domain user error should be the only one.

On the next screen we can verify that we have defined everything correctly. If
everything looks good then press Install
The install process can take a while to complete. On my VM RAC it will take at least
thirty minutes to complete.

If the installation completes successfully you should see a screen as follows:


The Grid install is now complete.

Oracle 11gR2 11.2.0.3 2-node RAC on


Windows 2008 on VMware Workstation
9 – Part III
Posted on July 3, 2013 by gruffdba • Posted in Oracle, RAC, VMware, Windows •
Tagged 11.2.0.3, 11gr2, 11gR2 RAC, RAC install, step by step, VMWare Workstation,
Windows RAC • Leave a comment

Time Required: 10 minutes

Class Materials:

 None

Next we need to edit the Windows registry to change certain behaviours and to make
sure we are ready for a RAC install.

Open a command prompt and type regedit to open the Windows registry editor.

Then navigate to the following key:


HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\
System

Enter a new value called LocalAccountTokenFilterPolicy and set it to type


DWORD(32-bit). Set the value data to 1.

It is very important to set the value name correctly with no trailing spaces. This new
value allows remote access to the Windows operating system from a named account that
exists on this machine as well, provided the passwords are the same.

Later we will install Oracle as the oracle user, and by keeping the passwords consistent
between the machines, oracle on Rodolfo will be able to access resources on Mimi.
Without this option we would have to use a doman account or install Oracle as the
Administrator user.

Next we going to disable IPv6 across all interfaces except the loopback interface. Some
guides indicate this is an optional step, but failing to do this results in errors on the
database install.

Navigate to the following key:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters

Enter a new value called DisabledComponents and set it to type DWORD(32-bit). Set
the value data to ffffffff.

Next, navigate to the following key:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

Edit or create a value called DisableDHCPMediaSense of type DWORD (32-bit) and


set the value data to 1. This change stops Windows from uncoupling an IP address from
a network interface card when the link to the local switch is lost.
Lastly we are going to locate the following registry keys:

 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAcce
ss\Parameters\FirewallPolicy\DomainProfile
 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAcce
ss\Parameters\FirewallPolicy\PublicProfile
 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAcce
ss\Parameters\FirewallPolicy\StandardProfile

In each case we are going to set the value EnableFirewall to 0. This change completely
disables the Windows firewall and allows the Oracle installer to complete.

If you need a shortcut, you can create a REG file with all the changes listed, and then
execute this in Windows by double-clicking it.

My complete winrac.reg file can be found here: winrac.reg. WordPress does not allow
regsitry files to be uploaded, so the extension is DOC, although it is a raw ASCII text
file.

Download the file and copy the contents to a file on your Windows VM called
winrac.reg. Then execute the file.
When you execute the reg file, Windows will ask you to confirm the changes.

Once the changes have been made, reboot the VM for the changes to take effect.