Free Oracle Clusterware for Linux Support Customers

April 3, 2008

Oracle Technology Network announces that “Oracle Unbreakable Linux support customers at the Basic and Premier support levels now can download and deploy Oracle Clusterware at no additional license fee or support cost.”

 ubl-80.jpg  Oracle Unbreakable Linux.

 Before this the clusterware needed at least one Standard Edition License.

Now you can download the clusterware and use it as an extension of your Linux to make virtually any application highly available even without having an Oracle Database Server.

For more info on this and ready made scripts see my previouse post on how to protect a single instance database with the clusterware.

 This is really cool!

=;-)  oracle_final_linux.gif


Oracle Database 10g Real Application Clusters Handbook

February 10, 2007

I have just received the recent new book (FEB. 2007!)
by K. Gopalakrishnan
Oracle Database 10g Real Application Clusters Handbook
 rac_handbook.jpg

Gopalakrishnan is a Senior Principal Consultant in Oracle Corporation and was avarded “Oracle Author of the year 2005” by Oracle Magazine in for his 2005 published book “Oracle Wait Interface”, which was one of the few books of the last year about Oracle which were really worth their money. Pls see my post about this book also.

After having a first glance at the new book I am very enthusiastic about it, because it contains large chapters about cache fusion (36 pages!) and the Global Resource Directory GRD (>20 pages) explained from scratch , amoung other intereseting chapters about troubleshooting RAC, RAC deployment…
Again we find the high quality we already have enjoyed in Gopalakrishnan´s Wait Interface book, and I bet it will be a success story as well.

Table of contents

Part I: High Availability Architecture and Clusters
Chapter 1: Introduction to High Availability and Scalability
Chapter 2: Clustering Basics and History
Chapter 3: RAC Architecture
Part II: Installation, Configuration, and Storage
Chapter 4: RAC Preinstallation
Chapter 5: RAC Installation
Chapter 6: Automatic Storage Management
Part III: RAC Administration and Management
Chapter 7: RAC Basic Administration
Chapter 8: RAC Advanced Administration
Chapter 9: RAC Backup and Recovery
Chapter 10: RAC Performance Management
Part IV: Advanced Concepts in RAC
Chapter 11: Global Resource Directory
Chapter 12: A Closer Look at Cache Fusion
Chapter 13: Workload and Connection Management
Chapter 14: RAC Troubleshooting
Part V: Deploying RAC
Chapter 15: RAC Extensions
Chapter 16: Developing Applications for RAC
APPENDIX A: RAC REFERENCE
APPENDIX B: ADDING AND REMOVING CLUSTER NODES
APPENDIX C: REFERENCES
INDEX

ISBN 007146509X / 9780071465090

Paperback, 421 pages


New Demos on 10gR2 RAC available on OTN

January 15, 2007

There is a series about Oracle 10gR2 in Oracle By Example on OTN which provides us with a large number of really brilliant mini lessons in the form of little java viewlets which you can run in your browser.
Specially the RAC demos appletts are very handy.

The man behind this is Jean-Francois Verrier. He works as a course developer for Oracle University and puts a lot of effort into this series.
Here is a list of this brilliant collection on OTN which has been updated just recently with a number of new demos.
It is worth checking it out definitely!

This is what you can find there at the moment for Oracle Database 10g Release 2 and especially Oracle 10g RAC:

Manageability:

Using SQL Baselines

Using Metric Baselines

Transport a tablespace version to another database

Automatic Storage Management (ASM):

Install ASM single instance in its own home

Install ASM single instance in the same home

Migrate a database to ASM

Setup XML DB to access ASM

Access ASM files using ASMCMD

Real Application Clusters (RAC)

RAC Deployment Series (Beta):

Setting Up RAC Storage

Setting Up Openfiler Storage

Setting Up iSCSI On Client Side

Using fdisk to Partition Storage

Setting Up Multipathing On Client Side

Installing and Configuring ASMLib

Setting Up Storage Permissions On Client Side

Installing Oracle Clusterware

Installing Real Application Clusters

Configuring ASM Storage

Installing Oracle Database Single Instance Software (Part I)
Installing Oracle Database Single Instance Software (Part II)

Creating Single Instance Database

Protecting Single Instance Database Using Oracle Clusterware

