DBA: Linux
   DOWNLOAD
 Oracle Database 10g
 Oracle Clusterware
 Data ONTAP Simulator (registration and serial # or systemid required)
 
   TAGS
linux, clustering, rac, All
 

 

Learning Oracle RAC with the NetApp Simulator


by Sachin Garg

 

With the help of Net Appliance's Data ONTAP Simulator, any DBA and/or Linux enthusiast (who is also a NetApp customer) can evaluate Oracle Real Application Clusters (RAC) on Linux with no up-front hardware investment.

Published March 2006

Oracle Real Application Clusters (RAC) is a fascinating technology that can enhance system scalability, availability, and performance in many different ways. However, evaluating or getting hands-on experience with RAC requires expensive hardware to which most DBAs do not have access.

Fortunately, with the help of Net Appliance's Data ONTAP Simulator for Linux—which offers the simulated experience of administering a NetApp storage appliance—any DBA and/or Linux enthusiast who wants to enrich his/her knowledge of RAC (and who is a NetApp customer) can do so with no up-front hardware investment. In this guide, I'll take you through this process, step by step.

First, a disclaimer: This guide is intended for educational and evaluation purposes only; Neither Oracle nor Network Appliance will support this configuration. (Furthermore, Network Appliance will not support simulator deployments in production or commercial environments.) However, you may contact me directly via ascii79@gmail.com for any issues regarding this configuration.

Architecture and Requirements

In this guide you will implement an Oracle9i RAC Release 2 or Oracle RAC 10g (Release 1 or 2) cluster on three Linux x86 desktops, without using any shared disks (FireWire, SAN, EMC, and so on) or any other extra hardware.

Following is the architectural digram for the setup.

 

figure 1

 

The minimum hardware requirements are provided below.

Machine Components Node 1 Node 2 Machine Hosting NetApp Simulator
Processor

> P11

> P11 > P11
RAM >=512 MB >=512MB >=512 MB
NIC (100 MB/S) 1 1 1
Disk space, including the OS* 15GB 15GB 50GB
Switch Common Common Common

*Includes the space required by the datafiles. Can also vary as per individual requirement.

You may use any of the following OSs:

Download a free copy of Data ONTAP Simulator from the NetApp Web site (NetApp serial number or System ID required). Review the accompanying license for information about support.

Setup

A detailed explanation of NetApp Simulator installation is beyond scope here; for that information, please refer to the bundled installation document.

This guide uses the following naming conventions:

  • The machine hosting NetApp Simulator will known as "NetApp Filer." (I run SLES9 on my installation.)
  • The machines hosting Oracle Home will be known as "Node 1" and "Node 2." (I run RHEL 4 Update 2 on both my installations.)

The following table lists the IP addresses used in my installation.

 

IP Address Hostname Machine

152.69.210.104

Anuaga

Host for NetApp software

152.69.210.35

Calvin

Node1

152.69.210.38

Hobbes

Node2

152.69.210.107

Netapp01

Host for NetApp Filer

 

You should able to telnet, ftp, and ping across these three machines, as illustrated below.

 

figure 2

 

You'll also need one extra-unassigned IP address (152.69.210.107 in my case) to be used by the NetApp Filer, one unique extra HOSTNAME (netapp01 in my case) for the NetApp Filer, and (optionally) the IP address of the default gateway.

Step 1

Un-tar 7.1RC2-tarfile-v18.tar to extract the simulator files on the machine (152.69.210.104 in my case) that will host the simulator.

[root@anuaga tmp]# tar xvf 7.1RC2-tarfile-v18.tar
simulator/
simulator/disks2.tgz
simulator/disks.tgz
simulator/doc/
simulator/doc/3rdpartycopyright.htm
simulator/doc/automation_guide.htm
simulator/doc/download_guide.htm
simulator/doc/faq/
simulator/doc/faq/cdrom_problems.htm
simulator/doc/faq/cluster_between_different_versions.htm
simulator/doc/faq/core_file_generation.htm
simulator/doc/faq/date_and_time_incorrect.htm
simulator/doc/faq/disk_simpull.htm
simulator/doc/faq/disk_sizes.htm
simulator/doc/faq/improve_performance.htm
simulator/doc/faq/known_limitations.htm
simulator/doc/faq/memory_advisor_wrong.htm
simulator/doc/faq/multiple_simulators_at_same_time.htm
simulator/doc/faq/multiple_versions.htm
simulator/doc/faq/network_interfaces_missing.htm
simulator/doc/faq/network_ports.htm
simulator/doc/faq/noparity_volumes.htm
simulator/doc/faq/power_failure.htm
simulator/doc/faq/recent_versions.htm
simulator/doc/faq/remove_disks.htm
simulator/doc/faq/running_in_background.htm
simulator/doc/faq/simulator_access_from_same_host.htm
simulator/doc/faq/simulator_files.htm
simulator/doc/faq/single_to_cluster_upgrade.htm
simulator/doc/faq/snapmirror_to_real_filer.htm
simulator/doc/faq/supported_linux.htm
simulator/doc/faq/system_requirements.htm
simulator/doc/faq/upgrade_simulator.htm
simulator/doc/faq/which_network_adapter.htm
simulator/doc/faq/who_do_i_call_for_support.htm
simulator/doc/faq/recover_the_admin_password.htm
simulator/doc/faq/syncmirror.htm
simulator/doc/faq/snaplock.htm
simulator/doc/images/
simulator/doc/images/burning_computer.gif
simulator/doc/images/corner_logo_fade.gif
simulator/doc/images/faq.gif
simulator/doc/images/floppy_disks.gif
simulator/doc/images/gears.gif
simulator/doc/images/keys.gif
simulator/doc/images/manageontap.jpg
simulator/doc/images/motumbrella.jpg
simulator/doc/images/top_tile.gif
simulator/doc/images/hitz.jpg
simulator/doc/installation.htm
simulator/doc/license_keys.htm
simulator/doc/sdk.style.css
simulator/doc/davehitzforeword.htm
simulator/doc/faq.htm
simulator/doc/troubleshooting.htm
simulator/license.htm
simulator/readme.htm
simulator/runsim.sh
simulator/setup.sh
simulator/sim.tgz

Step 2

Change directory to <extract path/simulator> and invoke setup.sh. Accept the default values as shown in Listing 1, expect for the values highlighted in blue.

Step 3

Go to to the installation directory cd /sim and invoke runsim.sh. Accept the default values as shown in Listing 2, expect for the values highlighted in blue. The section indicated in red can be accepted as shown.

Step 4

You can deploy this configuration two different ways: over NFS or over iSCSI Protocol.

If you are planning to use a block device, you must use iSCSI Protocol for node-to-node communication. Using that option has the extra benefit of allowing you to implement Oracle Automatic Storage Management (ASM) or Oracle Cluster File System(OCFS) as your filesystem. (See NetApp's Setup Guide for iSCSI Linux Initiator Support Kit.)

Let's take a look at each method; the examples below are based on the use of command line but you can also use the GUI if you prefer. Access the Web interface at

http://netapp01/na_admin

Login ID : root
Password : <set during the execution of runsim.sh>

Method 1: RAC over NFS. (See Listing 3.) Commands that need to be executed are in bold type.

For detailed information about installation of Oracle RAC over NFS with NetApp Filer, refer to this NetApp guide.

Method 2: RAC over iSCSI. (See Listing 4.) Commands that need to be executed are in bold type; variable that should change per your requirements are highlighted in blue.

Again, refer to this NetApp doc for detailed information about this process.

Install and Create the RAC Database

Refer to the official Oracle RAC Installation Guide for this step.

Known Issue: You must enable direct I/O while creating the database; otherwise, the database will become corrupted. The Directio option can be enabled by setting the init parameter filesystemio_options=directIO.

If you are using Oracle9i Database Release 2, please apply Patch 2448994 before starting the database. This issue was fixed in 9.2.0.7.0.


Sachin Garg is working as a Senior Consultant for Oracle. He has over 2 years of DBA experience and total industry experience of 4 years. He has a great passion for Linux and Oracle technology.

Acknowledgments

Thanks to Salim Akbani for providing the infrastructure, Saar Maoz for reviewing the document, and Justin Kestelyn for taking the interest in the document.

I would like to thank the following people for their technical expertise and for patiently answering all my queries: Sam Perciasepe, Ozgur Yuksel, Rudolf Wasser, Kevin Hill, Mala Desai, Greg D'Mello, and to many wonderful people in Oracle's India Support Center.

Nandini, for listening to me whole day.

Lastly, thanks to my darling Gungun for letting me finish this document :-)



Send us your comments