Escolar Documentos
Profissional Documentos
Cultura Documentos
Document SM102-5
September 26, 2008
Table of contents
Abstract........................................................................................................................................4
Introduction .................................................................................................................................4
About High Availability ............................................................................................................................. 4
About Disaster Recovery ......................................................................................................................... 4
About IBM ................................................................................................................................................ 4
About Symantec....................................................................................................................................... 5
About Veritas Storage Foundation HA..................................................................................................... 5
About SAN Volume Controller ................................................................................................................. 5
Overview ......................................................................................................................................7
Test System Configuration ........................................................................................................7
Installing and Configuring SAN Volume Controller ...............................................................11
Fabric Zoning ......................................................................................................................................... 11
SAN Volume Controller Software Installation ........................................................................................ 12
SAN Volume Controller Storage Configuration ..................................................................................... 12
Setting up SAN Volume Controller Cluster Partnership ........................................................................ 13
Create SVC Metro Mirror, SVC Global Mirror and FlashCopy Consistency Groups............................. 14
Create SVC Metro Mirror, SVC Global Mirror Relationship and FlashCopy Mappings......................... 15
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
Summary....................................................................................................................................37
Appendix A: VCS Configuration File (main.cf) with DB2, Oracle Application Service
Group for HA/DR .......................................................................................................................38
Appendix B: Setting up the Database Applications...............................................................56
Setting up the DB2 Database Application.............................................................................................. 56
Setting up the Oracle Database Application.......................................................................................... 59
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
Abstract
This document describes how Symantec and IBM have installed, configured and validated High
Availability (HA) and Disaster Recovery (DR) configurations for DB2 and Oracle with IBM
System Storage SAN Volume Controller (SVC). These validations include local HA
configurations using Veritas Storage Foundation and Veritas Cluster Server. The
configuration was extended to a DR configuration using IBM SVC Metro Mirror for synchronous
replication and SVC Global Mirror for asynchronous replication with the VCS agent for IBM SVC
CopyServices and VCS Global Cluster Option for alternate site failover/failback capability.
Introduction
Infrastructure for mission critical applications must be able to meet the organization's Recovery Time
Objective (RTO) and Recovery Point Objective (RPO) for resuming operation in the event of a site
disaster. This solution addresses environments where the RPOs and RTOs are in the range of minutes
to a few hours. While backup is the foundation for any DR plan, typical RTOs for tape based backup are
well beyond these objectives. Also, replication alone is not enough as having the application data at a DR
site is of limited use without also having the ability to start the correct sequence of database management
systems, application servers, and business applications.
Symantecs DR solutions Metro Clustering and Global Clustering are extensions of local HA clustering
using Veritas Storage Foundation and Veritas Cluster Server. This validated and documented solution is
an example of Global Clustering, a collection of two or more VCS clusters at separate locations linked
together with VCS Global Cluster Option to enable wide area failover and disaster recovery. Each local
cluster within the global cluster is connected to its own shared storage. Local clustering provides local
failover for each site. IBM SAN Volume Controller Metro Mirror replicates data between sites to maintain
synchronized copies of storage at the two sites. For a disaster that affects an entire site, the customer
makes a decision on whether to move operations to the disaster recovery site. When that decision is
made, the application is automatically migrated to a system at the DR site. IBM SAN Volume Controller
Global Mirror replicates data asynchronously between sites and applies recovery at the DR sites
About IBM
IBM is the world's largest information technology company, with over 80 years of leadership in helping
businesses innovate by delivering a wide range of solutions and technologies that enable customers,
large and small, to deliver more efficient and effective services. IBM's comprehensive server, storage,
software and services portfolio is designed to help you create new business insight by integrating,
analyzing and optimizing information on demand. From its foundations of virtualization, openness
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
and innovation through collaboration, IBM can optimize management of information through technology
innovations and infrastructure simplification to help achieve maximum business productivity. Visit IBM
at ibm.com.
About Symantec
Symantec is a global leader in infrastructure software, enabling businesses and consumers to have
confidence in a connected world. The company helps customers protect their infrastructure, information
and interactions by delivering software and services that address risks to security, availability, compliance
and performance. Headquartered in Cupertino, California, Symantec has operations in more than 40
countries. Visit Symantec at symantec.com
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
Combine storage capacity from multiple disk systems into a single reservoir of capacity that can
be better managed as a business resource and not as separate boxes
Help increase storage utilization by providing host applications with more flexible access to
capacity
Support improved application availability by insulating host applications from changes to the
physical storage infrastructure
Enable a tiered storage environment in which the cost of storage can be better matched to the
value of data
Support advanced copy services from higher- to lower-cost devices and across storage systems
from multiple vendors
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
Overview
This whitepaper illustrates the steps involved in installing and configuring Veritas Storage Foundation HA
and IBM SAN Volume Controller Metro Mirror and IBM SAN Volume Controller Global Mirror for a host
failover and disaster recovery readiness scenario. Once the setup is complete, it is ready for conducting
cluster failover and cluster failback across two cluster sites using SAN Volume Controller Metro Mirror,
SAN Volume Controller Global Mirror and VCS Global Cluster Option.
The host failover scenario simulates a fault in a node of a two node VCS cluster at Site A. Once the DB2 /
Oracle application servicegroup fails over to the other node, a fault is injected in that node causing the
application to failover to a node of a two node cluster at Site B.
The disaster recovery readiness scenario simulates a disaster by introducing a fault in the nodes of the
cluster and storage at Site A causing the application to failover to a node of a two node cluster at Site B.
VCS configured with GCO brings up the DB2 / Oracle application global service group on that node at
Site B. Once Site A is restored and becomes available, the application is failed back to Site A. The VCS
IBM SVC Copy Services agent manages the necessary SAN Volume Controller related procedures for
failover and failback. The Failover Scenarios section provides procedural details.
Two sets of volume groups are used for the configuration described above. One set is used for
configuring Metro Mirror and another set is used for Global Mirror. To test for DR readiness the VCS
Firedrill set is configured. A fire drill procedure verifies the fault-readiness of a disaster recovery
configuration.VCS Friredrill uses IBM FlashCopy . A third volume group set is used for FlashCopy.
The document provides instructions for installing and configuring a test setup and then provides
procedures for the scenarios, using main.cf.oradb2 sample configuration.
A cluster at Site A consisting of two AIX System p hosts configured as a 2-node VCS cluster, an
SVC cluster with 1-iogroup, and IBM System Storage DS8300 storage attached to the SAN
through the switch.
A cluster at Site B consisting of two AIX System p hosts configured as a 2-node VCS cluster, an
SVC cluster with 1 iogroup, and IBM System Storage DS8300 storage attached to the SAN
through the switch.
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
Disk systems
Disk systems
Console
Console
long distance connection
switch
switch
2 node SVC cluster
Application Clients
Application Clients
Site A
Site B
Figure 1. VCS cluster and IBM SVC Metro and Global Mirror for Disaster Recovery
The test configuration setup built for this whitepaper (see Figure 2) consists of four application hosts. The
configuration and hardware and software components are listed in Table 1 and Table 2. The hosts are
AIX IBM System p servers. The four servers are configured to form two 2-node Storage Foundation
cluster servers. Figure 2 shows the test system configuration.
The two clusters represent two sites, Site A and Site B. The cluster at Site A is the active cluster and the
cluster at Site B is the standby cluster. Table 4 shows the SAN Volume Controller virtual disk map.
In the test configuration there are only 2 ISLs shown between the remote and local cluster. That is
adequate for this demonstration but the design of a production configuration should ensure adequate
provisioning of intercluster bandwidth. More than 2 ISLs may be required and they may need to be
trunked.
In this setup both DB2 and Oracle applications are installed on the same cluster. There are three VCS
configuration files: The first configuration is for an Oracle application (main.cf.ora), the second
configuration is for a DB2 application (main.cf.Db2) and the third configuration is a combination of the first
and second and a firedrill resource (main.cf.oradb2). The scenario explained in the Overview uses the
third configuration.
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
SI1
SVCMetro/Global
mdisks
Db2, Oracle
Application data
disks
Other
Application data
disks
lss0000
lss0001
lss0002
lss0100
lss0101
lss102
lss0006
lss0007
lss0003
HMC1
Site A
SI2 lss0004
75ABNY2
75ABNY1
SVC Vdisks
vdisk001
vdisk002
vdisk003
vdisk004
vdisk005
vdisk006
vdisk007
vdisk008
vdisk009
vdisk010
Site B
Thunder 9200
SVCMetro/Global
mdisks
lss0001
lss0005
lss0002
vdisk101
vdisk102
vdisk103
vdisk104
vdisk105
vdisk106
vdisk107
vdisk108
vdisk109
vdisk110
lss0003
lss0004
lss0005
lss0006
lss0007
lss0008
lss0009
lss0004
lss0010
lss0005
lss0011
mdisk01
SVC Vdisks
mdisk02
mdisk03
mdisk04
mdisk05
mdisk06
FlashCopy vdisks
DS8300
SVC1 node 01
SVC1 node 02
SWITCH 042
SWITCH 044
SVC
Console
Hitachi
SVC
Console
SVC2 node 01
SVC2 node 02
WAN
ClustsvcP
ClustsvcPNd1
IBM P650
AIX 5.3
Veritas SF
HA/DR
ClustsvcP
ClustsvcPNd2
IBM P650
AIX 5.3
Veritas SF
HA/DR
ClustsvcS
(GCO)
VCS Cluster
Site A
ClustsvcS
(GCO)
VCS Cluster
Site B
WINDOWS
CLIENTS
Figure 2. Test cluster configuration with SVC Metro and Global Mirror
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
Site A ( Primary )
ClustsvcP
Site B ( Secondary )
ClustsvcS
Nd1
Nd2
Nd1
Nd2
1452 MHz
1452 MHz
1452 MHz
1452 MHz
64-bit
64-bit
1 NULL
4096 MB
4096 MB
3F060109
64-bit
64-bit
1 NULL
4096 MB
4096 MB
3F060109
64-bit
64-bit
1 NULL
4096 MB
4096 MB
3F060109
64-bit
64-bit
1 NULL
4096 MB
4096 MB
3F060109
IBM,RG06010
9_d79e15_r
IBM,RG060109_
d79e15_r
IBM,RG060109_
d79e15_r
IBM,RG06010
9_d79e15_r
Site A ( Master )
Site B ( Auxiliary )
8F4
APE137AUS-1.14
4.2.1.3 build 7.7.0802120000
svc002.abc.def.com
svc003.abc.def.com
ibmsvcM
ibmsvcDR
nodeM1-1
Yes
nodeM1-2
nodeDR2-1
nodeDR2-2
No
No
Yes
io_grp0
io_grp0
Storage
Array Model
Firmware Version
Capacity
6.1.3.20071026.1
18.688TB(128x146GB
HBA Ports
Array Model
32
HDS Thunder 9200
Firmware Version
Capacity
HBA Ports
355L
500GB
2
Switch Model
Firmware version
Ports
SAN
SilkWorm 200E
v5.0.1b
16+16
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
10
Software
AIX 5.3
DB2
Oracle
Veritas Storage Foundation Enterprise
Veritas High Availability
5.0MP1 Agent for DB2 by Symantec
Veritas High Availability
5.0MP1 Agent for Oracle by Symantec
Veritas Clustering Support for IBM SVC Copy
Services
Version
5300-06-04-0748
9.1
10gR2
5.0, 5.0MP1RP3
5.0MP1 RP3
5.0MP1 RP3
5.0MP1RP3
The following table lists product documentation set required for installation, configuration and
troubleshooting the setup.
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
11
ISL
ISL
ISL
ISL
config
zone
zone
zone
zone
zone
zone
nodeDR2-1
nodeDR2-1
HDS
HDS
DS8300
DS8300
SNd1
SNd2
nodeDR2-2
nodeDR2-2
nodeDR2-2
nodeDR2-2
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
12
Relationship
Name
MM Relationship
svcmm001-007
GM Relationship
svcgm001-008
FC Mappings
Name
MetroMirror
FD_mmappgrp1001-007
GlobalMirror
FD_gmappgrp1001-007
Flash Copy Consistency Group
Flash Copy Consistency Group
MetroMirror & GlobalMirror Consistency Groups
Name
State
Copy
Master
Auxiliary
Primary
Relationship
Type
Cluster
Cluster
Count
svcgmMDR Consistent
Global ibmsvcM
ibmsvcDR Master
7
synchronized
svcmmMDR Consistent
Metro ibmsvcM
ibmsvcDR Master
7
synchronized
Cluster
Location
State
Bandwidth
Link
InterIntraName
Tolerance
Cluster
Cluster
(s)
Delay
Delay
Simulation
Simulation
(ms)
(ms)
MetroMirror Cluster Partnership
ibmsvcDR
Remote
Fully
500
0
Configured
GlobalMirror Cluster Partnership
ibmsvcDR
Remote
Fully
500
300
20
0
Configured
MM
MetroMirror
GM
GlobalMirror
FC
Flash Copy
FD
Fire Drill
DR
Disaster Recovery
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
13
IBM_2145:ibmsvcDR:admin>
To establish a fully functional Metro Mirror issue these commands to both clusters. This step is a
prerequisite to creating Metro Mirror between VDisks on the clusters.
IBM_2145:ibmsvcDR:admin>svctask mkpartnership -bandwidth 500 ibmsvcDR
IBM_2145:ibmsvcDR:admin>svctask mkpartnership -bandwidth 500 ibmsvcM
To establish a fully functional Global Mirror partnership, issue these commands to both clusters. This step
is a prerequisite to creating Global Mirror relationships between VDisks on the clusters.
Get the cluster alias.
IBM_2145:ibmsvcDR:admin>svcinfo lscluster ibmsvc
Update intercluster delay for the Global Mirror configuration. Refer to the SAN Volume Controller guides
to configure these parameters.
-gmlinktolerance link_tolerance: Is the length of time, in seconds, for which an inadequate inter-cluster
link will be tolerated for Global Mirror operation. Accepts values from 60 to 86400 seconds in steps of 10
sec. Default is 300 seconds. The link tolerance can be disabled by entering the value 0 for this parameter.
-gminterdelaysimulation inter_cluster_delay_simulation: Is the Inter-cluster delay simulation, which
simulates Global Mirror round trip delay between two clusters, in milliseconds. Default is 0, valid range is
0 to 100 milliseconds.
-gmintradelaysimulation intra_cluster_delay_simulation: Is the Intra-cluster delay simulation, which
simulates Global Mirror round trip delay in milliseconds. Default is 0, valid range is 0 to 100 milliseconds.
IBM_2145:ibmsvcDR:admin>svctask chcluster -alias 20064E07548 -name ibmsvc -gmlinktolerance
300 -gminterdelaysimulation 20 -gmintradelaysimulation 0
Create SVC Metro Mirror, SVC Global Mirror and FlashCopy Consistency Groups
Create Metro Mirror and Global Mirror Consistency groups by specifying a name and the remote SAN
Volume Controller cluster name as shown below. Make sure the two SVC clusters are up and in
communication throughout the create process. The new consistency group does not contain any
relationships and will be in an empty state. A consistency group is used to ensure that a number of
relationships are managed so that, in the event of a disconnection of the relationships, the data in all
relationships within the group is in a consistent state. This can be important in a database application
where data files and log files are held on separate VDisks, and consequently are being managed by
separate relationships. In the event of a disaster, the primary and secondary sites may become
disconnected. If the relationships associated with the VDisks are not in a consistency group, then as the
disconnection happens, and the Mirror relationships stop copying data from the primary to the secondary
site, there is no assurance that updates to the two separate secondary VDisks will stop in a consistent
manner.
IBM_2145:ibmsvcDR:admin>svctask mkrcconsistgrp -name svcmmMDR -cluster ibmsvcDR
IBM_2145:ibmsvcDR:admin>svctask mkrcconsistgrp -name svcgmMDR -cluster ibmsvcDR
The VCS Firedrill function utilizes SVC FlashCopy to create and maintain the snapshot of the application
resource. Therefore create a FlashCopy Consistency Group from the SVC cluster at Site B.
Ensure the SVC FlashCopy license is enabled.
IBM_2145:ibmsvcDR:admin>svctask chlicense -flash on
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
14
Create SVC Metro Mirror, SVC Global Mirror Relationship and FlashCopy
Mappings
Now create Metro Mirror and Global Mirror relationships using the following command. This relationship
persists until it is deleted. The auxiliary virtual disk must be identical in size to the master virtual disk. The
master and auxiliary cannot be in an existing relationship. Neither disk can be the target of a FlashCopy
mapping. Copy type defaults to metro if -global is not specified.
IBM_2145:ibmsvcDR:admin>svctask mkrcrelationship -master 16 -aux 7 -sync -cluster ibmsvcDR name svcgm001 -consistgrp svcmmMDR
IBM_2145:ibmsvcDR:admin>svctask mkrcrelationship -master 1 -aux 50 -sync -cluster ibmsvcDR name svcgm002 -consistgrp svcmmMDR
IBM_2145:ibmsvcDR:admin>svctask mkrcrelationship -master 2 -aux 51 -sync -cluster ibmsvcDR name svcgm003 -consistgrp svcmmMDR
IBM_2145:ibmsvcDR:admin>svctask mkrcrelationship -master 3 -aux 52 -sync -cluster ibmsvcDR name svcgm004 -consistgrp svcmmMDR
IBM_2145:ibmsvcDR:admin>svctask mkrcrelationship -master 4 -aux 53 -sync -cluster ibmsvcDR name svcgm005 -consistgrp svcmmMDR
IBM_2145:ibmsvcDR:admin>svctask mkrcrelationship -master 5 -aux 54 -sync -cluster ibmsvcDR name svcgm006 -consistgrp svcmmMDR
IBM_2145:ibmsvcDR:admin>svctask mkrcrelationship -master 6 -aux 55 -sync -cluster ibmsvcDR name svcgm007 -consistgrp svcmmMDR
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
15
svctask mkfcmap -source 5 -target 54 -consistgrp 1 -name FD_gmappgrp1005 -copyrate 100 incremental -cleanrate 100 -iogrp 0
svctask mkfcmap -source 6 -target 55 -consistgrp 1 -name FD_gmappgrp1006 -copyrate 100 incremental -cleanrate 100 -iogrp 0
svctask mkfcmap -source 7 -target 56 -consistgrp 2 -name FD_gmappgrp1001 -copyrate 100 incremental -cleanrate 100 -iogrp 0
svctask mkfcmap -source 8 -target 57 -consistgrp 2 -name FD_gmappgrp1002 -copyrate 100 incremental -cleanrate 100 -iogrp 0
svctask mkfcmap -source 9 -target 58 -consistgrp 2 -name FD_gmappgrp1003 -copyrate 100 incremental -cleanrate 100 -iogrp 0
svctask mkfcmap -source 10 -target 59 -consistgrp 2 -name FD_gmappgrp1004 -copyrate 100 incremental -cleanrate 100 -iogrp 0
svctask mkfcmap -source 11 -target 60 -consistgrp 2 -name FD_gmappgrp1005 -copyrate 100 incremental -cleanrate 100 -iogrp 0
svctask mkfcmap -source 12 -target 61 -consistgrp 2 -name FD_gmappgrp1006 -copyrate 100 incremental -cleanrate 100 -iogrp 0
svctask mkfcmap -source 13 -target 62 -consistgrp 2 -name FD_gmappgrp1007 -copyrate 100 incremental -cleanrate 100 -iogrp 0
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
16
Database Requirements
The following database version are supported by the respective Veritas High Availability
5.0MP1 Agents for DB2 and Oracle.
DB2 8.1 ESE, DB2 8.2 ESE, DB2 8.2.2 ESE, DB2 9.1
Oracle9i, Oracle 10g R1, and Oracle 10g R2 (including 64-bit versions)
Disk Space
Use Perform a Preinstallation Check (P) option of the product installer to determine whether there is
sufficient space.
Environment Variables
Most of the commands used in the installation are in the /sbin or /usr/sbin directory. However, there are
additional variables needed in order to use a Veritas Storage Foundation product after installation. Add
the following directories to your PATH environment variable:
If you are using Bourne or Korn shell (sh or ksh), use the commands:
$ PATH=$PATH:/usr/sbin:/opt/VRTSvxfs/sbin:/opt/VRTSob/bin:\/opt/VRTSvcs/bin:/opt/VRTS/bin$
MANPATH=/usr/share/man:/opt/VRTS/man:$MANPATH
$ export PATH MANPATH
If you are using a C shell (csh or tcsh), use the commands:
% set path = ( $path /usr/sbin /opt/VRTSvxfs/sbin \/opt/VRTSvcs/bin /opt/VRTSob/bin
/opt/VRTS/bin )% setenv MANPATH /usr/share/man:/opt/VRTS/man:$MANPATH
Note: The nroff versions of the online manual pages are not readable using the man command if the
bos.txt.tfs fileset is not installed; however, the VRTSvxvm and VRTSvxfs packages install ASCII versions
in the /opt/VRTS/ man/catman* directories that are readable without the bos.txt.tfs fileset.
Virtual IP Address
This configuration will need several IP addresses depending on the products you are enabling. Have at
least six virtual IPs' allocated for the two clusters. The list below shows virtual IPs required for this
configuration.
Purpose
DB2 failover
Oracle failover
GCO
ClustsvcP
10.140.xx.01
10.140.xx.03
10.140.xx.04
ClustsvcS
10.140.xx.02
10.140.xx.04
10.140.xx.05
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
17
The Veritas product installer is the recommended method to license and install the product. The
installer also enables you to configure the product, verify pre-installation requirements, and view
the products description.
You can use the product installer to install Veritas Storage Foundation and Veritas Storage
Foundation enterprise HA.
At most points during an installation, you can type b (back) to return to a previous section of
the installation procedure. The back feature of the installation scripts is context-sensitive, so it
returns to the beginning of a grouped section of questions. If an installation procedure hangs,
use Controlc to stop and exit the program. There is a short delay before the script exits.
To install a Storage Foundation product execute the steps from one node in each cluster.
1 Make sure the disk is mounted. See Mounting a Software Disk
2 To invoke the common installer, run the installer command on the disk as shown in this
example:
# cd /cdrom/disk_name/installer rsh ClustsvcPNd1 ClustsvcPNd2
3 Enter I to install a product and press Return to begin.
4 When the list of available products is displayed, select the product you want to install and enter
the corresponding number and press Return. The product installation begins automatically.
6 Enter the Storage Foundation Enterprise HA/DR product license information.
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
18
6. The installer discovers the NICs available on the first system and reports them:
Discovering NICs on ClustsvcPNd1 ...discovered en0 en1 en2
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
19
Notice that in this example, en0 is not selected for use as a private heartbeat NIC because it is
already in use as the public network interface.
8.
A summary of the information you entered is given. When prompted, confirm that the
information is correct.
Is this information correct? [y,n,q] (y)
If the information is correct, press Return. If the information is not correct, enter n. The installer
prompts you to enter the information again.
9. When prompted to configure the product to use Veritas Security Services, enter y or n to
configure.
Note: Before configuring a cluster to operate using Veritas Security Services, another system must
already have Veritas Security Services installed and be operating as a Root Broker. Refer to the
Veritas Cluster Server Installation Guide for more information on configuring a VxSS Root Broker.
Would you like to configure product_name to use Veritas Security Services? [y,n,q]
(n) n
10. A message displays notifying you of the information required to add users. When prompted, set
the user name and /or password for the Administrator.
Do you want to set the username and/or password for the Admin user (default
username = 'admin', password='password')? [y,n,q] (n)
11. Enter n if you want to decline. If you enter y, you are prompted to change the password. You are
prompted to add another user to the cluster.
Do you want to add another user to the cluster? [y,n,q] (n)
Enter n if you want to decline, enter y if you want to add another user. You are prompted to
verify the user.
Is this information correct? [y,n,q] (y)
13. You are prompted to configure the cluster connector. Enter y or n to configure the cluster
connector.
Do you want to configure the cluster connector [y,n,q] (n)
14. When prompted to configure SMTP notification, enter y to not configure SMTP.
Do you want to configure SMTP notification? [y,n,q] (n)
15. When prompted to configure SNMP notification, enter y to not configure SMTP notification.
Do you want to configure SNMP notification? [y,n,q] (n)
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
20
16. When prompted to set up the default disk group for each system, enter n to set up the disk
group for each system.
Do you want to set up a default disk group for each system?
[y,n,q,?] (n)
17. You are prompted to enter the fully qualified hostname of system clustsvcPNd1. Enter y for the
ClustsvcPNd1.domain_name.
Is the fully qualified hostname of system "ClustSVCPNd1"
="ClustsvcPNd1.domain_name"? [y,n,q] (y)
18. 23 You are prompted to enter the fully qualified hostname of system ClustsvcPNd2. Enter y for
the ClustsvcPNd2 domain_name.
Is the fully qualified hostname of system "ClustsvcNd2"
="clustsvcPNd2.domain_name"? [y,n,q] (y)
19. You are prompted to enable Storage Foundation Management Server Management.
Enable Storage Foundation Management Server Management? [y,n,q] (n)
20. Enter n to enable Storage Foundation Management Server Management. You are prompted to
start Storage Foundation.
Do you want to start Veritas Storage Foundation processes now?
[y,n,q] (y)...Startup completed successfully on all systems
You declined to set up the name of the default disk group for
ClustsvcPNd1.
You declined to set up the name of the default disk group for
ClustsvcPNd2.
Installation log files, summary file, and response file are saved
at:
/opt/VRTS/install/logs/installsf-7ai12i
When installsf installs software, some software may be applied rather
than committed. It is the responsibility of the system administrator
to commit the software, which can be performed later with the -c
option of the installp command.
21. Proceed to the next section to upgrade Veritas Storage Foundation 5.0 to 5.0MP1RP3
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
21
You install upgrade packages by running the installmp installation script from the command line. The
installmp script is at the top level of the Maintenance Pack disk. The installmp script checks for any
installed Veritas package and replaces it with the updated package.
All Veritas product processes are stopped after running installmp. To ensure that processes restart
correctly, a manual restart or system reboot may be required. If you want to configure a product, run the
product installation scripts from the /opt/VRTS/install directory using the configure option.
See the individual product release notes for information on how to restart processes, or how to uninstall
a maintenance pack and return to the previous product level.
Execute the steps from one node in each cluster.
1. Make sure the disk is mounted. See Mounting a Software Disk.
2. To install the Storage Foundation software, you must invoke the installmp command from one of
your cluster nodes using the option that corresponds to your configuration:
3. To install on more than one system using remote shell (RSH) utilities, enter the following
command:
# ./installmp ClustsvcPNd1 ClustsvcPNd2 -rsh
4. After the initial system checks have completed successfully, press Enter to start the requirements
checks for the installation.
5. After the requirement checks have completed successfully, press Enter to begin installing the
packages.
6. To disable io-fencing on each node in the two clusters follow the steps
#cd /etc/VRTSvcs/conf/config
#echo vxfen_mode=disabled > vxfenmode
7. To install the Volume Manager rolling patch RP3 on top of 5.0MP1, down load the patch. Follow
steps given the README document.
8. After the installation of the packages is complete, use the following command to reboot the
system:
# shutdown -r now
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
22
# cd /cdrom/cluster_server_agents/db2_agent/patches
5. Add the filesets for the software
# installp -ac -d VRTSvcsdb.rte.bff VRTSvcsdb
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
23
Refer to the appropriate sections in Appendix B for instructions to setup the database.
In this configuration a database representing TPC-C schema is built. A database workload application is
used to populate and simulate the TPC-C workload. You will need a workload application to exercise the
database load.
While configuring VxVM make sure to enable the mode for scsi3 disk discovery. The instructions to
enable it are included in Appendix B.
To quickly setup this test configuration, follow Quick Setup Steps section. You can follow the General
Configuration Steps and refer to the documents mentioned in those sections for detailed configuration
steps.
Quick Setup
This section assumes the following tasks have been completed:
The hardware and software configuration is already setup, SVC and VCS clusters are up and
running.
The SVC and VCS objects in Appendix B are created.
There are three configuration samples in Appendix A: One for Oracle Application resource failover, one
for DB2 Application resource failover and one for an Application group failover, containing both Oracle
and DB2 application resources and a fire drill resource on the secondary cluster.
This procedure lists steps to stop VCS cluster server on all the nodes in both clusters. Copy the sample
VCs configuration files. Select any one configuration (preferably main.cf.oradb2). Apply required
modifications to the config file, verify and then start the VCS cluster and bring Application resource online
on one node in the Primary cluster.
1. Make sure all of the objects mentioned in VCS configuration file are created and available
2. Halt the cluster server from any node in the clusters in Site A and Site B
#/opt/VRTSvcs/hastop all
3. Cut and paste the VCS configuration files ( main.cf ) in Appendix A, to files in
/etc/VRTSvcs/conf/config directory as shown below.
On cluster nodes ClustsvcPNd1, ClustsvcPNd2 in Site A as:
main.cf.db2.siteA, main.cf.ora.siteA, main.cf.oradb2.siteA
On cluster nodes ClustsvcSNd1, ClustsvcSNd2 in Site B as:
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
24
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
25
Refer to the section Linking clusters in the Veritas Cluster Server Users Guide. The Remote Cluster
Configuration wizard provides an easy interface to link clusters. Before linking clusters, verify the virtual IP
address for the ClusterAddress attribute for each cluster is set. Use the same IP address as the one
assigned to the IP resource in the ClusterService group. Have the following information ready: The active
host name or IP address of each cluster in the global configuration and of the cluster being added to the
configuration, the administrator login name and password for each cluster in the configuration.
Invoke the Cluster manager (java console) from the node in the cluster.
#export DISPLAY=xhost:xx.0
#/opt/VRTSvcs/hagui &
From the cluster manager, click Edit>Add/Delete Remote Cluster. Follow the instructions in the GUI to
complete adding the remote cluster.
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
26
Figure 3. VCS dependency tree for App_grp1 Application service group resources
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
27
Figure 4. VCS dependency tree for FD_App_grp1 firedrill service group resources
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
28
Perform these steps on every node in the cluster. Adding and configuring the agent manually in a
global cluster involves the following tasks. Next section describes details of the Resource type
definition and attributes.
1. Start Cluster Manager and log on to the cluster.
#export DISPLAY=xhost:xx.0
#/opt/VRTSvcs/hagui &
2. If the agent resource type is not added to your configuration, add it. From the Cluster Manager
File menu, choose Import Types and select
/etc/VRTSvcs/conf/SVCCopyServicesTypes.cf
3. Click Import.
4. Save the configuration.
Now you can configure the SVC Copy Services resource by creating
Service groups for SVC Copy Services, which you have already done in the previous section
by creating app_grp1 service group.
Adding a resource of type SVC Copy Services at the bottom of the service group. See the
main.cf.oradb2 as an example. If you are adding the resource, use the GUI or the command
line, follow the resource names from the example and create the app_svccp resource
#hares add app_svccp SVCCopyServices app_grp1
Configuring the attributes of the SVC Copy Services resource. In this example add the
GoupName and Cluster IP attribute values.
#hares modify app_svccp GroupName svcgmMDR
#hares modify app_svccp ClusterIP 10.140.XX.XXX
Required attributes
You must assign values to required attributes.
GroupName
Type-dimension
IsConsistency
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
29
Group
Type-dimension
SSHBinary
Type-dimension
SSHPathToID File
SVCClusterIP
Type-dimension
SVCUserName
StopTakeover
Type-dimension
Disconnect
Takeover
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
30
Type-dimension
consistent_disconnected
When the state of the replication is consistent_disconnected
and
DisconnectTakeover = 1, then the agent enables read/write
access for the SVC cluster. When the state of the replication is
idling_disconnected, the agent does not enable read-write
access for the SVC cluster.
string-scalar
A resource of type SVCCopyServices may be configured as follows in main.cf: This example is a copy of
the one in main.cf.oradb2 given in Appendix A
SVCCopyServices app_svccp (
SSHPathToIDFile = " /.ssh/id_dsa "
GroupName = svcgmMDR
SVCClusterIP = "10.140.XX.XXX"
DisconnectTakeover = 1
)
Setting up Firedrill
Refer to Chapter 5 in the Veritas Cluster Server Agent for IBM SVCCopyServices installation and
Configuration Guide for detailed configuration procedure of Firedrill resource.
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
31
str TargetResName
int MountSnapshot
int UseSnapshot
int RequireSnapshot
str FCMapGroupName
temp str Responsibility
)
Required attributes
You must assign values to required attributes.
TargetResName
Type-dimension
UseSnapshot
Type-dimension
RequireSnapshot
Type-dimension
MountSnapshot
Type-dimension
Responsibility
Type-dimension
FCMapGroupName
Type-dimension
Name of the resource managing the LUNs that you want to take
snapshot of. Set this attribute to the name of the
SVCCopyServices resource if you want to take a snapshot of
replicated data. Set this attribute to the name of the DiskGroup
resource if the data is not replicated.
For example, in a typical Oracle setup, you might replicate data
files and redo logs, but you may choose to avoid replicating
temporary tablespaces. The temporary tablespace must still
exist at the DR site and may be part of its own disk group.
string-scalar
Specifies whether the SVCCopyServicesSnap resource takes a
local snapshot of the target array. Set this attribute to 1 for Gold
and Silver configurations. For Bronze, set this attribute to 0.
integer-scalar
Specifies whether the SVCCopyServicesSnap resource must
take a snapshot before coming online. Set this attribute to 1 if
you want the resource to come online only after it succeeds in
taking a snapshot. Set this attribute to 0 if you do want the
resource to come online even if it fails to take a snapshot.
Setting this attribute to 0 creates the Bronze configuration.
Note: Set this attribute to 1 only if UseSnapshot is set to 1
integer-scalar
Specifies whether the resource uses the snapshot to bring the
service group online. Set this attribute to 1 for Gold
configuration. For Silver and Bronze configurations, set the
attribute to 0.
Note: Set this attribute to 1 only if UseSnapshot is set to 1.
integer-scalar
Do not modify. For internal use only. Used by the agent to keep
track of desynchronizing snapshots.
temporary string
Name of the FlashCopy mapping or FlashCopy consistency
group. If the target SVCCopyServices resource contains a
consistency group, set FCMapGroupName to a FlashCopy
consistency group. If the target SVCCopyServices resource
contains a relationship, set FCMapGroupName to a FlashCopy
mapping. This attribute is optional for Bronze configurations.
string-scalar
A resource of type SVCCopyServicesSnap may be configured as follows in main.cf: Also check the
configuration and note that it is in Gold configuration.
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
32
SVCCopyServicesSnap FD_app_svccpsnap (
TargetResName = app_svccp
MountSnapshot = 1
UseSnapshot = 1
RequireSnapshot = 1
FCMapGroupName = FD_gmappgrp1cg
)
In Cluster Explorer, click the Service Group tab in the left pane.
Click the fire drill service group in the left pane and click the Resources tab in the right pane.
Right-click the SVCCopyServices resource and click Delete.
Add a resource of type SVCCopyServicesSnap and configure its attributes.
Right-click the resource to be edited and click View > Properties View. If a resource to be
edited does not appear in the pane, click Show All Attributes.
6. Edit attributes to reflect the configuration at the remote site. For example, change the Mount
resources so that they point to the volumes that are used in the fire drill service group.
Failover Scenarios
The section describes the procedures for perform the failover scenarios. The setup contains one service
group containing Oracle and DB2 resource types. The example uses a SVC Global Mirror setup.
To use the SVC Metro Mirror configuration, replace the SVCCopyservices GroupName attribute,
svcgmMDR by svcmmMDR and the SVCCopyServiceSnap.
For the SVC Metro Mirror configuration the SVCCopyservices GroupName attribute is svcmmMDR.
For the SVC Global Mirror configuration the SVCCopyservices GroupName attribute is svcgmMDR.
For the SVC Metro Mirror configuration the SVCCopyServicesSnap FCMapGroupName attribute is
FD_mmappgrp1cg.
For the SVC Global Mirror configuration the SVCCopyServicesSnap FCMapGroupName attribute is
FD_gmappgrp1cg.
Make sure the switch zoning configuration requirements are met for Global Mirror.
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
33
Before you start the scenarios make sure that the both clusters in Site A and Site B are up and running.
Login to a site A and site B cluster node and issue the following command.
#/opr/VRTSvcs/bin/hastatus
Start the Cluster management GUI
#export DISPLAY=xhost:xx.0
#/opt/VRTSvcs/bin/hagui &
Make sure that, the Clusterservice group is online on a node at each site and the app_grp1 service
group is online on a cluster node at Site A.
While the Application is running, from the SVC console ensure the Global Mirror consistency group is in
consistent_synchronized state and the Primary is the Master Cluster (ibmsvcM).
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
34
To test the cluster failover and failback, perform the following steps:
1. Make sure the Application is up and running on one of the cluster node, say, ClustsvcPNd1 in
Site A.
2. Offline the Firedrill service group at Site B if it is online.
3. Disable the host ports and storage switch ports of cluster site A.
4. A cluster down alert appears and gives the admin opportunity to fail over the service group
manually to one of the cluster nodes at Site B, choose say ClustsvcSNd1. The SVC Global Mirror
consistency group lists Primary as the Auxiliary Cluster (ibmsvcDR). You can also check the
status from the VCS log at /var/VRTSvcs/log/engine_A.log.
5. Enable the disabled switch ports of cluster Site A. Ensure the cluster comes up and the
ClusterService group goes online. The application service group is offline.
6. Manually resynchronize the data between the primary and secondary sites. If the current primary
is retained as the primary for the replication relationship and the replication is not in a stopped
state, stop the replication manually.
Use the stoprcrelationship or the stoprcconsistgrp command, without the -access option.
Use the startrcrelationship or the startrcconsistgrp command with the -force option on the
SVC cluster that the user wants to retain as primary.
Alternatively, Use the update action entry point with no arguments specified.
If you change the primary for the replication relationship, stop the replication manually (if it is not
stopped already).
Enable read / write access on both SVC clusters by using the stoprcrelationship or the
stoprcconsistgrp command with the access option.
Use the startrcrelationship or the startrcconsistgrp command with both the -force and primary options.
Alternatively, use the update action entry point with exactly one argument that is the SVC cluster,
which the user retains as primary.
7. After the resynchronization is complete, switch application to the cluster at Site A .
8. The service group comes online on ClustsvcPNd1. Check from the SVC console that the Master
console becomes the Primary again. Wait till the service group
p comes online on ClustsvcPNd2, check that the DB application data is consistent
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
35
Note: Failing to take fire drill service group offline could cause failures in your environment. For example,
if the application service group fails over to the node hosting fire drill service group, there would be
resource conflicts, resulting in both service groups faulting and based on failover policy for the application
service group, it can failover to another node in the cluster.
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
36
Summary
Clustering software, like Veritas Cluster Server, has for many years been the standard approach to
protect against failures of individual hardware or software components. As more and more organizations
look to add robust disaster recovery capabilities to their mission critical systems, merely shipping backup
tapes to an offsite location is not adequate. This whitepaper has shown how a local HA cluster can be
extended with DR capabilities. The IBM SVC Metro Mirror and Global Mirror features are utilized to add
data replication capabilities to the solution. VCS Wizards are used to convert two independent clusters (at
two different locations) into a global cluster with automated failover capability between locations in the
event of a site disaster. The result is a robust DR environment capable of meeting stringent Recovery
Time Objectives.
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
37
include "types.cf"
include "Db2udbTypes.cf"
include "SVCCopyServicesTypes.cf"
cluster ClustsvcP (
UserNames = { admin = bIJbIDiFJeJJhRJdIG }
ClusterAddress = "10.140.xx.05"
Administrators = { admin }
)
cluster ClustsvcS (
UserNames = { admin = IpqIpkPmqLqqOyqKpn }
ClusterAddress = "10.140.xx.06"
Administrators = { admin }
)
remotecluster ClustsvcS (
ClusterAddress = "10.140.xx.06"
)
remotecluster ClustsvcP (
ClusterAddress = "10.140.xx.05"
)
heartbeat Icmp (
ClusterList = { ClustsvcS }
AYATimeout = 30
Arguments @ClustsvcS = { "10.140.xx.06" }
)
heartbeat Icmp (
ClusterList = { ClustsvcP }
AYATimeout = 30
Arguments @ClustsvcP = { "10.140.xx.05" }
)
system ClustsvcPNd1 (
)
system ClustsvcSNd1 (
)
system ClustsvcPNd2 (
)
system ClustsvcSNd2 (
)
group ClusterService (
SystemList = { ClustsvcPNd1 = 0, ClustsvcPNd2 = 0 }
AutoStartList = { ClustsvcPNd1, ClustsvcPNd2 }
OnlineRetryLimit = 3
OnlineRetryInterval = 3
)
group ClusterService (
SystemList = { ClustsvcSNd1 = 0, ClustsvcSNd2 = 0 }
AutoStartList = { ClustsvcSNd1, ClustsvcSNd2 }
OnlineRetryLimit = 3
OnlineRetryInterval = 3
)
Application wac (
StartProgram = "/opt/VRTSvcs/bin/wacstart"
StopProgram = "/opt/VRTSvcs/bin/wacstop"
MonitorProcesses = { "/opt/VRTSvcs/bin/wac" }
)
Application wac (
StartProgram = "/opt/VRTSvcs/bin/wacstart"
StopProgram = "/opt/VRTSvcs/bin/wacstop"
MonitorProcesses = { "/opt/VRTSvcs/bin/wac" }
)
IP gcoip (
Device = en0
Address = "10.140.xx.05"
NetMask = "255.255.xxx.0"
)
IP gcoip (
Device = en0
Address = "10.140.xx.06"
NetMask = "255.255.xxx.0"
)
NIC gconic (
Device = en0
)
NIC gconic (
Device = en0
)
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
38
group db2udb_grp1 (
SystemList = { ClustsvcPNd1 = 0, ClustsvcPNd2 = 1 }
ClusterList = { ClustsvcP = 0, ClustsvcS = 1 }
Authority = 1
AutoStartList = { ClustsvcPNd1, ClustsvcPNd2 }
)
group db2udb_grp1 (
SystemList = { ClustsvcSNd1 = 0, ClustsvcSNd2 = 1 }
ClusterList = { ClustsvcP = 0, ClustsvcS = 1 }
AutoStartList = { ClustsvcSNd1, ClustsvcSNd2 }
)
Db2udb db2udb (
DB2InstOwner = db2inst
DB2InstHome = "/db2inst/instance"
IndepthMonitor = 1
DatabaseName = TPCC1
)
Db2udb db2udb (
DB2InstOwner = db2inst
DB2InstHome = "/db2inst/instance"
IndepthMonitor = 1
DatabaseName = TPCC1
)
DiskGroup db2udb_dg1 (
DiskGroup = db2dg1
)
DiskGroup db2udb_dg1 (
DiskGroup = db2dg1
)
IP db2udb_ip (
Device = en0
Address = "10.140.xx.02"
NetMask = "255.255.xxx.0"
)
IP db2udb_ip (
Device = en0
Address = "10.140.xx.01"
NetMask = "255.255.xxx.0"
)
Mount db2udb_mnt0 (
MountPoint = "/db2inst"
BlockDevice = "/dev/vx/dsk/db2dg1/base"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt0 (
MountPoint = "/db2inst"
BlockDevice = "/dev/vx/dsk/db2dg1/base"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt1 (
MountPoint = "/db2inst/db/mnt1"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt1"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt1 (
MountPoint = "/db2inst/db/mnt1"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt1"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt2 (
MountPoint = "/db2inst/db/mnt2"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt2"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt2 (
MountPoint = "/db2inst/db/mnt2"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt2"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt3 (
MountPoint = "/db2inst/db/mnt3"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt3"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt3 (
MountPoint = "/db2inst/db/mnt3"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt3"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt4 (
MountPoint = "/db2inst/db/mnt4"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt4"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt4 (
MountPoint = "/db2inst/db/mnt4"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt4"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt5 (
MountPoint = "/db2inst/db/temp"
BlockDevice = "/dev/vx/dsk/db2dg1/dbtemp"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt5 (
MountPoint = "/db2inst/db/temp"
BlockDevice = "/dev/vx/dsk/db2dg1/dbtemp"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt6 (
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
39
MountPoint = "/db2inst/db/log"
BlockDevice = "/dev/vx/dsk/db2dg1/log"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt6 (
MountPoint = "/db2inst/db/log"
BlockDevice = "/dev/vx/dsk/db2dg1/log"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt7 (
MountPoint = "/db2inst/backup"
BlockDevice = "/dev/vx/dsk/db2dg1/backup"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt7 (
MountPoint = "/db2inst/backup"
BlockDevice = "/dev/vx/dsk/db2dg1/backup"
FSType = vxfs
FsckOpt = " -y -o full "
)
NIC db2udb_nic (
Device = en0
NetworkType = ether
NetworkHosts = { "10.140.xx.7", "10.140.xx.8" }
)
NIC db2udb_nic (
Device = en0
NetworkType = ether
NetworkHosts = { "10.140.xx.5", "10.140.xx.6" }
)
SVCCopyServices db2udb_svccp (
SSHPathToIDFile = " /.ssh/id_dsa "
GroupName = svcmmMDR
SVCClusterIP = "10.140.xx.xxx"
DisconnectTakeover = 1
)
SVCCopyServices db2udb_svccp (
SSHPathToIDFile = " /.ssh/id_dsa "
GroupName = svcmmMDR
SVCClusterIP = "10.140.xx.xxx"
DisconnectTakeover = 1
)
Volume db2udb_vol00 (
Volume = base
DiskGroup = db2dg1
)
Volume db2udb_vol00 (
Volume = base
DiskGroup = db2dg1
)
Volume db2udb_vol01 (
Volume = mnt1
DiskGroup = db2dg1
)
Volume db2udb_vol01 (
Volume = mnt1
DiskGroup = db2dg1
)
Volume db2udb_vol02 (
Volume = mnt2
DiskGroup = db2dg1
)
Volume db2udb_vol02 (
Volume = mnt2
DiskGroup = db2dg1
)
Volume db2udb_vol03 (
Volume = mnt3
DiskGroup = db2dg1
)
Volume db2udb_vol03 (
Volume = mnt3
DiskGroup = db2dg1
)
Volume db2udb_vol04 (
Volume = mnt4
DiskGroup = db2dg1
)
Volume db2udb_vol04 (
Volume = mnt4
DiskGroup = db2dg1
)
Volume db2udb_vol05 (
Volume = dbtemp
DiskGroup = db2dg1
)
Volume db2udb_vol05 (
Volume = dbtemp
DiskGroup = db2dg1
)
Volume db2udb_vol06 (
Volume = log
DiskGroup = db2dg1
)
Volume db2udb_vol06 (
Volume = log
DiskGroup = db2dg1
)
Volume db2udb_vol07 (
Volume = backup
DiskGroup = db2dg1
)
Volume db2udb_vol07 (
Volume = backup
DiskGroup = db2dg1
)
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
40
main.cf.ora.siteA
include "types.cf"
include "Db2udbTypes.cf"
include "OracleTypes.cf"
include "SVCCopyServicesTypes.cf"
include "types.cf"
include "Db2udbTypes.cf"
include "OracleTypes.cf"
include "SVCCopyServicesTypes.cf"
cluster ClustsvcP (
UserNames = { admin = bIJbIDiFJeJJhRJdIG }
ClusterAddress = "10.140.xx.05"
Administrators = { admin }
)
cluster ClustsvcS (
UserNames = { admin = IpqIpkPmqLqqOyqKpn }
ClusterAddress = "10.140.xx.06"
Administrators = { admin }
)
remotecluster ClustsvcS (
ClusterAddress = "10.140.xx.06"
)
remotecluster ClustsvcP (
ClusterAddress = "10.140.xx.05"
)
heartbeat Icmp (
ClusterList = { ClustsvcS }
AYATimeout = 30
Arguments @ClustsvcS = { "10.140.xx.06" }
)
heartbeat Icmp (
ClusterList = { ClustsvcP }
AYATimeout = 30
Arguments @ClustsvcP = { "10.140.xx.05" }
)
system ClustsvcPNd1 (
)
system ClustsvcSNd1 (
)
system ClustsvcPNd2 (
)
system ClustsvcSNd2 (
)
group ClusterService (
SystemList = { ClustsvcPNd1 = 0, ClustsvcPNd2 = 0 }
AutoStartList = { ClustsvcPNd1, ClustsvcPNd2 }
OnlineRetryLimit = 3
OnlineRetryInterval = 3
)
group ClusterService (
SystemList = { ClustsvcSNd1 = 0, ClustsvcSNd2 = 0 }
AutoStartList = { ClustsvcSNd1, ClustsvcSNd2 }
OnlineRetryLimit = 3
OnlineRetryInterval = 3
)
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
41
Application wac (
StartProgram = "/opt/VRTSvcs/bin/wacstart"
StopProgram = "/opt/VRTSvcs/bin/wacstop"
MonitorProcesses = { "/opt/VRTSvcs/bin/wac" }
)
Application wac (
StartProgram = "/opt/VRTSvcs/bin/wacstart"
StopProgram = "/opt/VRTSvcs/bin/wacstop"
MonitorProcesses = { "/opt/VRTSvcs/bin/wac" }
)
IP gcoip (
Device = en0
Address = "10.140.xx.05"
NetMask = "255.255.xxx.0"
)
IP gcoip (
Device = en0
Address = "10.140.xx.06"
NetMask = "255.255.xxx.0"
)
NIC gconic (
Device = en0
)
NIC gconic (
Device = en0
)
group oracle_grp1 (
SystemList = { ClustsvcPNd1 = 0, ClustsvcPNd2 = 1 }
ClusterList = { ClustsvcP = 0, ClustsvcS = 1 }
Authority = 1
AutoStartList = { ClustsvcPNd1, ClustsvcPNd2 }
)
group oracle_grp1 (
SystemList = { ClustsvcSNd1 = 0, ClustsvcSNd2 = 1 }
ClusterList = { ClustsvcP = 0, ClustsvcS = 1 }
AutoStartList = { ClustsvcSNd1, ClustsvcSNd2 }
)
DiskGroup oracle_dg0 (
DiskGroup = oracle1
)
DiskGroup oracle_dg0 (
DiskGroup = oracle1
)
DiskGroup oracle_dg1 (
DiskGroup = oradata1
)
DiskGroup oracle_dg1 (
DiskGroup = oradata1
)
IP oracle_ip (
Device = en0
Address = "10.140.xx.04"
NetMask = "255.255.xxx.0"
)
IP oracle_ip (
Device = en0
Address = "10.140.xx.03"
NetMask = "255.255.xxx.0"
)
Mount oracle_mnt0 (
MountPoint = "/oracle"
BlockDevice = "/dev/vx/dsk/oracle1/base"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt0 (
MountPoint = "/oracle"
BlockDevice = "/dev/vx/dsk/oracle1/base"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt1 (
MountPoint = "/oradata"
BlockDevice = "/dev/vx/dsk/oradata1/mnt1"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt1 (
MountPoint = "/oradata"
BlockDevice = "/dev/vx/dsk/oradata1/mnt1"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt2 (
MountPoint = "/oradata/tpcc/mnt2"
BlockDevice = "/dev/vx/dsk/oradata1/mnt2"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt2 (
MountPoint = "/oradata/tpcc/mnt2"
BlockDevice = "/dev/vx/dsk/oradata1/mnt2"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt3 (
MountPoint = "/oradata/tpcc/mnt3"
BlockDevice = "/dev/vx/dsk/oradata1/mnt3"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt3 (
MountPoint = "/oradata/tpcc/mnt3"
BlockDevice = "/dev/vx/dsk/oradata1/mnt3"
FSType = vxfs
FsckOpt = " -y -o full "
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
42
)
Mount oracle_mnt4 (
MountPoint = "/oradata/tpcc/mnt4"
BlockDevice = "/dev/vx/dsk/oradata1/mnt4"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt4 (
MountPoint = "/oradata/tpcc/mnt4"
BlockDevice = "/dev/vx/dsk/oradata1/mnt4"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt5 (
MountPoint = "/oradata/tpcc/log"
BlockDevice = "/dev/vx/dsk/oradata1/log"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt5 (
MountPoint = "/oradata/tpcc/log"
BlockDevice = "/dev/vx/dsk/oradata1/log"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt6 (
MountPoint = "/oradata/tpcc/dbtemp"
BlockDevice = "/dev/vx/dsk/oradata1/dbtemp"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt6 (
MountPoint = "/oradata/tpcc/dbtemp"
BlockDevice = "/dev/vx/dsk/oradata1/dbtemp"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt7 (
MountPoint = "/oradata/backup"
BlockDevice = "/dev/vx/dsk/oradata1/backup"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt7 (
MountPoint = "/oradata/backup"
BlockDevice = "/dev/vx/dsk/oradata1/backup"
FSType = vxfs
FsckOpt = " -y -o full "
)
NIC oracle_nic (
Device = en0
NetworkType = ether
NetworkHosts = { "10.140.xx.7", "10.140.xx.8" }
)
NIC oracle_nic (
Device = en0
NetworkType = ether
NetworkHosts = { "10.140.xx.5", "10.140.xx.6" }
)
Netlsnr oracle_lsnr (
Owner = oracle
Home = "/oracle/orahome/"
TnsAdmin = "/oracle/orahome/network/admin/"
Listener @ClustsvcSNd1 = LISTENER_CLUSTSVCSND1
Listener @ClustsvcSNd2 = LISTENER_CLUSTSVCSND2
EnvFile = "/oracle/.profile"
LsnrPwd = DRHrDPgPG
)
Netlsnr oracle_lsnr (
Owner = oracle
Home = "/oracle/orahome/"
TnsAdmin = "/oracle/orahome/network/admin/"
Listener @ClustsvcPNd1 =
LISTENER_CLUSTSVCPND1
Listener @ClustsvcPNd2 =
LISTENER_CLUSTSVCPND2
EnvFile = "/oracle/.profile"
LsnrPwd = DRHrDPgPG
)
Oracle oracle (
Sid = tpcc
Owner = oracle
Home = "/oracle/orahome"
StartUpOpt = STARTUP
EnvFile = "/oracle/.profile"
DetailMonitor = 1
User = tpcc
Pword = aoeOamDmd
Table = test
)
Oracle oracle (
Sid = tpcc
Owner = oracle
Home = "/oracle/orahome"
StartUpOpt = STARTUP
EnvFile = "/oracle/.profile"
DetailMonitor = 1
User = tpcc
Pword = aoeOamDmd
Table = test
)
SVCCopyServices oracle_svccp (
SSHPathToIDFile = " /.ssh/id_dsa "
GroupName = svcmmMDR
SVCClusterIP = "10.140.xx.xxx"
DisconnectTakeover = 1
)
SVCCopyServices oracle_svccp (
SSHPathToIDFile = " /.ssh/id_dsa "
GroupName = svcmmMDR
SVCClusterIP = "10.140.xx.xxx"
DisconnectTakeover = 1
)
Volume oracle_vol00 (
Volume = base
DiskGroup = oracle1
)
Volume oracle_vol00 (
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
43
Volume = base
DiskGroup = oracle1
)
Volume oracle_vol01 (
Volume = mnt1
DiskGroup = oradata1
)
Volume oracle_vol01 (
Volume = mnt1
DiskGroup = oradata1
)
Volume oracle_vol02 (
Volume = mnt2
DiskGroup = oradata1
)
Volume oracle_vol02 (
Volume = mnt2
DiskGroup = oradata1
)
Volume oracle_vol03 (
Volume = mnt3
DiskGroup = oradata1
)
Volume oracle_vol03 (
Volume = mnt3
DiskGroup = oradata1
)
Volume oracle_vol04 (
Volume = mnt4
DiskGroup = oradata1
)
Volume oracle_vol04 (
Volume = mnt4
DiskGroup = oradata1
)
Volume oracle_vol05 (
Volume = log
DiskGroup = oradata1
)
Volume oracle_vol05 (
Volume = log
DiskGroup = oradata1
)
Volume oracle_vol06 (
Volume = dbtemp
DiskGroup = oradata1
)
Volume oracle_vol06 (
Volume = dbtemp
DiskGroup = oradata1
)
Volume oracle_vol07 (
Volume = backup
DiskGroup = oradata1
)
Volume oracle_vol07 (
Volume = backup
DiskGroup = oradata1
)
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
44
VCS configuration file for combined Oracle and Db2 Application Service group and Firedrill
main.cf.oradb2.siteA
main.cf.oradb2.siteB
include "types.cf"
include "Db2udbTypes.cf"
include "OracleTypes.cf"
include "SVCCopyServicesTypes.cf"
include "types.cf"
include "Db2udbTypes.cf"
include "OracleTypes.cf"
include "SVCCopyServicesTypes.cf"
cluster ClustsvcP (
UserNames = { admin = bIJbIDiFJeJJhRJdIG }
ClusterAddress = "10.140.xx.05"
Administrators = { admin }
)
cluster ClustsvcS (
UserNames = { admin = IpqIpkPmqLqqOyqKpn }
ClusterAddress = "10.140.xx.06"
Administrators = { admin }
)
remotecluster ClustsvcS (
ClusterAddress = "10.140.xx.06"
)
remotecluster ClustsvcP (
ClusterAddress = "10.140.xx.05"
)
heartbeat Icmp (
ClusterList = { ClustsvcS }
AYATimeout = 30
Arguments @ClustsvcS = { "10.140.xx.06" }
)
heartbeat Icmp (
ClusterList = { ClustsvcP }
AYATimeout = 30
Arguments @ClustsvcP = { "10.140.xx.05" }
)
system gl-ax04 (
)
system gl-ax06 (
)
system gl-ax05 (
)
system gl-ax07 (
)
group ClusterService (
SystemList = { gl-ax04 = 0, gl-ax05 = 0 }
AutoStartList = { gl-ax04, gl-ax05 }
OnlineRetryLimit = 3
OnlineRetryInterval = 3
)
group ClusterService (
SystemList = { gl-ax06 = 0, gl-ax07 = 0 }
AutoStartList = { gl-ax06, gl-ax07 }
OnlineRetryLimit = 3
OnlineRetryInterval = 3
)
Application wac (
StartProgram = "/opt/VRTSvcs/bin/wacstart"
StopProgram = "/opt/VRTSvcs/bin/wacstop"
MonitorProcesses = { "/opt/VRTSvcs/bin/wac" }
)
Application wac (
StartProgram = "/opt/VRTSvcs/bin/wacstart"
StopProgram = "/opt/VRTSvcs/bin/wacstop"
MonitorProcesses = { "/opt/VRTSvcs/bin/wac" }
)
IP gcoip (
Device = en0
Address = "10.140.xx.05"
NetMask = "255.255.xxx.0"
)
IP gcoip (
Device = en0
Address = "10.140.xx.06"
NetMask = "255.255.xxx.0"
)
NIC gconic (
Device = en0
)
NIC gconic (
Device = en0
)
group app_grp1 (
SystemList = { gl-ax04 = 0, gl-ax05 = 1 }
ClusterList = { ClustsvcP = 0, ClustsvcS = 1 }
Authority = 1
AutoStartList = { gl-ax04, gl-ax05 }
)
group app_grp1 (
SystemList = { gl-ax06 = 0, gl-ax07 = 1 }
ClusterList = { ClustsvcP = 0, ClustsvcS = 1 }
AutoStartList = { gl-ax06, gl-ax07 }
)
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
45
Db2udb db2udb (
DB2InstOwner = db2inst
DB2InstHome = "/db2inst/instance"
IndepthMonitor = 1
DatabaseName = TPCC1
)
Db2udb db2udb (
DB2InstOwner = db2inst
DB2InstHome = "/db2inst/instance"
IndepthMonitor = 1
DatabaseName = TPCC1
)
DiskGroup db2udb_dg1 (
DiskGroup = db2dg1
)
DiskGroup db2udb_dg1 (
DiskGroup = db2dg1
)
DiskGroup oracle_dg0 (
DiskGroup = oracle1
)
DiskGroup oracle_dg0 (
DiskGroup = oracle1
)
DiskGroup oracle_dg1 (
DiskGroup = oradata1
)
DiskGroup oracle_dg1 (
DiskGroup = oradata1
)
IP db2udb_ip (
Device = en0
Address = "10.140.xx.02"
NetMask = "255.255.xxx.0"
)
IP db2udb_ip (
Device = en0
Address = "10.140.xx.01"
NetMask = "255.255.xxx.0"
)
IP oracle_ip (
Device = en0
Address = "10.140.xx.04"
NetMask = "255.255.xxx.0"
)
IP oracle_ip (
Device = en0
Address = "10.140.xx.03"
NetMask = "255.255.xxx.0"
)
Mount db2udb_mnt0 (
MountPoint = "/db2inst"
BlockDevice = "/dev/vx/dsk/db2dg1/base"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt0 (
MountPoint = "/db2inst"
BlockDevice = "/dev/vx/dsk/db2dg1/base"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt1 (
MountPoint = "/db2inst/db/mnt1"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt1"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt1 (
MountPoint = "/db2inst/db/mnt1"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt1"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt2 (
MountPoint = "/db2inst/db/mnt2"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt2"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt2 (
MountPoint = "/db2inst/db/mnt2"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt2"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt3 (
MountPoint = "/db2inst/db/mnt3"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt3"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt3 (
MountPoint = "/db2inst/db/mnt3"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt3"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt4 (
MountPoint = "/db2inst/db/mnt4"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt4"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt4 (
MountPoint = "/db2inst/db/mnt4"
BlockDevice = "/dev/vx/dsk/db2dg1/mnt4"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt5 (
MountPoint = "/db2inst/db/temp"
Mount db2udb_mnt5 (
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
46
BlockDevice = "/dev/vx/dsk/db2dg1/dbtemp"
FSType = vxfs
FsckOpt = " -y -o full "
)
MountPoint = "/db2inst/db/temp"
BlockDevice = "/dev/vx/dsk/db2dg1/dbtemp"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt6 (
MountPoint = "/db2inst/db/log"
BlockDevice = "/dev/vx/dsk/db2dg1/log"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt6 (
MountPoint = "/db2inst/db/log"
BlockDevice = "/dev/vx/dsk/db2dg1/log"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt7 (
MountPoint = "/db2inst/backup"
BlockDevice = "/dev/vx/dsk/db2dg1/backup"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount db2udb_mnt7 (
MountPoint = "/db2inst/backup"
BlockDevice = "/dev/vx/dsk/db2dg1/backup"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt0 (
MountPoint = "/oracle"
BlockDevice = "/dev/vx/dsk/oracle1/base"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt0 (
MountPoint = "/oracle"
BlockDevice = "/dev/vx/dsk/oracle1/base"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt1 (
MountPoint = "/oradata"
BlockDevice = "/dev/vx/dsk/oradata1/mnt1"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt1 (
MountPoint = "/oradata"
BlockDevice = "/dev/vx/dsk/oradata1/mnt1"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt2 (
MountPoint = "/oradata/tpcc/mnt2"
BlockDevice = "/dev/vx/dsk/oradata1/mnt2"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt2 (
MountPoint = "/oradata/tpcc/mnt2"
BlockDevice = "/dev/vx/dsk/oradata1/mnt2"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt3 (
MountPoint = "/oradata/tpcc/mnt3"
BlockDevice = "/dev/vx/dsk/oradata1/mnt3"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt3 (
MountPoint = "/oradata/tpcc/mnt3"
BlockDevice = "/dev/vx/dsk/oradata1/mnt3"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt4 (
MountPoint = "/oradata/tpcc/mnt4"
BlockDevice = "/dev/vx/dsk/oradata1/mnt4"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt4 (
MountPoint = "/oradata/tpcc/mnt4"
BlockDevice = "/dev/vx/dsk/oradata1/mnt4"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt5 (
MountPoint = "/oradata/tpcc/log"
BlockDevice = "/dev/vx/dsk/oradata1/log"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt5 (
MountPoint = "/oradata/tpcc/log"
BlockDevice = "/dev/vx/dsk/oradata1/log"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt6 (
MountPoint = "/oradata/tpcc/dbtemp"
BlockDevice = "/dev/vx/dsk/oradata1/dbtemp"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt6 (
MountPoint = "/oradata/tpcc/dbtemp"
BlockDevice = "/dev/vx/dsk/oradata1/dbtemp"
FSType = vxfs
FsckOpt = " -y -o full "
)
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
47
Mount oracle_mnt7 (
MountPoint = "/oradata/backup"
BlockDevice = "/dev/vx/dsk/oradata1/backup"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount oracle_mnt7 (
MountPoint = "/oradata/backup"
BlockDevice = "/dev/vx/dsk/oradata1/backup"
FSType = vxfs
FsckOpt = " -y -o full "
)
NIC app_nic (
Device = en0
NetworkType = ether
NetworkHosts = { "10.140.xx.7", "10.140.xx.8" }
)
NIC app_nic (
Device = en0
NetworkType = ether
NetworkHosts = { "10.140.xx.5", "10.140.xx.6" }
)
Netlsnr oracle_lsnr (
Owner = oracle
Home = "/oracle/orahome/"
TnsAdmin = "/oracle/orahome/network/admin/"
Listener @gl-ax06 = LISTENER_CLUSTSVCSND1
Listener @gl-ax07 = LISTENER_CLUSTSVCSND2
EnvFile = "/oracle/.profile"
LsnrPwd = DRHrDPgPG
)
Netlsnr oracle_lsnr (
Owner = oracle
Home = "/oracle/orahome/"
TnsAdmin = "/oracle/orahome/network/admin/"
Listener @gl-ax04 = LISTENER_CLUSTSVCPND1
Listener @gl-ax05 = LISTENER_CLUSTSVCPND2
EnvFile = "/oracle/.profile"
LsnrPwd = DRHrDPgPG
)
Oracle oracle (
Sid = tpcc
Owner = oracle
Home = "/oracle/orahome"
StartUpOpt = STARTUP
EnvFile = "/oracle/.profile"
DetailMonitor = 1
User = tpcc
Pword = aoeOamDmd
Table = test
)
Oracle oracle (
Sid = tpcc
Owner = oracle
Home = "/oracle/orahome"
StartUpOpt = STARTUP
EnvFile = "/oracle/.profile"
DetailMonitor = 1
User = tpcc
Pword = aoeOamDmd
Table = test
)
SVCCopyServices app_svccp (
SSHPathToIDFile = " /.ssh/id_dsa "
GroupName = svcgmMDR
SVCClusterIP = "10.140.xx.xxx"
DisconnectTakeover = 1
)
SVCCopyServices app_svccp (
SSHPathToIDFile = " /.ssh/id_dsa "
GroupName = svcgmMDR
SVCClusterIP = "10.140.xx.xxx"
DisconnectTakeover = 1
)
Volume db2udb_vol00 (
Volume = base
DiskGroup = db2dg1
)
Volume db2udb_vol00 (
Volume = base
DiskGroup = db2dg1
)
Volume db2udb_vol01 (
Volume = mnt1
DiskGroup = db2dg1
)
Volume db2udb_vol01 (
Volume = mnt1
DiskGroup = db2dg1
)
Volume db2udb_vol02 (
Volume = mnt2
DiskGroup = db2dg1
)
Volume db2udb_vol02 (
Volume = mnt2
DiskGroup = db2dg1
)
Volume db2udb_vol03 (
Volume = mnt3
DiskGroup = db2dg1
)
Volume db2udb_vol03 (
Volume = mnt3
DiskGroup = db2dg1
)
Volume db2udb_vol04 (
Volume = mnt4
DiskGroup = db2dg1
)
Volume db2udb_vol04 (
Volume = mnt4
DiskGroup = db2dg1
)
Volume db2udb_vol05 (
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
48
Volume = dbtemp
DiskGroup = db2dg1
)
Volume db2udb_vol05 (
Volume = dbtemp
DiskGroup = db2dg1
)
Volume db2udb_vol06 (
Volume = log
DiskGroup = db2dg1
)
Volume db2udb_vol06 (
Volume = log
DiskGroup = db2dg1
)
Volume db2udb_vol07 (
Volume = backup
DiskGroup = db2dg1
)
Volume db2udb_vol07 (
Volume = backup
DiskGroup = db2dg1
)
Volume oracle_vol00 (
Volume = base
DiskGroup = oracle1
)
Volume oracle_vol00 (
Volume = base
DiskGroup = oracle1
)
Volume oracle_vol01 (
Volume = mnt1
DiskGroup = oradata1
)
Volume oracle_vol01 (
Volume = mnt1
DiskGroup = oradata1
)
Volume oracle_vol02 (
Volume = mnt2
DiskGroup = oradata1
)
Volume oracle_vol02 (
Volume = mnt2
DiskGroup = oradata1
)
Volume oracle_vol03 (
Volume = mnt3
DiskGroup = oradata1
)
Volume oracle_vol03 (
Volume = mnt3
DiskGroup = oradata1
)
Volume oracle_vol04 (
Volume = mnt4
DiskGroup = oradata1
)
Volume oracle_vol04 (
Volume = mnt4
DiskGroup = oradata1
)
Volume oracle_vol05 (
Volume = log
DiskGroup = oradata1
)
Volume oracle_vol05 (
Volume = log
DiskGroup = oradata1
)
Volume oracle_vol06 (
Volume = dbtemp
DiskGroup = oradata1
)
Volume oracle_vol06 (
Volume = dbtemp
DiskGroup = oradata1
)
Volume oracle_vol07 (
Volume = backup
DiskGroup = oradata1
)
Volume oracle_vol07 (
Volume = backup
DiskGroup = oradata1
)
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
49
group firedrill_app_grp1 (
SystemList = { gl-ax06 = 0, gl-ax07 = 1 }
AutoFailOver = 0
)
Db2udb FD_db2udb (
DB2InstOwner = db2inst
DB2InstHome = "/db2inst/instance"
IndepthMonitor = 1
DatabaseName = TPCC1
)
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
50
DiskGroup FD_db2udb_dg1 (
DiskGroup = db2dg1_fd
)
DiskGroup FD_oracle_dg0 (
DiskGroup = oracle1_fd
)
DiskGroup FD_oracle_dg1 (
DiskGroup = oradata1_fd
)
IP FD_db2udb_ip (
Device = en0
Address = "10.140.xx.02"
NetMask = "255.255.xxx.0"
)
IP FD_oracle_ip (
Device = en0
Address = "10.140.xx.04"
NetMask = "255.255.xxx.0"
)
Mount FD_db2udb_mnt0 (
MountPoint = "/db2inst"
BlockDevice = "/dev/vx/dsk/db2dg1_fd/base"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount FD_db2udb_mnt1 (
MountPoint = "/db2inst/db/mnt1"
BlockDevice = "/dev/vx/dsk/db2dg1_fd/mnt1"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount FD_db2udb_mnt2 (
MountPoint = "/db2inst/db/mnt2"
BlockDevice = "/dev/vx/dsk/db2dg1_fd/mnt2"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount FD_db2udb_mnt3 (
MountPoint = "/db2inst/db/mnt3"
BlockDevice = "/dev/vx/dsk/db2dg1_fd/mnt3"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount FD_db2udb_mnt4 (
MountPoint = "/db2inst/db/mnt4"
BlockDevice = "/dev/vx/dsk/db2dg1_fd/mnt4"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount FD_db2udb_mnt5 (
MountPoint = "/db2inst/db/temp"
BlockDevice = "/dev/vx/dsk/db2dg1_fd/dbtemp"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount FD_db2udb_mnt6 (
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
51
MountPoint = "/db2inst/db/log"
BlockDevice = "/dev/vx/dsk/db2dg1_fd/log"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount FD_db2udb_mnt7 (
MountPoint = "/db2inst/backup"
BlockDevice = "/dev/vx/dsk/db2dg1_fd/backup"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount FD_oracle_mnt0 (
MountPoint = "/oracle"
BlockDevice = "/dev/vx/dsk/oracle1_fd/base"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount FD_oracle_mnt1 (
MountPoint = "/oradata"
BlockDevice = "/dev/vx/dsk/oradata1_fd/mnt1"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount FD_oracle_mnt2 (
MountPoint = "/oradata/tpcc/mnt2"
BlockDevice = "/dev/vx/dsk/oradata1_fd/mnt2"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount FD_oracle_mnt3 (
MountPoint = "/oradata/tpcc/mnt3"
BlockDevice = "/dev/vx/dsk/oradata1_fd/mnt3"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount FD_oracle_mnt4 (
MountPoint = "/oradata/tpcc/mnt4"
BlockDevice = "/dev/vx/dsk/oradata1_fd/mnt4"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount FD_oracle_mnt5 (
MountPoint = "/oradata/tpcc/log"
BlockDevice = "/dev/vx/dsk/oradata1_fd/log"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount FD_oracle_mnt6 (
MountPoint = "/oradata/tpcc/dbtemp"
BlockDevice = "/dev/vx/dsk/oradata1_fd/dbtemp"
FSType = vxfs
FsckOpt = " -y -o full "
)
Mount FD_oracle_mnt7 (
MountPoint = "/oradata/backup"
BlockDevice = "/dev/vx/dsk/oradata1_fd/backup"
FSType = vxfs
FsckOpt = " -y -o full "
)
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
52
Netlsnr FD_oracle_lsnr (
Owner = oracle
Home = "/oracle/orahome/"
TnsAdmin = "/oracle/orahome/network/admin/"
Listener @gl-ax06 = LISTENER_CLUSTSVCSND1
Listener @gl-ax07 = LISTENER_CLUSTSVCSND2
EnvFile = "/oracle/.profile"
LsnrPwd = DRHrDPgPG
)
Oracle FD_oracle (
Sid = tpcc
Owner = oracle
Home = "/oracle/orahome"
StartUpOpt = STARTUP
EnvFile = "/oracle/.profile"
DetailMonitor = 1
User = tpcc
Pword = aoeOamDmd
Table = test
)
SVCCopyServicesSnap FD_app_svccpsnap (
TargetResName = app_svccp
FCMapGroupName = FD_gmappgrp1cg
)
Volume FD_db2udb_vol00 (
Volume = base
DiskGroup = db2dg1_fd
)
Volume FD_db2udb_vol01 (
Volume = mnt1
DiskGroup = db2dg1_fd
)
Volume FD_db2udb_vol02 (
Volume = mnt2
DiskGroup = db2dg1_fd
)
Volume FD_db2udb_vol03 (
Volume = mnt3
DiskGroup = db2dg1_fd
)
Volume FD_db2udb_vol04 (
Volume = mnt4
DiskGroup = db2dg1_fd
)
Volume FD_db2udb_vol05 (
Volume = dbtemp
DiskGroup = db2dg1_fd
)
Volume FD_db2udb_vol06 (
Volume = log
DiskGroup = db2dg1_fd
)
Volume FD_db2udb_vol07 (
Volume = backup
DiskGroup = db2dg1_fd
)
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
53
Volume FD_oracle_vol00 (
Volume = base
DiskGroup = oracle1_fd
)
Volume FD_oracle_vol01 (
Volume = mnt1
DiskGroup = oradata1_fd
)
Volume FD_oracle_vol02 (
Volume = mnt2
DiskGroup = oradata1_fd
)
Volume FD_oracle_vol03 (
Volume = mnt3
DiskGroup = oradata1_fd
)
Volume FD_oracle_vol04 (
Volume = mnt4
DiskGroup = oradata1_fd
)
Volume FD_oracle_vol05 (
Volume = log
DiskGroup = oradata1_fd
)
Volume FD_oracle_vol06 (
Volume = dbtemp
DiskGroup = oradata1_fd
)
Volume FD_oracle_vol07 (
Volume = backup
DiskGroup = oradata1_fd
)
FD_db2udb requires FD_db2udb_ip
FD_db2udb requires FD_db2udb_mnt0
FD_db2udb requires FD_db2udb_mnt1
FD_db2udb requires FD_db2udb_mnt2
FD_db2udb requires FD_db2udb_mnt3
FD_db2udb requires FD_db2udb_mnt4
FD_db2udb requires FD_db2udb_mnt5
FD_db2udb requires FD_db2udb_mnt6
FD_db2udb requires FD_db2udb_mnt7
FD_db2udb_dg1 requires FD_app_svccpsnap
FD_db2udb_mnt0 requires FD_db2udb_vol00
FD_db2udb_mnt1 requires FD_db2udb_mnt0
FD_db2udb_mnt1 requires FD_db2udb_vol01
FD_db2udb_mnt2 requires FD_db2udb_mnt0
FD_db2udb_mnt2 requires FD_db2udb_vol02
FD_db2udb_mnt3 requires FD_db2udb_mnt0
FD_db2udb_mnt3 requires FD_db2udb_vol03
FD_db2udb_mnt4 requires FD_db2udb_mnt0
FD_db2udb_mnt4 requires FD_db2udb_vol04
FD_db2udb_mnt5 requires FD_db2udb_mnt0
FD_db2udb_mnt5 requires FD_db2udb_vol05
FD_db2udb_mnt6 requires FD_db2udb_mnt0
FD_db2udb_mnt6 requires FD_db2udb_vol06
FD_db2udb_mnt7 requires FD_db2udb_mnt0
FD_db2udb_mnt7 requires FD_db2udb_vol07
FD_db2udb_vol00 requires FD_db2udb_dg1
FD_db2udb_vol01 requires FD_db2udb_dg1
FD_db2udb_vol02 requires FD_db2udb_dg1
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
54
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
55
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
56
Database installation
On each system install the db2 bits. Mount the Db2 Software disk OR have access to the DB2 software
store.
cd ese.dbcs
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
57
./db2_install -p ESE
Database creation
Create instance (as root)
USER=db2inst
DB2INST=db2inst
[ -d /opt/IBM/db2/V9.1/instance ]
cd /opt/IBM/db2/V9.1/instance
[ ! -f /db2inst/instance/.profile ]
./db2idrop db2inst
./db2icrt -a server -p 70000 -s ese -u db2inst db2inst
Set up the database (db2inst)
su - db2inst
echo "PATH=$PATH:/opt/VRTSdb2ed/bin" >> .profile
exit
su - db2inst
Create database
DB2INST=db2inst
DBNAME=tpcc1
SVNAME=DB2_tpcc1
LOGDIR=/$DB2INST/db/log
BACKUP=/$DB2INST/backup
db2 update dbm cfg using diaglevel 4
db2 force applications all
db2stop
db2start
db2 drop database $DBNAME
(rm -f $LOGDIR/* $LOGDIR/NODE*/*.LOG $BACKUP/*)
db2stop
db2start
db2 create database $DBNAME on /$DB2INST/db/"\
temporary tablespace managed by system using (\
'/$DB2INST/db/temp/tmp00',\
'/$DB2INST/db/temp/tmp01',\
'/$DB2INST/db/temp/tmp02') extentsize 16 prefetchsize 64"
db2 "update db cfg for $DBNAME using NEWLOGPATH $LOGDIR"
db2 "update db cfg for $DBNAME using SORTHEAP 2048"
db2 "update db cfg for $DBNAME using logretain on"
db2 "update db cfg for $DBNAME using LOGFILSIZ 2000"
db2 "update db cfg for $DBNAME using LOGPRIMARY 100"
db2 "update db cfg for $DBNAME using LOGSECOND 150"
db2set DB2COMM=tcpip
db2 "update dbm cfg using svcename $SVNAME"
# "tpcc1" needs to match up to the SVCENAME for the database
db2stop
db2start
exit $?
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
58
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
59
su guest
su oracle
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
60
Database installation
On each system install the Oracle 10gR2. Mount the Oracle Software disk OR have access to the
Oracle software store. Install Oracle as oracle user. Edit the .profile file and set the following environment
variables. Follow instructions in the installer gui and complete installation
#su oracle
export ORACLE_BASE=/oracle
export ORACLE_HOME=$ORACLE_BASE/orahome
export ORACLE_SID=tpcc
export LIBPATH=/usr/dt/lib:$ORACLE_HOME/lib32:$ORACLE_HOME/lib
export NLSPATH=/usr/lib/nls/msg/%L/%N:/usr/lib/nls/msg/%L/%N.cat
export
PATH=$PATH:/oradata/tpcc/scripts:$ORACLE_BASE:$ORACLE_HOME:$ORACLE_HOME/bin
export DISPLAY=xhost:XX.0
$ . ./.profile
$ cd <oracle software disk path>/Disk1
./Disk1/runInstaller -ignoreSysPrereqs
Database creation
Copy the scripts listed below to a directory under /oracle. Login as oracle and run the script as
shown. Ensure that oracle users env has ORACLE_SID variable set .
$./build.sh sys manager /oracle/scripts
build.sh
#!/usr/bin/ksh
Usage ()
{
print -u2 "
$0 syspassword systempassword scriptpath
Example : $0 sys manager /tmp/scripts
"
exit 2
}
if [ $# -ne 3 ]; then
Usage
fi
export DBNAME=$ORACLE_SID
export sysPassword=$1
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
61
export systemPassword=$2
export SCRPT_PATH=$3
if [ -z $DBNAME ]
then
print -u2 " Oracle SID (ORACLE_SID) is not set. Set it in the oracle users .profile and execute it.
Rerun command again.
"
exit 2
fi
if [ ! -x $SCRPT_PATH/build.sh ]
then
print -u2 " Script directory path : $SCRPT_PATH is not valid.
Rerun command with correct path.
"
exit 2
fi
mkdir -p /oradata/$DBNAME
mkdir -p /oradata/$DBNAME/bdump
mkdir -p /oradata/$DBNAME/cdump
mkdir -p /oradata/$DBNAME/create
mkdir -p /oradata/$DBNAME/hdump
mkdir -p /oradata/$DBNAME/pfile
mkdir -p /oradata/$DBNAME/udump
mkdir -p /oradata/backup
echo Add this entry in the oratab: $DBNAME:/oracle/orahome:Y
$ORACLE_HOME/bin/sqlplus /nolog @$SCRPT_PATH/build.sql $DBNAME $sysPassword
$systemPassword $SCRPT_PATH
build.sql
set verify off
DEFINE DBNAME = &1
DEFINE sysPassword = &2
DEFINE systemPassword = &2
DEFINE SCRPT_PATH = &4
host /oracle/orahome/bin/orapwd file=/oracle/orahome/dbs/orapw.&&DBNAME
password=&&sysPassword force=y
@&&SCRPT_PATH/CreateDB.sql
@&&SCRPT_PATH/CreateDBFiles.sql
@&&SCRPT_PATH/CreateDBCatalog.sql
host echo "SPFILE='/${SCRPT_PATH}/spfile${DBNAME}.ora'" >
/oracle/orahome/dbs/init${DBNAME}.ora
@&&SCRPT_PATH/postDBCreation.sql
CreateDB.sql
connect SYS/&&sysPassword as SYSDBA
set echo on
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
62
spool /oracle/orahome/assistants/dbca/logs/CreateDB.log
shutdown immediate ;
startup nomount pfile="&& SCRPT_PATH /init.ora";
DEFINE DBNAME = &1
CREATE DATABASE &&DBNAME
CONTROLFILE REUSE
MAXINSTANCES 32
MAXLOGHISTORY 1
MAXLOGFILES 192
MAXLOGMEMBERS 3
MAXDATAFILES 1024
DATAFILE '/oradata/&&DBNAME/system01.dbf' SIZE 300M REUSE AUTOEXTEND ON NEXT
10240K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '/oradata/&&DBNAME/sysaux01.dbf' SIZE 120M REUSE AUTOEXTEND ON
NEXT 10240K MAXSIZE UNLIMITED
DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE
'/oradata/&&DBNAME/temp/temp01.dbf' SIZE 20M REUSE AUTOEXTEND ON NEXT 640K
MAXSIZE UNLIMITED
UNDO TABLESPACE "UNDOTBS1" DATAFILE '/oradata/&&DBNAME/undotbs01.dbf' SIZE 200M
REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED
CHARACTER SET WE8ISO8859P1
NATIONAL CHARACTER SET AL16UTF16
LOGFILE GROUP 1 ('/oradata/&&DBNAME/log/redo01.log') SIZE 10240K REUSE,
GROUP 2 ('/oradata/&&DBNAME/log/redo02.log') SIZE 10240K REUSE
;
spool off
CreateDBFiles.sql
connect SYS/&&sysPassword as SYSDBA
set echo on
spool /oracle/orahome/assistants/dbca/logs/CreateDBFiles.log
CREATE TABLESPACE "USERS1" LOGGING DATAFILE
'/oradata/&&DBNAME/mnt2/users01.dbf' SIZE 5M REUSE AUTOEXTEND ON NEXT 1280K
MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT
AUTO ;
CREATE TABLESPACE "USERS2" LOGGING DATAFILE
'/oradata/&&DBNAME/mnt3/users02.dbf' SIZE 5M REUSE AUTOEXTEND ON NEXT 1280K
MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT
AUTO ;
CREATE TABLESPACE "USERS3" LOGGING DATAFILE
'/oradata/&&DBNAME/mnt4/users03.dbf' SIZE 5M REUSE AUTOEXTEND ON NEXT 1280K
MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT
AUTO ;
spool off
CreateDBCatalog.sql
connect SYS/&&sysPassword as SYSDBA
set echo on
spool /oracle/orahome/assistants/dbca/logs/CreateDBCatalog.log
@/oracle/orahome/rdbms/admin/catalog.sql;
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
63
@/oracle/orahome/rdbms/admin/catblock.sql;
@/oracle/orahome/rdbms/admin/catproc.sql;
@/oracle/orahome/rdbms/admin/catoctk.sql;
@/oracle/orahome/rdbms/admin/owminst.plb;
connect SYSTEM/manager
@/oracle/orahome/sqlplus/admin/pupbld.sql;
connect SYSTEM/manager
set echo on
spool /oracle/orahome/assistants/dbca/logs/sqlPlusHelp.log
@/oracle/orahome/sqlplus/admin/help/hlpbld.sql helpus.sql;
spool off
postDBCreation.sql
connect SYS/&&sysPassword as SYSDBA
set echo on
spool /oracle/orahome/assistants/dbca/logs/postDBCreation.log
create spfile='/oradata/tpcc/pfile/spfiletpcc.ora' FROM pfile='&&SCRPT_PATH/init.ora';
shutdown immediate;
host cp $SCRPT_PATH/init.ora /oracle/orahome/dbs/inittpcc.ora
connect SYS/&&sysPassword as SYSDBA
startup ;
select 'utl_recomp_begin: ' || to_char(sysdate, 'HH:MI:SS') from dual;
execute utl_recomp.recomp_serial();
select 'utl_recomp_end: ' || to_char(sysdate, 'HH:MI:SS') from dual;
alter user scott account unlock ;
alter user scott identified by tiger replace tiger ;
create user tpcc identified by tpcc;
grant dba, connect, resource to tpcc;
disconnect
connect tpcc/tpcc
create table tpcc.test ( tstamp date );
insert into tpcc.test (tstamp) values (SYSDATE);
disconnect
connect tpcc/tpcc
update tpcc.test set ( tstamp ) = SYSDATE;
select TO_CHAR(tstamp, 'MON DD, YYYY HH:MI:SS AM') from tpcc.test;
exit;
Listener.ora Files
Login as oracle and execute netca to configure the listener.
The listener files used in this configuration is listed below.
# listener.ora Network Configuration File: /oracle/orahome/network/admin/listener.ora
# Generated by Oracle configuration tools.
LISTENER_ ClustsvcPNd1=
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ClustsvcPNd1.abc.def.com)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
)
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
64
LISTENER_ ClustsvcPNd2=
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ClustsvcPNd2.abc.def.com)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
)
LISTENER_ ClustsvcSNd1=
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ClustsvcSNd1.abc.def.com)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
)
LISTENER_ ClustsvcSNd2=
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ClustsvcSNd2.abc.def.com)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
)
SID_LIST_TPCC =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /oracle/orahome)
(PROGRAM = extproc)
)
)
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
65
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
66
VRTSvail
VRTSvcs.doc
VRTSvcs.man
VRTSvcs.msg.en_US
VRTSvcs.rte
VRTSvcsag.rte
VRTSvcsdb.rte
VRTSvcssvc.rte
VRTSvcsor.rte
VRTSvcsvr
VRTSvdid
VRTSveki
VRTSvlic
VRTSvmdoc
VRTSvmman
VRTSvmpro
VRTSvrdoc
VRTSvrpro
VRTSvrw
VRTSvsvc
VRTSvxfen.rte
VRTSvxfs
VRTSvxmsa
VRTSvxvm
VRTSweb.rte
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
67
Disaster Recovery using Veritas Storage Foundation Enterprise HA and IBM SAN Volume Controller Metro Mirror & Global Mirror
68