Converting Single Instance Database to RAC Database

Adding a Node to Your Cluster

Extending Oracle Clusterware to Third Node

Extending RAC Software to Third Node

Extending RAC Database to Third Node

Rolling Upgrade Your Entire Cluster

Creating a RAC Physical Standby Database

Installing and Configuring OCFS2

Setting Up RAC Primary Database in Archivelog Mode

Backing Up RAC Primary Database

Configuring Oracle Network Services on Clustered Standby Site

Creating RAC Physical Standby Database Using OCFS2 Storage

Checking RAC Physical to RAC Standby databases Communication

Converting RAC Physical Standby Database to RAC Logical Standby Database

Rolling Upgrade Oracle Clusterware

Rolling Upgrade Oracle Clusterware on Clustered Primary Site (10.2.0.1 to 10.2.0.2)

Rolling Upgrade Oracle Clusterware on Clustered Standby Site (10.2.0.1 to 10.2.0.2)

Upgrading your RAC Standby Site

Upgrading RAC Standby Database From 10.2.0.1 to 10.2.0.2 (Part I)

Upgrading RAC Standby Database From 10.2.0.1 to 10.2.0.2 (Part II)

Switching Primary and Standby Databases Roles

Upgrading your old RAC Primary Site

Upgrading RAC Old Primary Database From 10.2.0.1 to 10.2.0.2 (Part I)

Upgrading RAC Old Primary Database From 10.2.0.1 to 10.2.0.2 (Part II)

Switching Back Primary and Standby Databases Roles

Miscellaneous:

RAC scale example

RAC speedup example

Use Transparent Application Failover (TAF) with SELECT statements

Oracle Clusterware:

Use Oracle Clusterware to protect the apache application

Use Oracle Clusterware to protect the Xclock application

RAC Voting Disk Multiplexing

Patch Oracle Clusterware in a Rolling Fashion

CSS Diagnostic Case Study

RAC OCR Mirroring

Services:

Runtime Connection Load Balancing example

Basic use of services in your RAC environment

Installs and Enterprise Manager:

Install ASM in its own home in a RAC environment

Convert a single-instance database to a RAC database using Grid Control

Push Management Agent software using Grid Control

Clone Oracle Clusterware to extend your cluster using Grid Control

Clone ASM home to extend your cluster using Grid Control

Clone database home to extend your cluster using Grid Control

Add a database instance to your RAC database using Grid Control

RAC Concepts:

RAC VIP Concepts

RAC Object Affinity Concepts

Rolling Release Upgrade (Beta): 10.2.0.1 to 10.2.0.2:

Upgrading your Standby Site

Upgrading RAC Standby Database From 10.2.0.1 to 10.2.0.2 (Part I)

Upgrading RAC Standby Database From 10.2.0.1 to 10.2.0.2 (Part II)

Switching Primary and Standby Databases Roles

Upgrading your old Primary Site

Upgrading RAC Old Primary Database From 10.2.0.1 to 10.2.0.2 (Part I)

Upgrading RAC Old Primary Database From 10.2.0.1 to 10.2.0.2 (Part II)

Switching Back Primary and Standby Databases Roles


How to use Oracle Clusterware to protect a single instance database

December 7, 2006

In Oracle 10g it is possible to use the Oracle Clustersoftware to protect single instance databases as well as cluster databases.

There is a new set of code samples on OTN and a brilliant white paper by the authors Philip Newlan and Roland Knapp, which shows how to protect a Single Instance Oracle Database with Oracle Clusterware.

It is packed into a .zip file and contains the white paper plus a number of little perl scripts:
- a script to start / stop / check the Oracle Listener in a cold failover configuration.
- a script for start / stop / check the Oracle Instance in a cold failover configuration.
- a script for start / stop / check the Oracle ASM Instance in a cold failover configuration

The white paper covers three different case studies:
(here is an excerpt from the white paper)

- Case 1 No Oracle Software installed on either node
- Case 2 Oracle with datafiles installed into a local instance of ASM
- Case 3 Oracle with datafiles installed onto a local filesystem

