Sample configurations

In Primary site with the Bronze configuration and the disaster recovery site with the Gold configuration, the Primary site is in the Bronze configuration and the Disaster recovery site is in a Gold configuration.

Since the Primary site does not have dedicated fire drill disks, it is in a Bronze configuration. In the Bronze configuration, you re-purpose the mirror disks in the disaster recovery site to serve as fire drill test disks. The drawback with the Bronze configuration is that if a disk failure occurs when the fire drill is online at the Primary, it results in a site failure.

The FDSiteName value in a bronze configuration is the VXVM site name. For this configuration, the FDSiteName attribute values for the nodes at the primary follow:

FDSiteName@Node_A = pri

FDSiteName@Node_B = pri

The Disaster Recovery site is in a Gold configuration as it has dedicated fire drill disks at the site. For the FDSiteName attribute, use the VxVM site tag given to the firedrill disks. For this configuration, the FDSiteName attribute values for the nodes at the Disaster recovery site follow:

FDSiteName@Node_C = dr_fd

FDSiteName@Node_D = dr_fd

Set values for the SystemZones attribute to zero for Node_A and Node_B, and one for Node_C and Node_D. For example:

SystemZones = { Node_A = 0, Node_B = 0, Node_C = 1, Node_D = 1 }

Primary site with the Bronze configuration and the disaster recovery site with the Gold configuration

Primary site with the Bronze configuration and the disaster recovery 
site with the Gold configuration
Typical main.cf configuration

The following sample configure shows the fire drill's service group and its corresponding application service group. The fire drill's service group follows:

group dgfdsg (

SystemList = { Node_A = 0, Node_B = 1, Node_C = 2, Node_D = 3 }

SystemZones = { Node_A = 0, Node_B = 0, Node_C = 1, Node_D = 1}

)

DiskGroupSnap dgsres (

TargetResName = dgres

FDSiteName @Node_A = pri

FDSiteName @Node_B = pri

FDSiteName @Node_C = dr_fd

FDSiteName @Node_D = dr_fd

)

Mount mntfdres1 (

MountPoint = "/dgsfs1"

BlockDevice = "/dev/vx/dsk/newdg1_fd/newvol1"

FSType = vxfs

FsckOpt = "-y"

)

Mount mntfdres2 (

MountPoint = "/dgsfs2"

BlockDevice = "/dev/vx/dsk/newdg1_fd/newvol2"

FSType = vxfs

FsckOpt = "-y"

)

Process procfdres1 (

PathName = "/usr/bin/ksh"

Arguments = "/scrib.sh /dgsfs1"

)

Process procfdres2 (

PathName = "/usr/bin/ksh"

Arguments = "/scrib.sh /dgsfs2"

)

requires group dgsg offline local

mntfdres1 requires dgsres

mntfdres2 requires dgsres

procfdres1 requires mntfdres1

procfdres2 requires mntfdres2

The application's service group (the actual service group) follows:

group dgsg (

SystemList = { Node_A = 0, Node_B = 1, Node_C = 2, Node_D = 3 }

SystemZones = { Node_A = 0, Node_B = 0, Node_C = 1, Node_D = 1}

)

DiskGroup dgres (

DiskGroup = newdg1

)

Mount mntres1 (

MountPoint = "/dgsfs1"

BlockDevice = "/dev/vx/dsk/newdg1/newvol1"

FSType = vxfs

FsckOpt = "-y"

)

Mount mntres2 (

MountPoint = "/dgsfs2"

BlockDevice = "/dev/vx/dsk/newdg1/newvol2"

FSType = vxfs

FsckOpt = "-y"

)

Process procres1 (

PathName = "/usr/bin/ksh"

Arguments = "/scrib.sh /dgsfs1"

)

Process procres2 (

PathName = "/usr/bin/ksh"

Arguments = "/scrib.sh /dgsfs2"

)

mntres1 requires dgres

mntres2 requires dgres

procres1 requires mntres1

procres2 requires mntres2

Oracle main.cf configuration

The following Oracle configuration has been simplified for presentation within this guide.

group fd_oragrp (

SystemList = { Node_A = 0, Node_B = 1 }

AutoStart = 0

SystemZones = { Node_A = 0, Node_B = 1 }

)

DiskGroupSnap dgres (

FDSiteName @Node_A = siteA

FDSiteName @Node_B = siteB

TargetResName = oradg_res

)

IP fd_oraip (

Device = eth0

Address = "10.198.95.191"

)

Mount fd_archmnt (

FsckOpt = "-y"

ReuseMntPt = 1

BlockDevice = "/dev/vx/dsk/oradg_fd/archive_vol"

MountPoint = "/ora_archive"

FSType = vxfs

)

Mount fd_datamnt (

FsckOpt = "-y"

ReuseMntPt = 1

BlockDevice = "/dev/vx/dsk/oradg_fd/data_vol"

MountPoint = "/ora_data"

FSType = vxfs

)

NIC fd_oranic (

Device = eth0

)

Netlsnr fd_LSNR (

Home = "/opt/oracle/ora_home"

Owner = oracle

)

Oracle fd_Ora_01 (

Owner = oracle

Home = "/opt/oracle/ora_home"

Sid = Ora_01

)

requires group oragrp offline local

fd_LSNR requires fd_Ora_01

fd_LSNR requires fd_oraip

fd_Ora_01 requires fd_archmnt

fd_Ora_01 requires fd_datamnt

fd_archmnt requires dgres

fd_datamnt requires dgres

fd_oraip requires fd_oranic

group oragrp (

SystemList = { Node_A = 0, Node_B = 1 }

AutoStartList = { Node_A, Node_B }

SystemZones = { Node_A = 0, Node_B = 1 }

)

DiskGroup oradg_res (

DiskGroup = oradg

)

IP Node_A4vip (

Device = eth0

Address = "10.198.95.192"

)

Mount arch_mnt (

FsckOpt = "-y"

ReuseMntPt = 1

BlockDevice = "/dev/vx/dsk/oradg/archive_vol"

MountPoint = "/ora_archive"

FSType = vxfs

)

Mount data_mnt (

FsckOpt = "-y"

ReuseMntPt = 1

BlockDevice = "/dev/vx/dsk/oradg/data_vol"

MountPoint = "/ora_data"

FSType = vxfs

)

NIC nic_Node_A4vip (

Device = eth0

)

Netlsnr LSNR (

Home = "/opt/oracle/ora_home"

Owner = oracle

)

Oracle Ora_01 (

Owner = oracle

Home = "/opt/oracle/ora_home"

Sid = Ora_01

)

Volume arch_vol (

Volume = archive_vol

DiskGroup = oradg

)

Volume data_vol (

Volume = data_vol

DiskGroup = oradg

)

LSNR requires Ora_01

LSNR requires Node_A4vip

Ora_01 requires arch_mnt

Ora_01 requires data_mnt

arch_mnt requires arch_vol

arch_vol requires oradg_res

data_mnt requires data_vol

data_vol requires oradg_res

Node_A4vip requires nic_Node_A4vip