The ‘ending case’ configuration for each of these is as follows:
- Case 1 Oracle Clusterware installed onto both nodes, Clustered ASM installed onto both nodes in the cluster, Single Instance Database Home on each node. In this case Oracle Clusterware automatically protects the ASM instance (by default). This section discusses scripts to protect the single Instance database.
- Case 2 Oracle Clusterware installed onto both nodes, ASM instance ready to be started on new node. New database home on 2nd node, . This paper discusses scripts to protect the Listener, ASM and single Instance database. In this case the
ASM instance is non-clustered.
- Case 3 Oracle Clusterware installed onto both nodes, OCFS 2 installed as a
common shared filesystem for the datafiles. Local Oracle Homes on each node. This paper discusses scripts to protect the listener and single Instance database.

Nice one!!


crs_stat Utility

September 7, 2006

I am in Geneva this week, teaching part of a RAC 10g class at the World Trade Center togehter with Tamás Kerepes from Budapest. He is an enormously skilled collegue of mine and I am happy to get to know him.

I have demonstrated the migration of an entire cluster database from OCFS to ASM life in the class yesterday, including all datafiles, redologs, controlfiles, spfile and backups. This was a really thrilling and a little tricky process, but I succeeded at the end!
I will post about the procedure soon.

I came across a nice little option for the crs_stat utility which I was not aware of and which Tamás pointed out to me:
crs_stat -t
gives a short listing of the contents of the cluster registry rather than the long listing of the simply scr_stat without the -f.
This can come in very handy with a large cluster registry!
Look at the difference!
Here is a demo:
[oracle@ed-toraclin9a oracle]$ crs_stat –help
Usage: crs_stat [resource_name [...]] [-v] [-l] [-q] [-c cluster_member]
crs_stat [resource_name [...]] -t [-v] [-q] [-c cluster_member]
crs_stat -p [resource_name [...]] [-q]
crs_stat [-a] application -g
crs_stat [-a] application -r [-c cluster_member]
crs_stat -f [resource_name [...]] [-q] [-c cluster_member]
crs_stat -ls [resource_name [...]] [-q]
[oracle@ed-toraclin9a oracle]$ crs_stat
NAME=ora.RDBB.RDBB1.inst
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ed-toraclin9a

NAME=ora.RDBB.RDBB2.inst
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ed-toraclin9b

NAME=ora.RDBB.db
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ed-toraclin9b

NAME=ora.ed-toraclin9a.ASM1.asm
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ed-toraclin9a

NAME=ora.ed-toraclin9a.LISTENER_ED-TORACLIN9A.lsnr
TYPE=application
TARGET=ONLINE
STATE=OFFLINE

NAME=ora.ed-toraclin9a.gsd
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ed-toraclin9a

NAME=ora.ed-toraclin9a.ons
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ed-toraclin9a

NAME=ora.ed-toraclin9a.vip
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ed-toraclin9a

NAME=ora.ed-toraclin9b.ASM2.asm
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ed-toraclin9b

NAME=ora.ed-toraclin9b.LISTENER_ED-TORACLIN9B.lsnr
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ed-toraclin9b

NAME=ora.ed-toraclin9b.gsd
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ed-toraclin9b

NAME=ora.ed-toraclin9b.ons
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ed-toraclin9b

NAME=ora.ed-toraclin9b.vip
TYPE=application
TARGET=ONLINE
STATE=ONLINE on ed-toraclin9b

[oracle@ed-toraclin9a oracle]$ crs_stat -t
Name Type Target State Host
————————————————————
ora….B1.inst application ONLINE ONLINE ed-t…in9a
ora….B2.inst application ONLINE ONLINE ed-t…in9b
ora.RDBB.db application ONLINE ONLINE ed-t…in9b
ora….SM1.asm application ONLINE ONLINE ed-t…in9a
ora….9A.lsnr application ONLINE OFFLINE
ora….n9a.gsd application ONLINE ONLINE ed-t…in9a
ora….n9a.ons application ONLINE ONLINE ed-t…in9a
ora….n9a.vip application ONLINE ONLINE ed-t…in9a
ora….SM2.asm application ONLINE ONLINE ed-t…in9b
ora….9B.lsnr application ONLINE ONLINE ed-t…in9b
ora….n9b.gsd application ONLINE ONLINE ed-t…in9b
ora….n9b.ons application ONLINE ONLINE ed-t…in9b
ora….n9b.vip application ONLINE ONLINE ed-t…in9b


Using the Cluster Verification Utility to check RAC setup

August 25, 2006

Starting with Oracle database 10g Release 2 we can use the new Cluster Verification Utility (CVU) called cluvfy to check a cluster environment before and after a RAC installation.
This comes in very handy when you want to check your hardware and software setup before making the big step of installing the cluster ready services and rdbms software for the cluster db.
The CVU is shipped with the clusterware, but you can also get it directly from Oracle Technology Network.
It is already available for the following platforms:
Linux
Solaris
HP
AIX
Windows

Under linux you must first of all install the cvuqdisk rpm .

CVU requires Java 1.4.1 installed, needs about 30Mb of diskspace on the invocation node and about 25 Mb of working direcory on every node in the nodelist. The working directory must exeist on all nodes and the invoking user must have write access there.

Let’s take a short look at what we can do with cluvfy:
[oracle@ed-olraclin1b bin]$ /stage/10gR2/rdbms/clusterware/cluvfy/runcluvfy.sh -help
USAGE:
cluvfy [ -help ]
cluvfy stage { -list -help }
cluvfy stage {-pre-post} [-verbose]cluvfy comp { -list -help }cluvfy comp [-verbose]

Let’s provoke an error in order to get more help!
[oracle@ed-olraclin1b bin]$ /stage/10gR2/rdbms/clusterware/cluvfy/runcluvfy.sh stage -pre
ERROR:Invalid command line syntax.
USAGE:
cluvfy stage {-pre-post} [-verbose]
SYNTAX (for Stages):
cluvfy stage -post hwos -n [ -s ] [-verbose]
cluvfy stage -pre cfs -n -s [-verbose]
cluvfy stage -post cfs -n -f [-verbose]
cluvfy stage -pre crsinst -n [-r { 10gR1 10gR2 } ]

[ -c ] [ -q ]

[ -osdba ]

[ -orainv ] [-verbose]

cluvfy stage -post crsinst -n [-verbose]
cluvfy stage -pre dbinst -n [-r { 10gR1 10gR2 } ]

[ -osdba ] [-verbose]

cluvfy stage -pre dbcfg -n -d [-verbose]

As we see, cluvfy uses stages, which are states of the system, either pre- or post. With the pre-stages you can check whether the requirements for an installation are met, with the post-stages you can check if everything with the installation worked well.

Here is an example for a pre-installation check before installing clusterware on a linux cluster:

[oracle@ed-olraclin1a .ssh]$ /stage/10gR2/rdbms/clusterware/cluvfy/runcluvfy.sh stage -pre crsinst -n ed-olraclin1a,ed-olraclin1b
Performing pre-checks for cluster services setup
Checking node reachability
Node reachability check passed from node “ed-olraclin1a”.
Checking user equivalence…
User equivalence check passed for user “oracle”.
Checking administrative privileges…
User existence check passed for “oracle”.
Group existence check passed for “oinstall”.
Membership check for user “oracle” in group “oinstall” [as Primary] passed.
Administrative privileges check passed.
Checking node connectivity…
Node connectivity check passed for subnet “138.2.147.0″ with node(s) ed-olraclin1b,ed-olraclin1a.
Node connectivity check passed for subnet “192.168.1.0″ with node(s) ed-olraclin1b,ed-olraclin1a.
Suitable interfaces for VIP on subnet “138.2.147.0″:ed-olraclin1b eth0:138.2.147.72ed-olraclin1a eth0:138.2.147.70
Suitable interfaces for the private interconnect on subnet “192.168.1.0″:ed-olraclin1b eth1:192.168.1.12ed-olraclin1a eth1:192.168.1.11
Node connectivity check passed.

Checking system requirements for ‘crs’…
Total memory check passed.
Free disk space check passed.
Swap space check passed.
System architecture check passed.
Kernel version check passed.
Package existence check passed for “make-3.79″.
Package existence check passed for “binutils-2.14″.
Package existence check passed for “gcc-3.2″.
Package existence check passed for “glibc-2.3.2-95.27″.
Package existence check passed for “compat-db-4.0.14-5″.
Package existence check passed for “compat-gcc-7.3-2.96.128″.
Package existence check passed for “compat-gcc-c++-7.3-2.96.128″.
Package existence check passed for “compat-libstdc++-7.3-2.96.128″.
Package existence check passed for “compat-libstdc++-devel-7.3-2.96.128″.
Package existence check passed for “openmotif-2.2.3″.
Package existence check passed for “setarch-1.3-1″.

Group existence check passed for “dba”.
Group existence check passed for “oinstall”.
User existence check passed for “nobody”.
System requirement passed for ‘crs’ Pre-check for cluster services setup was successful.

This is what we want to see at the end of the test!
Only with this result you can be sure that an installation of of the cluster ready services will be successful.

There are a number of good metalink notes on CVU available.
As a first entry I would recommend Note:339939.1
Subject: Running Cluster Verification Utility to Diagnose Install Problems
Here you find detailed information about the supported platform-versions as well as how to install CVU and how it works.


New RAC demos on Oracle By Example

July 18, 2006

A new demo viewlet has been added to the very handy collection of demos for Oracle 10gR2 REAL APPLICATION CLUSTERS in the Oracle By Example series.
It shows how virtual IPs are used.
The man behind these nice little demos is Jean-Francois Verrier.
He designs a number of Oracle’s core courses which are delivered by Oracle Education.


RAC TTT in Utrecht finished

July 6, 2006

Today we’ll finish the Train The Trainer event for
Oracle 10gR2 Real Application Clusters
in Utrecht, The Netherlands.

Jean-Francios Verrier

It was such a pleasure and fun also to meet Jean-Francois Verrier again who has designed this course. He is also responsible for a number of other Oracle classes.

This picture shows all the delegates taking part in the training.
From the left there are:
John Boyle, Joel Goodman, Harald van Breederode, Jean-Francois Verrier, , Lothar Auert, John Abrahams, Andreas Reinhardt, Roman Niehoff, Thomas Hoogerwerf
and in the first row Pete Jones and me.
This week was so densly filled with highly compressed knowledge and inspiring talks.
I am so happy that I had the chance to get to know all these highly skilled experts and I hope that I can stay in touch with them.
It was a pitty that two of the German trainers had to leave one day too early.


How to convert a single instance database to a RAC database

July 4, 2006

There are multiple ways in Oracle 10gR2 to convert a single instance database into a
clustered database.
You can use the following methods to do this:
- dbca
- enterprise manager
- rconfig utility (new in 10gR2!)

After you have checked if your operating system requirements are met you can choose either of these methods to do the conversion.
You should make sure first that your hardware and operating system are supported.
To do so you check with your hardware vendor and for the platforms you check metalink.

Once this is done you go on with either methode:
- dbca does most of the tasks of the conversion automatically
- grid control provides fully support the conversion process
there is a very nice demo for this in the OBE (Oracle By Examples demos for RAC 10gR2 section)
- new with 10gR2 there is utility called rconfig which is located in $ORACLE_HOME/bin.
It uses a file called $ORACLE_HOME/assistants/rconfig/sampleXMLs/ConvertToRAC.xml which you need to edit in order to adjust some parameters as needed and then save it under a new name. It contains the parameter for the Convert verify option which accepts three different values:
CONVERT VERIFY= “YES” — performs checks to make sure everything is in place before starting the conversion
- “NO” — starts conversion right away without checking the prerequisits
- “ONLY” — only performs the prerequisits-check

You then call the utility and hand over your modified xml file:
$ rconfig my_db_conversion_file.xml


Harald van Breederode training the trainers

July 4, 2006

Harald van Breederode,
a blind trainer from the Netherlands,
delivered a training on RAC installation
and also a special one on storage configurations
like SAN NAS and ASM today .
This was a very impressing lecture because
Harald is a very knowledgeable teacher who has
been delivering trainigs on RAC since 4 years
and also has been a UNIX administrator for
a long time as well.

The training is held in his classroom and it is really amazing how he can navigate though the location and how he even uses the whiteboard and develops complex pictures on it without seeing anything.
This picture shows his special braille display. It has 80 left and 80 right mice buttons. And he uses a voice synthesizer to get the powerpoints read out to him. Which is done in a speed that nobody else but him can follow.

This picture shows him demonstrating
his special equipment to us.


Follow

Get every new post delivered to your Inbox.