Veritas™ Cluster ServerAgents for Veritas™ VolumeReplicator ConfigurationGuide
Linux
5.1 Service Pack 1
Veritas™ Cluster Server Agents for Veritas™ VolumeReplicator Configuration Guide
The software described in this book is furnished under a license agreement and may be usedonly in accordance with the terms of the agreement.
Product version: 5.1 SP1
Document version: 5.1SP1.1
Legal NoticeCopyright © 2011 Symantec Corporation. All rights reserved.
Symantec, the Symantec logo, Veritas, Veritas Storage Foundation, CommandCentral,NetBackup, Enterprise Vault, and LiveUpdate are trademarks or registered trademarks ofSymantec corporation or its affiliates in the U.S. and other countries. Other names may betrademarks of their respective owners.
The product described in this document is distributed under licenses restricting its use,copying, distribution, and decompilation/reverse engineering. No part of this documentmay be reproduced in any form by any means without prior written authorization ofSymantec Corporation and its licensors, if any.
THE DOCUMENTATION IS PROVIDED "AS IS" AND ALL EXPRESS OR IMPLIED CONDITIONS,REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OFMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT,ARE DISCLAIMED, EXCEPT TO THE EXTENT THAT SUCH DISCLAIMERS ARE HELD TOBE LEGALLY INVALID. SYMANTEC CORPORATION SHALL NOT BE LIABLE FOR INCIDENTALOR CONSEQUENTIAL DAMAGES IN CONNECTION WITH THE FURNISHING,PERFORMANCE, OR USE OF THIS DOCUMENTATION. THE INFORMATION CONTAINEDIN THIS DOCUMENTATION IS SUBJECT TO CHANGE WITHOUT NOTICE.
The Licensed Software and Documentation are deemed to be commercial computer softwareas defined in FAR 12.212 and subject to restricted rights as defined in FAR Section 52.227-19"Commercial Computer Software - Restricted Rights" and DFARS 227.7202, "Rights inCommercial Computer Software or Commercial Computer Software Documentation", asapplicable, and any successor regulations. Any use, modification, reproduction release,performance, display or disclosure of the Licensed Software and Documentation by the U.S.Government shall be solely in accordance with the terms of this Agreement.
Symantec Corporation350 Ellis StreetMountain View, CA 94043
http://www.symantec.com
http://www.symantec.com
Technical SupportSymantec Technical Support maintains support centers globally. TechnicalSupport’s primary role is to respond to specific queries about product featuresand functionality. The Technical Support group also creates content for our onlineKnowledge Base. The Technical Support group works collaboratively with theother functional areas within Symantec to answer your questions in a timelyfashion. For example, the Technical Support group works with Product Engineeringand Symantec Security Response to provide alerting services and virus definitionupdates.
Symantec’s support offerings include the following:
■ A range of support options that give you the flexibility to select the rightamount of service for any size organization
■ Telephone and/or Web-based support that provides rapid response andup-to-the-minute information
■ Upgrade assurance that delivers software upgrades
■ Global support purchased on a regional business hours or 24 hours a day, 7days a week basis
■ Premium service offerings that include Account Management Services
For information about Symantec’s support offerings, you can visit our Web siteat the following URL:
www.symantec.com/business/support/index.jsp
All support services will be delivered in accordance with your support agreementand the then-current enterprise technical support policy.
Contacting Technical SupportCustomers with a current support agreement may access Technical Supportinformation at the following URL:
www.symantec.com/business/support/contact_techsupp_static.jsp
Before contacting Technical Support, make sure you have satisfied the systemrequirements that are listed in your product documentation. Also, you should beat the computer on which the problem occurred, in case it is necessary to replicatethe problem.
When you contact Technical Support, please have the following informationavailable:
■ Product release level
http://www.symantec.com/business/support/index.jsphttp://www.symantec.com/business/support/contact_techsupp_static.jsp
■ Hardware information
■ Available memory, disk space, and NIC information
■ Operating system
■ Version and patch level
■ Network topology
■ Router, gateway, and IP address information
■ Problem description:
■ Error messages and log files
■ Troubleshooting that was performed before contacting Symantec
■ Recent software configuration changes and network changes
Licensing and registrationIf your Symantec product requires registration or a license key, access our technicalsupport Web page at the following URL:
www.symantec.com/business/support/
Customer serviceCustomer service information is available at the following URL:
www.symantec.com/business/support/
Customer Service is available to assist with non-technical questions, such as thefollowing types of issues:
■ Questions regarding product licensing or serialization
■ Product registration updates, such as address or name changes
■ General product information (features, language availability, local dealers)
■ Latest information about product updates and upgrades
■ Information about upgrade assurance and support contracts
■ Information about the Symantec Buying Programs
■ Advice about Symantec's technical support options
■ Nontechnical presales questions
■ Issues that are related to CD-ROMs or manuals
http://www.symantec.com/business/support/http://www.symantec.com/business/support/
Support agreement resourcesIf you want to contact Symantec regarding an existing support agreement, pleasecontact the support agreement administration team for your region as follows:
[email protected] and Japan
[email protected], Middle-East, and Africa
[email protected] America and Latin America
DocumentationProduct guides are available on the media in PDF format. Make sure that you areusing the current version of the documentation. The document version appearson page 2 of each guide. The latest product documentation is available on theSymantec Web site.
https://sort.symantec.com/documents
Your feedback on product documentation is important to us. Send suggestionsfor improvements and reports on errors or omissions. Include the title anddocument version (located on the second page), and chapter and section titles ofthe text on which you are reporting. Send feedback to:
About Symantec ConnectSymantec Connect is the peer-to-peer technical community site for Symantec’senterprise customers. Participants can connect and share information with otherproduct users, including creating forum posts, articles, videos, downloads, blogsand suggesting ideas, as well as interact with Symantec product teams andTechnical Support. Content is rated by the community, and members receivereward points for their contributions.
http://www.symantec.com/connect/storage-management
mailto:[email protected]:[email protected]:[email protected]://sort.symantec.com/documentsmailto:[email protected]://www.symantec.com/connect/storage-management
Technical Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Chapter 1 Overview of the VCS agents for VVR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Introducing the VCS agents for VVR .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9How the agents for failover applications work .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
RVG agent ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10RVGPrimary agent ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13RVGSnapshot ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
How the agents for parallel applications work .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25RVGShared agent ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25RVGLogowner agent ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28RVGSharedPri agent ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
How the agents for hybrid applications work .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34Overview of how to configure VVR in a VCS environment .... . . . . . . . . . . . . . . . . 35Overview of how to configure the primary-elect feature in a VCS
globally clustered environment .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35Generic VVR setup in a VCS environment .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36Example VVR configuration in a VCS environment .... . . . . . . . . . . . . . . . . . . . . . . . . . 37
Chapter 2 Configuring the agents for high availability . . . . . . . . . . . . . . . . . . 39Requirements for configuring VVR in a VCS environment .... . . . . . . . . . . . . . . . 39
Best practices for setting up the agents ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40Example configuration for a failover application .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41Example configuration for a parallel application .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42Example—setting up VVR in a VCS environment .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Setting up the VVR configuration .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45Verifying the VVR replication state ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48Configuring the agents for failover applications .... . . . . . . . . . . . . . . . . . . . . . . 48Configuring the agents for parallel applications .... . . . . . . . . . . . . . . . . . . . . . . . 56
Configuring the agents for a bunker replication configuration .... . . . . . . . . . . 58VCS configuration for a bunker using the STORAGE
protocol ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58VCS configuration for a bunker using IP .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61How the RVGPrimary works in a bunker setup .... . . . . . . . . . . . . . . . . . . . . . . . . 61
Configuring and using the primary-elect feature ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Contents
Application availability in the case of a network disruption .... . . . . . . . 64Configuring VCS global clustering so you can choose the Primary
site ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66Choosing the Primary site after a site disaster or network
disruption .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66Troubleshooting the primary-elect feature ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Administering the service groups .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Appendix A Sample main.cf files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73Globally clustered VCS and VVR main.cf ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Contents8
Overview of the VCS agentsfor VVR
This chapter includes the following topics:
■ Introducing the VCS agents for VVR
■ How the agents for failover applications work
■ How the agents for parallel applications work
■ How the agents for hybrid applications work
■ Overview of how to configure VVR in a VCS environment
■ Overview of how to configure the primary-elect feature in a VCS globallyclustered environment
■ Generic VVR setup in a VCS environment
■ Example VVR configuration in a VCS environment
Introducing the VCS agents for VVRVCS provides agents that manage applications and resources in a cluster.
The different types of agents follow:
■ VCS comes packaged (bundled) with a set of agents that enable VCS to providehigh availability. These include agents for mount points, IP addresses, filesystems, VVR, and virtual environments. These agents are immediatelyavailable to you after installing VCS.For more information about VCS bundled agents, refer to the Veritas ClusterServer One Bundled Agents Reference Guide.
1Chapter
Agents are processes that manage predefined resource types. When an agent isstarted, it obtains configuration information from VCS. It then periodicallymonitors the resources and updates VCS with the resource status.
Typically agents do the following:
■ Bring resources online
■ Take resources offline
■ Monitor resources and report any state changes to VCS
How the agents for failover applications workThe agents for failover applications include the following:
■ See “RVG agent” on page 10.
■ See “RVGPrimary agent” on page 13.
■ See “RVGSnapshot” on page 22.
RVG agentBrings the RVG online, monitors read and write access to the RVG, and takes theRVG offline. This is a failover resource. The RVG agent enables replication betweenclusters. It manages the Primary VVR node in one cluster and the Secondary VVRnode in another cluster. Each node can be failed over in its respective cluster. Inthis way, replication is made highly available.
The RVG works with the RVGPrimary agent to provide failover of the PrimaryVVR node to the Secondary VVR node. If a disaster occurs on the Primary VVRnode and all the nodes in the Primary cluster are unavailable, the RVG agent doesnot fail over the Primary role from the Primary VVR node to the Secondary VVRnode.
Using a VCS global cluster enables you to fail over the Primary role from a PrimaryVVR node to a Secondary VVR node.
The RVG agent includes the following key features:
■ Removes potential single points of failure by enabling Primary and SecondaryVVR nodes to be clustered.
■ Enables you to bring a service group online to start VCS-managed applicationsthat use VVR.
■ Continues replication after a node in a cluster fails without losing updates.
Overview of the VCS agents for VVRHow the agents for failover applications work
10
■ Ensures that VVR can be added to any VCS cluster by including the RVGresource type definitions.
An example configuration file for this agent that can be used as a guide whencreating your configuration is located at:
/etc/VRTSvcs/conf/sample_vvr/RVG
Note: This release does not support the attributes Primary, SRL, and RLinks ofthe RVG agent. If you have a configuration from a previous release, you mustremove these attributes during the upgrade or the configuration will fail.
Resource dependencies for the RVG agentThe RVG resource represents the RVG (Replicated Volume Group) in the RDS(Replicated Data Set). The RVG resource is dependent on the DiskGroup resource.The RVG resource is also dependent on the IP resources that it uses for replication.
In a VVR environment, higher-level application resources, such as Mount, thatwould typically depend on a Volume resource must depend on the associated RVGresource.
Refer to the Veritas Cluster Server Administrator's Guide for more informationon dependencies.
Figure 1-1 Sample service group for an RVG resource
NIC
IPDiskGroup
Mount
RVG
RVG agent functionsThe RVG agent has the following agent functions:
11Overview of the VCS agents for VVRHow the agents for failover applications work
Verifies whether the DiskGroup agent has recovered the RVG. If not,recovers and starts the data volumes and the Storage Replicator Log (SRL),recovers the RVG, recovers all RLINKs in the RVG, and then starts the RVG.
Online
Stops the RVG.Offline
Monitors the state of the RVG using the vxprint command.
The RVG resource monitors an RVG for local access only. It does notmonitor replication.
Monitor
Stops the RVG.Clean
Gives the information about the replication status for the Replicated DataSet (RDS).
The info entry point displays information about the replication status ofan RDS. By default, the info interval is set to zero. To change the defaultinfo interval, use the following command:
# hatype -modify resourcetype_name InfoInterval interval
For example, to set the info interval to 60 seconds for the RVG resourcetype, enter:
# hatype -modify RVG InfoInterval 60
The info interval indicates how frequently VCS executes the info entrypoint to update the replication status. In the above example, the info intervalis set to 60, so VCS updates the replication status every 60 seconds. Todisplay the output of the info entry point, use the following command:
# hares -value resource_name ResourceInfo
The output of the info entry point is also logged in the file/var/VRTSvcs/log/engine_A.log.
Info
State definitions for the RVG agentThe RVG agent has the following state definitions:
Indicates that the RVG is in ENABLED/ACTIVE state.ONLINE
Indicates that the RVG is in DISABLED/CLEAN state.OFFLINE
The RVG resource fails if the RVG is not in the ENABLED/ACTIVE state.FAULTED
Overview of the VCS agents for VVRHow the agents for failover applications work
12
Attribute definitions for the RVG agent
Table 1-1 The required attributes for the RVG agent
DescriptionAttribute
The name of the RVG being monitored.
Type and dimension: string-scalar
RVG
The disk group that this RVG is associated with.
Type and dimension: string-scalar
DiskGroup
The name of the bunker disk group.
Type and dimension: string-scalar
StorageDG
The name of the bunker RVG.
Type and dimension: string-scalar
StorageRVG
A space-separated list of the hostids of each node in the bunkercluster.
Type and dimension: string-keylist
StorageHostIds
Resource type definitions for the RVG agentThe RVG agent resource type definition follows.
type RVG (
static int NumThreads = 1
static str ArgList[] = { RVG, DiskGroup }
str RVG
str DiskGroup
str StorageRVG
str StorageDG
str StorageHostIds
)
RVGPrimary agentAttempts to migrate or takeover a Secondary to a Primary upon an applicationfailover. The RVGPrimary agent enables migration and takeover of a VVRreplicated data set in a VCS environment. Bringing a resource of type RVGPrimaryonline causes the RVG on the local host to become a primary.
The agent is useful when hosts in both the primary and secondary side areclustered, in particular a VCS replicated data cluster or a VCS global cluster, to
13Overview of the VCS agents for VVRHow the agents for failover applications work
completely automate the availability of writable replicated disks to a VCS-managedapplication.
The RVGPrimary agent includes the following features:
■ Removes the manual steps of migrating a VVR primary and secondary roleswhen failing over applications across a wide area.
■ Minimizes the need for resynchronizing replicated volumes by attempting amigration before attempting a hard takeover.
■ Waits for the two sides of a replicated data set to become completelysynchronized before migrating roles.
■ Supports an automatic fast failback resynchronization of a downed primaryif it later returns after a takeover.
■ Allows you to distinguish the Primary site after network failure or disaster
■ Supports the ability to choose the Primary site after a site failure or networkdisruption is corrected.
A sample configuration file for this agent that you can use as a guide to createthe configuration is located at /etc/VRTSvcs/conf/sample_vvr/RVGPrimary.
Resource dependencies for the RVGPrimary agentYou usually use the RVGPrimary agent in conjunction with the RVG agent in twogroups with an online local hard group dependency. The parent group containsthe resources that manage the actual application and file systems and as theRVGPrimary resource. The child group contains the resources managing thestorage infrastructure, which include the RVG and DiskGroup type resources.
Refer to the Veritas Cluster Server Administrator's Guide for information aboutthe setup of a VVR environment using the RVGPrimary agent.
Overview of the VCS agents for VVRHow the agents for failover applications work
14
Figure 1-2 Sample service group for an RVGPrimary resource
online local hard dependency
Application service group that is online on the Primary
Oracle
RVGPrimary
MountMount Mount
NIC
IP
RVG
DiskGroup IP
NIC
Replication service group that is online at both Primary and Secondary
RVGPrimary agent functionsThe RVGPrimary agent has the following agent functions:
Determines the current role of the RVG. If the role is Secondary it attemptsa migration. It waits for any outstanding writes from the original Primary.If the original Primary is down, it attempts a takeover. If the RVG is aPrimary, it performs no actions and goes online.
Online
Performs no actions.Offline
Performs no actions. The RVG agents monitors the actual RVG.Monitor
Performs no actions.Clean
State definitions for the RVGPrimary agentThe RVGPrimary agent has the following state definitions:
Indicates that the role of the RVG is Primary.ONLLINE
15Overview of the VCS agents for VVRHow the agents for failover applications work
The RVG agents monitors the actual RVG. Accidental migration of a VVRPrimary outside of VCS causes other resources to fault immediately, suchas Mount. No special monitoring by this agent is necessary.
FAULTED
Attribute definitions for the RVGPrimary agent
Table 1-2 The required attributes for the RVGPrimary agent
DescriptionAttribute
The name of the RVG resource type that this agent promotes. Thename RVG resource type which has been configured using the RVGagent.
Type and dimension: string-scalar
RvgResourceName
A flag to indicate whether the agent should perform a takeover ononline if the original Primary is down.
AutoTakeover and AutoResync are mutually exclusive attributes.
When AutoTakeover=0, the primary-elect feature is not applicable;therefore, it is not supported.
Type and dimension: integer-scalar
AutoTakeover
Overview of the VCS agents for VVRHow the agents for failover applications work
16
Table 1-2 The required attributes for the RVGPrimary agent (continued)
DescriptionAttribute
Indicates whether the agent should attempt to automaticallyperform a fast-failback resynchronization of the original Primaryafter a takeover and after the original Primary returns.
You can use the following values for this attribute:
■ 0–instructs the agent to not attempt to perform a fast-failbackresynchronization of the original Primary after a takeover andafter the original Primary returns.
■ 1–instructs the agent to attempt to automatically perform afast-failback resynchronization of the original Primary after atakeover and after the original Primary returns.
■ 2–instructs the agent to use the primary-elect feature. The agentdoes not attempt to perform a fast-failback resynchronizationof the original Primary after a takeover and after the originalPrimary returns. The RVGPrimary agent also createsspace-optimized snapshots for all the data volumes in the RVGresource.
If you set the AutoResync attribute to 2 (to enable theprimary-elect feature) the value of the BunkerSyncTimeOutattribute must be zero to disable the automated bunker replayfeature. You cannot use the automated bunker replay featureand the primary-elect feature in the same environment.
AutoTakeover and AutoResync are mutually exclusive attributes.
When AutoTakeover=0, the primary-elect feature is not applicable;therefore, it is not supported.
Type and dimension: integer-scalar
AutoResync
17Overview of the VCS agents for VVRHow the agents for failover applications work
Table 1-2 The required attributes for the RVGPrimary agent (continued)
DescriptionAttribute
The value for the BunkerSyncTimeOut attribute determines if youwant the bunker to perform a replay or not. You set the value inseconds for the time that you want to allot for the replay.
Use one of the following values for the BunkerSyncTimeOutattribute:
■ If you do not use a value for this attribute (the default nullvalue), the RVGPrimary agent considers it an infinite timeoutvalue. The agent replays all the writes on the Bunker ReplicatorLog to the Secondary. Only after the agent sends all the writes,VCS performs the takeover on the Secondary.
■ If you set the value for this attribute to 0, you disable bunkerreplay for the agent. The RVGPrimary agent immediatelyperforms a takeover on the Secondary. The agent does not sendpending writes from the Bunker to the Secondary.
■ If you set the value to a number of seconds, then theRVGPrimary agent sends writes for that amount of time to theSecondary. After the agent meets the time limit, it performsthe takeover on the Secondary. The bunker replay time in thiscase is equal to the value in seconds. You can set this valuedynamically.
The RVGPrimary agent's OnlineTimeout and OnlineRetryLimitattribute values determine the available time for an RVGPrimaryresource to complete its online operation.
Use the following formula to get the Time Available for Online toComplete (TAOC):
TAOC = (OnlineTimeout + (OnlineRetryLimit * OnlineTimeout))
BunkerSyncTimeOut
Overview of the VCS agents for VVRHow the agents for failover applications work
18
Table 1-2 The required attributes for the RVGPrimary agent (continued)
DescriptionAttribute
When you set the BunkerSyncTimeOut value in seconds, the valueof TAOC for the RVGPrimary agent should be greater than thedesired BunkerSyncTimeOut value. Using a TAOC value that isgreater than BunkerSyncTimeOut value ensures that the bunkerreplay and the RVG takeover can complete in the allotted time forthat particular online operation. If the TAOC is smaller thanBunkerSyncTimeOut value and the bunker replay does not completewithin the allotted time for the online process, the resource faults.If the resource faults, clear the fault. Try the online operation againif the resource has not failed over to other cluster node in theconfiguration.
If you increase the value of the BunkerSyncTimeOut attribute, youneed to increase the value of the OnlineTimeout orOnlineRetryLimit attribute so that TAOC remain greater thanchanged value. This is to ensure to have bunker replay completedwithin allotted time for online.
If the value of the AutoResync attribute is 2, you must set the valueof the BunkerSyncTimeOut attribute to 0 (to disable automatedbunker replay).
Type and dimension: string-scalar
Default value: ""
BunkerSyncTimeOut(cont.)
Table 1-3 The internal attributes for the RVGPrimary agent
DescriptionAttribute
For internal use only, do not modify. This value in secondssignifies the amount of time that a Secondary RVG has waitedfor synchronization from the bunker host to complete.
Type and dimension: integer-scalar
BunkerSyncElapsedTime
Resource type definitions for the RVGPrimary agentThe RVGPrimary resource type definition follows.
type RVGPrimary (
static keylist SupportedActions = { fbsync }
static int NumThreads = 1
static int OnlineRetryLimit = 1
static str ArgList[] = { RvgResourceName, "RvgResourceName:RVG",
19Overview of the VCS agents for VVRHow the agents for failover applications work
"RvgResourceName:DiskGroup", AutoTakeover, AutoResync,
BunkerSyncTimeOut, BunkerSyncElapsedTime }
str RvgResourceName
int AutoTakeover = 1
int AutoResync = 0
str BunkerSyncTimeOut
int BunkerSyncElapsedTime = 0
)
The resource type definition represents the VCS One configuration of the agentand specifies how the agent is defined in the main.xml configuration file. For moreinformation, refer to the RVGPrimary type definition in types.linuxs390x.xml filein /etc/VRTSvcsone/conf/confxml directory on the Policy Master system.
Using the RVGPrimary agent for migration and takeoverThe RVGPrimary agent can now handle the migration and takeover when youhave multiple secondary sites that you have configured for VCS disaster recoveryand global failover (n-way GCO).
In the case of a takeover, after the first failover succeeds, the rlinks from remainingsecondaries to the new primary need to be attached. Attach these rlinks beforetrying subsequent failovers and to be ready for the next failovers to succeed. (Notethat this is not the case for migration.)
If a bunker site is associated with the new primary, the agent tries to attach thebunker's rlink after a successful migration.
Consider an example of a disaster recovery (DR) setup where two DR sites areconfigured as follows:
■ Primary RVG: PRI_RVG
PRI_RVG has the following rlinks:
■ rlk_SEC_RVG1
■ rlk_SEC_RVG2
■ Secondary RVG: SEC_RVG1
SEC_RVG1 has the following rlinks:
■ rlk_PRI_RVG
■ rlk_SEC_RVG2
■ Secondary RVG: SEC_RVG2
SEC_RVG2 has the following rlinks:
■ rlk_PRI_RVG
Overview of the VCS agents for VVRHow the agents for failover applications work
20
■ rlk_SEC_RVG1
When the Primary site is failed over to secondary site, SEC_RVG1 becomes newprimary.
Use the vradmin or vxrlink commands to attach the following rlinks:
■ rlk_SEC_RVG2 that is associated with SEC_RVG1.
■ rlk_PRI_RVG that is associated with SEC_RVG2.
Figure 1-3 RVGPrimary three-way global clustering support
Primary
Secondary 2
Secondary 1
The three sites areglobally clustered
Application servicegroup
Replication servicegroup
The application’sservice group
depends on thereplication’s service
group
21Overview of the VCS agents for VVRHow the agents for failover applications work
Figure 1-4 RVGPrimary three-way global clustering migration and takeover
Primary
Secondary 2
Secondary 1
Secondary 1(previouslyPrimary)
Secondary 2(now an orphan)
Primary(previouslySecondary 1)
Role change with a migration and takeover
Attached rlink
Detached rlink
RVGSnapshotCreates and destroys a transactionally consistent space-optimized snapshot ofall volumes in a VVR secondary replicated data set. The RVGSnapshot agent takesspace-optimized snapshots on a secondary RVG. These snapshots can be mountedand written to without affecting the actual replicated data, which means that thespace-optimized snapshot can be an effective tool for scheduling a “fire drill” toconfirm that a wide-area failover is possible. By combining this agent with theVCS Mount agent, the CFS CFSMount agent, and VCS agents that manage the
Overview of the VCS agents for VVRHow the agents for failover applications work
22
application being replicated, you can create a special fire drill service group. Youcan bring this service group online and take it offline at regularly scheduledintervals to verify that the disaster recovery environment is robust.
In addition to the agent itself, a text-based wizard /opt/VRTSvcs/bin/fdsetup thatprepares the VVR and VCS infrastructure for a fire drill and a script/opt/VRTSvcs/bin/fdsched that runs the fire drill and consolidates the resultsare included with this package.
Complete details are in the Veritas Cluster Server Administrator's Guide.
The RVGSnapshot agent includes the following key features:
■ Automates the process of creating a space-optimized snapshot on a VVRsecondary that can be mounted to simulate a wide-area failover withoutaffecting the production application.
■ Includes a wizard to effectively set up and schedule fire drills that arecompletely managed by VCS.
Resource dependencies for the RVGSnapshot agentThe RVGSnapshot agent depends on these resources.
Figure 1-5 Sample service group for an RVGSnapshot resource
NIC
RVGSnapshot
DiskGroup IP
Mount
RVGSnapshot agent functionsThe RVGSnapshot agent has the following agent functions:
Creates a transactionally consistent snapshot of all volumes in the RDS.Online
Destroys the snapshot.Offline
No operation; failure of the snapshot will be indicated by the failure of theMount resource of any file systems mounted on it.
Monitor
23Overview of the VCS agents for VVRHow the agents for failover applications work
Cleans up any failed snapshot creation or deletion.Clean
State definitions for the RVGSnapshot agentThe RVGSnapshot agent has the following state definitions:
Indicates that a snapshot was created.ONLINE
Indicates that a snapshot was destroyed.OFFLINE
The RVGSnapshot resource faults on timeout if a snapshot creation didnot succeed during an online.
FAULTED
Attribute definitions for the RVGSnapshot agent
Table 1-4 The required attributes for the RVGSnapshot agent
DescriptionAttribute
The name of the VCS RVG-type resource that manages the RVGthat will be snapshot by this agent.
Type and dimension: string-scalar
RvgResourceName
Name of the cache object that is required for a space-optimizedsnapshot; the fdsetup wizard will create one if it does not exist
Type and dimension: string-scalar
CacheObj
Token put before the name of the actual volume when creating thesnapshotted volumes.
Type and dimension: string-scalar
Prefix
Table 1-5 The optional attributes for the RVGSnapshot agent
DescriptionAttribute
A flag to indicate whether to destroy the snapshot upon taking theresources offline. For a fire drill, the snapshot should be deletedto reduce any performance impact of leaving the snapshot for along period of time; however, if there is interest in keeping thedata, then this value should be set to 0. The default is 1 (true).
Type and dimension: integer-scalar
Default: 1
DestroyOnOffline
Overview of the VCS agents for VVRHow the agents for failover applications work
24
Table 1-5 The optional attributes for the RVGSnapshot agent (continued)
DescriptionAttribute
The fire drill schedule updates this attribute with the system nameand the path to a file containing the output of the last completefire drill for the group containing an RVGSnapshot resource.
Type and dimension: string-scalar
FDFile
Resource type definitions for the RVGSnapshot agentThe resource type definition for the RVGSnapshot agent follows.
type RVGSnapshot (
static keylist RegList = { Prefix }
static int NumThreads = 1
static str ArgList[] = { RvgResourceName, CacheObj, Prefix,
DestroyOnOffline }
str RvgResourceName
str CacheObj
str Prefix
boolean DestroyOnOffline = 1
temp str FDFile
)
How the agents for parallel applications workThe agents for parallel applications include the following:
■ See “RVGShared agent” on page 25.
■ See “RVGLogowner agent” on page 28.
■ See “RVGSharedPri agent” on page 31.
■ See “RVGSnapshot” on page 22.
RVGShared agentMonitors the RVG in a shared environment. This is a parallel resource. TheRVGShared agent enables you to configure parallel applications to use an RVGin a cluster. The RVGShared agent monitors the RVG in a shared disk groupenvironment. The RVGShared agent must be configured as a parallel group inVCS. Typically, the RVGShared resource is online or offline at the same time onall the nodes in the VCS cluster. An example configuration file for this agent that
25Overview of the VCS agents for VVRHow the agents for parallel applications work
can be used as a guide when creating your configuration is located at/etc/VRTSvcs/conf/sample_vvr/RVGLogowner.
Resource dependencies for the RVGShared agentThe RVGShared resource represents the RVG of the RDS. The RVGShared resourceis dependent on the CVMVolDg resource.
The RVGShared resource must be configured in a parallel group.
Refer to the Veritas Cluster Server Administrator's Guide for more informationon dependencies.
Figure 1-6 Sample service group for an RVGShared resource
RVGShared
CVMVolDg
racdata_rvg
RVGShared Group (Parallel)
racdata_voldg
Note:Do not add any volumes that are part of the RVG in the CVMVolume attributeof the CVMVolDg resource. The volumes in the RVG are managed by theRVGShared resource.
RVGShared agent functionsThe RVGShared agent has the following agent functions:
Verifies whether the RVG is started. If the RVG is not started, recovers andstarts the RVG.
Online
No action.Offline
Displays the state as ONLINE if the RVG is started. Displays the state asOFFLINE if the RVG is not started.
Monitor
No action.Clean
Overview of the VCS agents for VVRHow the agents for parallel applications work
26
Gives the information about the replication status for the Replicated DataSet (RDS).
The info entry point displays information about the replication status ofan RDS. By default, the info interval is set to zero. To change the defaultinfo interval, use the following command:
# hatype -modify resourcetype_name InfoInterval interval
For example, to set the info interval to 60 seconds for the RVG resourcetype, enter:
# hatype -modify RVG InfoInterval 60
The info interval indicates how frequently VCS executes the info entrypoint to update the replication status. In the above example, the info intervalis set to 60, so VCS updates the replication status every 60 seconds. Todisplay the output of the info entry point, use the following command:
# hares -value resource_name ResourceInfo
The output of the info entry point is also logged in the file/var/VRTSvcs/log/engine_A.log.
Info
State definitions for the RVGShared agentThe RVGShared agent has the following state definitions:
Indicates that the RVG is in the ENABLED/ACTIVE state.ONLINE
Indicates that the RVG is not in the ENABLED/ACTIVE state or that theadministrator has invoked the offline entry point.
OFFLINE
Attribute definitions for the RVGShared agent
Table 1-6 The required attributes for the RVGShared agent
DescriptionAttribute
The name of the RVG being monitored.
Type and dimension: string-scalar
RVG
The shared-disk group with which this RVG is associated.
Type and dimension: string-scalar
DiskGroup
27Overview of the VCS agents for VVRHow the agents for parallel applications work
Resource type definitions for the RVGShared agentThe RVGShared resource type definition follows.
type RVGShared (
static int NumThreads = 1
static str ArgList[] = { RVG, DiskGroup }
str RVG
str DiskGroup
)
RVGLogowner agentAssigns and unassigns a node as the logowner in the CVM cluster; this is a failoverresource. The RVGLogowner agent assigns or unassigns a node as a logowner inthe cluster. To replicate data, VVR requires network connectivity between thePrimary and the Secondary. In a shared disk group environment, only one node,that is, the logowner, can replicate data to the Secondary.
For replication to be highly available, the logowner must be highly available. Tomake the logowner highly available, the RVGLogowner resource must be configuredas a resource in a failover group. Also, a virtual IP must be set up on the logownerto enable replication and failover of the logowner from one node to another in acluster. The virtual IP must be configured as an IP resource.
For more information about the logowner, see the Veritas Volume ReplicatorAdministrator's Guide. An example configuration file for this agent that can beused as a guide when creating your configuration is located at/etc/VRTSvcs/conf/sample_vvr/RVGLogowner.
Resource dependencies for the RVGLogowner agentThe RVGLogowner resource represents the logowner for RVG in the cluster. TheRVGLogowner resource is dependent on the IP resource that it uses for replication.
The RVGLogowner resource must be configured in a failover group. TheRVGLogowner group is used in conjunction with the RVGSharedPri and RVGSharedagents in separate groups, with the appropriate service group dependencies.
For more information on dependencies, refer to the Veritas Cluster ServerAdministrator's Guide
Overview of the VCS agents for VVRHow the agents for parallel applications work
28
Figure 1-7 Sample service group for an RVGLogowner resource
RVGLogowner
IP
NIC
rvg_logowner
logowner_ip
nic
Logowner Group (Failover)
RVGLogowner agent functionsThe RVGLogowner agent has the following agent functions:
Assigns the logowner on the node.Online
Unassigns the logowner on the node.Offline
Returns ONLINE if the node is the logowner and the RVG is inENABLED/ACTIVE state. Returns OFFLINE if the node is the logowner andthe state is not ENABLED/ACTIVE, or if the node is not the logowner(regardless of the state). The RVG for which the logowner is monitoredmust be configured as the RVGShared resource type.
Monitor
Unassigns the logowner on the node.Clean
State definitions for the RVGLogowner agentThe RVGLogowner agent has the following state definitions:
Indicates that the node is the logowner for the RVG in the cluster.ONLINE
Indicates that the node is not the logowner for the RVG in the cluster.OFFLINE
Attribute definitions for the RVGLogowner agent
Table 1-7 The required attributes for the RVGLogowner agent
DescriptionAttribute
The name of the RVG being monitored.
Type and dimension: string-scalar
RVG
29Overview of the VCS agents for VVRHow the agents for parallel applications work
Table 1-7 The required attributes for the RVGLogowner agent (continued)
DescriptionAttribute
The disk group with which this RVG is associated.
Type and dimension: string-scalar
DiskGroup
Table 1-8 The bunker attributes for the RVGLogowner agent
DescriptionAttribute
The name of the bunker disk group.
Type and dimension: string-scalar
StorageDG
The name of the bunker RVG.
Type and dimension: string-scalar
StorageRVG
A space-separated list of the hostids of each node in the bunkercluster.
Type and dimension: string-keylist
StorageHostIds
Resource type definitions for the RVGLogowner agentThe RVGLogowner resource type definition follows.
type RVGLogowner (
static int NumThreads = 1
static str ArgList[] = { RVG, DiskGroup }
static int OnlineRetryLimit = 5
str RVG
str DiskGroup
str StorageRVG
str StorageDG
str StorageHostIds
)
Notes for the RVGLogowner agentReview the following notes for more information on the RVGLogowner agent.
CVM master node needs to assume the logowner role for VCS managedVVR resources
If you use VCS to manage RVGLogowner resources in an SFCFS environment oran SF Oracle RAC environment, Symantec recommends that you perform the
Overview of the VCS agents for VVRHow the agents for parallel applications work
30
following procedures. These procedures ensure that the CVM master node alwaysassumes the logowner role. Not performing these procedures can result inunexpected issues that are due to a CVM slave node that assumes the logownerrole.
For a service group that contains an RVGLogowner resource, change the value ofits PreOnline trigger to 1 to enable it.
To enable the PreOnline trigger from the command line on a service group that hasan RVGLogowner resource
◆ On each node in the cluster, perform the following command:
# hagrp -modify RVGLogowner_resource_sg PreOnline 1 -sys system
Where RVGLogowner_resource_sg is the service group that contains theRVGLogowner resource. The system is the name of the node where you wantto enable the trigger.
On each node in the cluster, merge the preonline_vvr trigger into the defaulttriggers directory.
To merge the preonline_vvr trigger
◆ On each node in the cluster, merge the preonline_vvr trigger to the/opt/VRTSvcs/bin/triggers directory.
# cp /opt/VRTSvcs/bin/sample_triggers/preonline_vvr \
/opt/VRTSvcs/bin/triggers
Refer to the sample configurations directory for samples of how to enablethese triggers (/opt/VRTSvcs/bin/sample_triggers.)
RVGSharedPri agentAttempts to migrate or takeover a Secondary to a Primary when a parallel servicegroup fails over. The RVGSharedPri agent enables migration and takeover of aVVR replicated data set in parallel groups in a VCS environment. Bringing aresource of type RVGSharedPri online causes the RVG on the local host to becomea primary if it is not already. The agent is useful when hosts in both the primaryand secondary side are clustered using a VCS global cluster, to completely automatethe availability of writable replicated disks to an application managed by VCS.
You cannot use the primary-elect feature with this agent. For a detailed descriptionof the primary-elect feature, seeVeritasVolumeReplicatorAdministrator'sGuide.
The RVGSharedPri agent includes the following key features:
■ Removes manual steps of migrating a VVR primary and secondary roles whenfailing over applications across a wide area.
31Overview of the VCS agents for VVRHow the agents for parallel applications work
■ Minimizes the need for resynchronizing replicated volumes by attempting amigration before attempting a hard takeover.
■ Waits for the two sides of a replicated data set to become completelysynchronized before migrating roles.
■ Supports an automatic fast failback resynchronization of a downed primaryif it later returns after a takeover.
Sample configuration files are located in the /etc/VRTSvcs/conf/sample_rac/directory and include CVR in the filename. These sample files are installed as partof the VRTSdbac package, and can be used as a guide when creating yourconfiguration.
Resource dependencies for the RVGSharedPri agentThe RVGSharedPri agent is used in conjunction with the RVGShared andRVGLogowner agents in separate groups, with the appropriate service groupdependencies.
The RVGSharedPri agent must be configured in a parallel service group. Theapplication service group contains the resources managing the actual applicationand file systems as well as the RVGSharedPri agent.
Figure 1-8 Sample service group for an RVGSharedPri resource
Oracle
CFSMount
ora_db1
ora_vvr_shpri
RVGSharedPri
Application Group (Parallel)
RVGSharedPri agent functionsThe RVGSharedPri agent has the following agent functions:
Determines the current role of the RVG; if Secondary, attempt a migrate,waiting for any outstanding writes from the original Primary; if the originalPrimary is down attempt a takeover; if the RVG is a Primary, perform noactions and go online
Online
Performs no actions.Offline
Overview of the VCS agents for VVRHow the agents for parallel applications work
32
Performs no actions; monitoring of the actual RVG is done by theRVGShared agent.
Monitor
Performs no actions.Clean
State definitions for the RVGSharedPri agentThe RVGSharedPri agent has the following state definitions:
Monitoring of the actual RVG is done by the RVGShared agent; accidentalmigration of a VVR Primary outside of VCS would cause other resourcesto fault immediately, such as Mount, so no special monitoring by this agentis necessary.
FAULTED
Attribute definitions for the RVGSharedPri agent
Table 1-9 The required attributes for the RVGSharedPri agent
DescriptionAttribute
The name of the RVGShared resource type that this agent willpromote, that is, the name RVG resource type which has beenconfigured using the RVGShared agent. The required VVR objectnames, such as the name of the RVG, Disk Group, RLINKs, SRL arediscovered by this agent by querying VCS directly.
Type and dimension: string-scalar
RvgResourceName
A flag to indicate whether the agent should perform a takeover ononline if the original Primary is down.
AutoTakeover and AutoResync are mutually exclusive attributes.
Type and dimension: integer-scalar
Default: 1
AutoTakeover
A flag to indicate whether the agent should attempt to automaticallyperform a fast-failback resynchronization of the original Primaryafter a takeover and after the original Primary returns.
AutoTakeover and AutoResync are mutually exclusive attributes.
Type and dimension: integer-scalar
Default: 0
AutoResync
This attribute is reserved for internal use by VCS.
Type and dimension: string-scalar
VCSResLock
33Overview of the VCS agents for VVRHow the agents for parallel applications work
Resource type definitions for the RVGSharedPri agentThe RVGSharedPri resource type definition follows.
type RVGSharedPri (
static keylist SupportedActions = { fbsync, resync }
static int NumThreads = 1
static int OnlineRetryLimit = 1
static str ArgList[] = { RvgResourceName, "RvgResourceName:RVG",
"RvgResourceName:DiskGroup", AutoTakeover, AutoResync }
str RvgResourceName
int AutoTakeover = 1
int AutoResync = 0
temp str VCSResLock
)
How the agents for hybrid applications workThe agents for hybrid applications include the following:
■ See “RVG agent” on page 10.
■ See “RVGPrimary agent” on page 13.
A hybrid configuration is for Replicated Data Clusters (RDCs) and is a combinationof the failover and parallel service groups. A hybrid service group behaves like afailover group within a system zone and like a parallel group across system zones.It cannot fail over across system zones. A switch operation on a hybrid servicegroup is allowed only between systems within the same system zone.
For more information about the RVG agent and RVGPrimary agent, see See “RVGagent” on page 10. and See “RVGPrimary agent” on page 13.. These sections giveinformation about the entry points, state definitions, and attributes for the RVGagent and the RVGPrimary agent. In addition, the following attribute must be setfor the RVG agent and the RVGPrimary agent while configuring RDCs:
Table 1-10 Attribute for RDCs
DefinitionType and dimensionOptional attributes
Indicates failover zone.integer-associationSystemZones
An RDC uses VVR as opposed to shared storage to provide access to data at theSecondary. An RDC exists within a single VCS cluster. The application group,which is configured as a failover group, can be online only on the Primary host.
Overview of the VCS agents for VVRHow the agents for hybrid applications work
34
In the case of the failure of the Primary site, the Secondary is promoted to aPrimary and the application is brought online on the new Primary host.
An RDC configuration is appropriate in configurations lacking shared storage orSAN interconnection between the Primary site and Secondary site, but where dualdedicated LLT links are available between the Primary site and the Secondarysite.
Overview of how to configure VVR in a VCSenvironment
This section gives an overview of how to configure VVR in a VCS environmentfor high availability of the application that is involved in replication.
To configure VVR in a VCS environment, you must perform the following tasksin the following order:
■ Set up a VVR configuration, which involves creating a Replicated Data Set(RDS).
■ Create service groups for the VVR agents and add the resource and groupdependencies appropriately.
■ Add these application service groups to the composite service group for globalfailover.
Overview of how to configure the primary-electfeature in a VCS globally clustered environment
Before Release 5.1 SP1, if a disaster struck at the Primary site or a networkdisruption, the applications were taken offline on the original Primary and failedover to the Secondary.
When the original Primary returned or the network disruption was corrected, youhad the following options:
■ Manually resynchronize the original Primary
■ Automatically resynchronize the original Primary
Beginning in Release 5.1 SP1, you have a third option. After the original Primaryreturns or the network disruption is corrected, you can specify which site is thePrimary going forward. This feature is called the primary-elect feature, and it isenabled through the VCS Global Cluster Option. The key difference between theprimary-elect feature and the other options is that if a network disruption occurs,applications continue to run on the Primary site and they are also failed over to
35Overview of the VCS agents for VVROverview of how to configure VVR in a VCS environment
the Secondary. This allows you to maintain application availability on both siteswhile the network is down.
For a detailed description of the primary-elect feature, see Veritas VolumeReplicator Administrator's Guide.
Generic VVR setup in a VCS environmentThe following illustration shows how VVR replicates in a VCS environment givena two-cluster environment.
WAN
Cluster B
VCS private network
NodeCNodeBNodeA
Network used for replication
Shared disks
Cluster A
Network used for replication
NodeCNodeBNodeA
VCS private network
Shared disks
Overview of the VCS agents for VVRGeneric VVR setup in a VCS environment
36
Example VVR configuration in a VCS environmentIn the following example, two clusters reside at separate sites. VVR uses a WANto replicate data between the sites.
The first cluster (Seattle) is in Seattle. The Seattle cluster consists of two nodes:seattle1 and seattle2. The second cluster is in London and is named London.TheLondon cluster also consists of two nodes: london1 and london2. The nodes locatedin the cluster Seattle contain the Primary RVG. The nodes located in the clusterLondon contain the Secondary RVG. Note that the following illustration showsthe names of the VVR components used by the RVG agent.
Figure 1-9 Example—VVR configuration in a VCS environment
WAN
rlk_seattle_hr_rvg
London
DCM
hr_dv01
hrdg
Secondary RVG (hr_rvg)
hr_dv02
hr_srl
rlk_london_hr_rvg
Seattle
DCM
hr_dv01
hrdg
Primary RVG (hr_rvg)
hr_dv02
hr_srl
37Overview of the VCS agents for VVRExample VVR configuration in a VCS environment
Overview of the VCS agents for VVRExample VVR configuration in a VCS environment
38
Configuring the agents forhigh availability
This chapter includes the following topics:
■ Requirements for configuring VVR in a VCS environment
■ Example configuration for a failover application
■ Example configuration for a parallel application
■ Example—setting up VVR in a VCS environment
■ Configuring the agents for a bunker replication configuration
■ Configuring and using the primary-elect feature
■ Administering the service groups
Requirements for configuring VVR in a VCSenvironment
The requirements for configuring VVR in a VCS environment are as follows:
■ Follow the best practices for setting up replication with VVR.For information about setting up replication, refer to the Veritas VolumeReplicator Administrator's Guide.
■ Each node that is part of a particular service group involved in replicationmust use the same port number for replication. You may need to change thisnumber on some nodes before configuring VVR.
■ If a node has more than one network interface card on the same physicalnetwork being used for replication, each network interface card must have a
2Chapter
different MAC address. This is true for all the nodes at the Primary andSecondary sites.
■ This requirement is specific to the RVG Agent. VCS requires the noautoimportattribute of the disk group to be set.Refer to the Veritas Cluster Server Bundled Agents Reference Guide for moreinformation about setting the noautoimport attribute.
Best practices for setting up the agentsThe following list gives the best practices for setting up the agents:
■ Only one DiskGroup and one RVG resource must be present in a service group.
■ If a disk group is configured as a DiskGroup resource, then all the RVGs in thisdisk group must be configured as RVG resources.If a disk group is configured as a CVMVolDG resource, then all the RVGs mustbe configured as RVGShared resources.
■ When configuring failover applications, use the RVG and RVGPrimary agents.
■ When configuring parallel applications, use the RVGShared, RVGSharedPri,and RVGLogowner agents. If the configuration has multiple RVGLogownerresources, we recommend that you alternate the order of hosts in theAutoStartList attributes for the service groups containing the RVGLogownerresources. VCS then brings online the RVGLogowner resources on differentnodes in the cluster, which facilitates load-balancing. For example, the firstservice group containing an RVGLogowner resource would appear as:
AutoStartList = { seattle1, seattle2 }
whereas the next service group would have:
AutoStartList = { seattle2, seattle1 } and so on.
■ Do not configure the RVGShared resource in the cvm group. Configure theRVGShared resource in a separate group which contains the RVGSharedresource and the CVMVolDg resource.
■ In a global clustering environment, you must also use the ClusterList attribute.ClusterList = { gco_primclus=1, gco_secclus=2 }
■ If a volume set is fully associated to an RVG, that is, if all its componentvolumes are associated to the RVG, you can add the volume set to the agentconfiguration in the same way that a volume is added. Specify the volume setin the Mount resource instead of the component volume names.See “Example—setting up VVR in a VCS environment” on page 44.
Configuring the agents for high availabilityRequirements for configuring VVR in a VCS environment
40
Note: The agents do not support mounting a volume set that is partiallyassociated to an RVG, that is, if one or more of its component volumes are notassociated to the RVG.
For more information about using volume sets in an RVG, refer to the VeritasVolume Replicator Administrator's Guide.
Example configuration for a failover applicationIn the following example, a failover application that uses an RVG is made highlyavailable across two clusters. The application service group contains the followingresources: application, Mount, NIC, IP, and RVGPrimary. The replication groupcontains the RVG, IP, NIC, and DiskGroup resources. The application group hasan online local hard dependency on the replication group.
Figure 2-1 RVG and RVGPrimary agents—service groups and resourcedependencies
online local hard dependency
Application service group that is online on the Primary
Oracle
RVGPrimary
MountMount Mount
NIC
IP
RVG
DiskGroup IP
NIC
Replication service group that is online at both Primary and Secondary
41Configuring the agents for high availabilityExample configuration for a failover application
Example configuration for a parallel applicationIn the following example, a parallel application that uses an RVG is made highlyavailable across two clusters. The Oracle service group is the application groupand contains the CFSMount resource. The Logowner service group is a failovergroup, which manages the logowner. The service group RVGShared manages theRVG used by the application. The Oracle and CVM groups are configured as parallelgroups.
The service groups Logowner and Oracle are dependent on the service groupRVGShared. The RVGShared manages the RVG in a shared environment; therefore,it is dependent on the cvm service group.
Configuring the agents for high availabilityExample configuration for a parallel application
42
Figure 2-2 RVGShared, RVGLogowner, and RVGSharedPri agents—ServiceGroups and Resource Dependencies
RVGShared
CVMVolDg
Oracle service group (parallel) Logowner service group (failover)
Oracle
RVGSharedPri
CFSMount
ora_db1
ora_vvr_shpri
RVGLogowner
NIC
IP
rvg_logowner
nic
logowner_ip
RVGShared group(parallel)
Online localfirm
dependencies
Online local firm dependencyCVM service group (parallel)
racdata_rvg
racdata_voldg
ora_mnt
ora_privocrvote_mnt
cssd
Application
CFSMount PrivNIC
ocrvot_voldgvxfsckd
CFSfsckd CVMVolDg
cvm_vxconfigd
cvm_clus
CMVconfigd
CVMcluster
The following diagram shows the service group dependencies for a sample FireDrillservice group.
43Configuring the agents for high availabilityExample configuration for a parallel application
Figure 2-3 Example configuration of FireDrill for parallel application
RVGSharedPri
Oracle
CFSMount
RVGSnapshot
Oracle
CFSMount
RVGShared
CVMVolDG
CVMVxConfigd
CFSfsckd
CVMCluster
CFSMount
CVMVolDG
Application
PrivNIC
NIC
RVGLogowner
IP
oradb_fd oradb
oradb_mnt
logowner
logowner_ip
nic
racdata_rvg
racdata_voldg
ocrvote_mnt
ocrvote_voldg
vxfsckd
cvm_clus
cvm_vxconfigd
cssd
ora_priv
oradb_grp_fd (parallel) oradb_grp (parallel) rlogowner (failover)
rvggroup (parallel)
racdata_rvg-sos
oradb_grp-snap-oradata_mnt
ora_vvr_sharedpri
cvm (parallel)
offlinelocal
online localfirm
online localfirm
online localfirm
Example—setting up VVR in a VCS environmentConfiguring VVR with VCS requires the completion of several tasks, each of whichmust be performed in the following order:
Configuring the agents for high availabilityExample—setting up VVR in a VCS environment
44
■ See “Setting up the VVR configuration” on page 45.
■ See “Verifying the VVR replication state” on page 48.
■ See “Configuring the agents for failover applications” on page 48.
■ See “Configuring the agents for parallel applications” on page 56.
Before setting up the VVR configuration, verify whether all the nodes in the clusterthat have VVR installed use the same port number for replication. To verify andchange the port numbers, use the vrport command. If the port number is the sameon all nodes, add the VVR agents to the VCS configuration.
For instructions on using the vrport command, see theVeritasVolumeReplicatorAdministrator's Guide.
Setting up the VVR configurationThis section shows how to set up a sample VVR configuration. The VVRconfiguration in this example applies to the RVG Agent.
It uses the names that are used in the sample configuration file of the RVG agent.The procedure to configure VVR is the same for all the VVR agents. Use the sampleconfiguration files located in /etc/VRTSvcs/conf/sample_vvr directory to configurethe other agents.
For more information on configuring VVR, refer to theVeritasVolumeReplicatorAdministrator's Guide
The example uses the names listed in the following table.
Name of Cluster: Seattle
hrdgDisk group
hr_rvgPrimary RVG
rlk_london_hr_rvgPrimary RLINK to london1
hr_dv01Primary data volume #1
hr_dv02Primary data volume #2
hr_vset01Primary volume set
(with data volumes hr_dv03, hr_dv04)
hr_srlPrimary SRL for hr_rvg
10.216.144.160Cluster IP address
45Configuring the agents for high availabilityExample—setting up VVR in a VCS environment
Name of Cluster: London
hrdgDisk group
hr_rvgSecondary RVG
rlk_seattle_hr_rvgSecondary RLINK to seattle
hr_dv01Secondary data volume #1
hr_dv02Secondary data volume #2
hr_vset01Secondary volume set
(with data volumes hr_dv03, hr_dv04)
hr_srlSecondary SRL for hr_rvg
10.216.144.162Cluster IP address
In this example, each of the hosts (seattle1 and london1) has a disk group namedhrdg with enough free space to create the VVR objects.
Set up the VVR configuration on seattle1 and london1 to include the objects usedin the sample configuration files, main.cf.seattle and main.cf.london, located inthe /etc/VRTSvcs/conf/sample_vvr/RVG directory.
See “Example VVR configuration in a VCS environment” on page 37.
To set up the VVR configuration
1 On london1:
■ Create the Secondary data volumes.
# vxassist -g hrdg make hr_dv01 100M \
layout=mirror logtype=dcm mirror=2
# vxassist -g hrdg make hr_dv02 100M \
layout=mirror logtype=dcm mirror=2
■ Create the data volumes for the volume set on the Secondary and createthe volume set.
# vxassist -g hrdg make hr_dv03 100M \
layout=mirror logtype=dcm mirror=2
# vxassist -g hrdg make hr_dv04 100M \
layout=mirror logtype=dcm mirror=2
# vxmake -g hrdg vset hr_vset01 \
appvols=hr_dv03,hr_dv04
Configuring the agents for high availabilityExample—setting up VVR in a VCS environment
46
■ Create the Secondary SRL.
# vxassist -g hrdg make hr_srl 200M mirror=2
2 On seattle1:
■ Create the Primary data volumes.
# vxassist -g hrdg make hr_dv01 100M \
layout=mirror logtype=dcm mirror=2
# vxassist -g hrdg make hr_dv02 100M \
layout=mirror logtype=dcm mirror=2
■ Create the data volumes for the volume set on the Primary and create thevolume set.
# vxassist -g hrdg make hr_dv03 100M \
layout=mirror logtype=dcm mirror=2
# vxassist -g hrdg make hr_dv04 100M \
layout=mirror logtype=dcm mirror=2
# vxmake -g hrdg vset hr_vset01 \
appvols=hr_dv03,hr_dv04
■ Create the Primary SRL.
# vxassist -g hrdg make hr_srl 200M mirror=2
■ Create the Primary RVG.
# vradmin -g hrdg createpri hr_rvg \
hr_dv01,hr_dv02,hr_vset01 hr_srl
■ Uncomment the plus symbol from /etc/vx/vras/.rdg file from the nodesin the secondary site.
■ Determine the virtual IP address to be used for replication, and then verifythat the device interface for this IP is plumbed. If the device interface forthis IP is not plumbed, then plumb the device. Get the IP up using theOS-specific command. This IP address that is to be used for replicationmust be configured as the IP resource for this RVG service group.
■ Create the Secondary RVG.
# vradmin -g hrdg addsec hr_rvg 10.216.144.160 \
10.216.144.162 prlink=rlk_london_hr_rvg \
srlink=rlk_seattle_hr_rvg
47Configuring the agents for high availabilityExample—setting up VVR in a VCS environment
Note: The RLINKs must point to the virtual IP address for failovers tosucceed. The virtual IP address 10.216.144.160 must be able to ping virtualIP address 10.216.144.162 and vice versa. IPv6 addresses are supported.
■ Start replication.
# vradmin -g hrdg -f startrep hr_rvg
3 Create the following directories on seattle1 and seattle2. These directorieswill be used as mount points for volumes hr_dv01 and hr_dv02 and the volumeset hr_vset01 on the seattle site.
# mkdir /hr_mount01
# mkdir /hr_mount02
# mkdir /hr_mount03
4 On seattle1, create file systems on the volumes hr_dv01 and hr_dv02 and onthe volume set hr_vset01.
Verifying the VVR replication stateTest the replication state between seattle1 and london1 to verify that VVR isconfigured correctly.
To verify the replication state
1 Type the following command on each node:
# vxprint -g hrdg hr_rvg
2 In the output, verify the following:
■ State of the RVG is ENABLED/ACTIVE.
■ State of the RLINK is CONNECT/ACTIVE.
Configuring the agents for failover applicationsThis section explains how to configure the VVR agents for failover applications.
See “Configuring the agents for parallel applications” on page 56.
Configure the RVG agent and RVGPrimary agent either when VCS is stopped orrunning.
Sample configuration files, main.cf.seattle and main.cf.london, are located in the/etc/VRTSvcs/conf/sample_vvr/RVG and
Configuring the agents for high availabilityExample—setting up VVR in a VCS environment
48
/etc/VRTSvcs/conf/sample_vvr/RVGPrimary directories respectively, and can beused for reference.
Use one of the following procedures to add the RVG resource to the VCSconfiguration:
■ See “Configuring the agents when VCS is running” on page 49.
■ See “Configuring the agents when VCS is stopped” on page 55.
Configuring the agents when VCS is runningThe example in this section explains how to configure the RVG and RVGPrimaryagents when VCS is running.
See “ Example configuration for a failover application” on page 41.
Note: Use this example as a reference when creating or changing your resourcesand attributes.
To add the agent resources to your existing VCS configuration when VCS isrunning, perform the following procedures:
■ Create the replication service group
■ Create the application service group
■ Create a dependency between the application service group and the replicationservice group
■ Add an application service group and a replication service group to a compositeservice group for global failover
Perform the following steps on the client system seattle1 in the Primary clusterSeattle, and then repeat the steps (with minor changes as noted) on the clientsystem london1 in Secondary cluster London:
To create the replication service group
1 Log in as root.
2 Set the VCS configuration mode to read/write by issuing the followingcommand:
# haconf -makerw
49Configuring the agents for high availabilityExample—setting up VVR in a VCS environment
3 Add the replication service group, VVRGrp, to the cluster. This group willcontain all the storage and replication resources. Modify the attributesSystemList and AutoStartList of the service group to populate SystemListand AutoStartList:
# hagrp -add VVRGrp
# hagrp -modify VVRGrp SystemList seattle1 0 seattle2 1
# hagrp -modify VVRGrp AutoStartList seattle1 seattle2
On the Secondary cluster, replace seattle1 and seattle2 with london1 andlondon2
4 Add the DiskGroup resource Hr_Dg to the service group VVRGrp and modifythe attributes of the resource:
# hares -add Hr_Dg DiskGroup VVRGrp
# hares -modify Hr_Dg DiskGroup hrdg
5 Add a NIC resource vvrnic to the service group VVRGrp and modify theattributes of the resource:
# hares -add vvrnic NIC VVRGrp
# hares -modify vvrnic Device eth3
6 Add the IP resource vvrip to the service group VVRGrp and modify theattributes of the resource:
# hares -add vvrip IP VVRGrp
# hares -modify vvrip Device eth3
# hares -modify vvrip Address 192.168.40.20
# hares -modify vvrip NetMask "255.255.248.0"
On the Secondary cluster, use the appropriate IP for the Address. For example:
# hares -modify vvrip Address 192.168.40.21
7 Add the RVG resource Hr_Rvg in the VVRGrp and modify the attributes ofthe resource.
# hares -add Hr_Rvg RVG VVRGrp
# hares -modify Hr_Rvg RVG hr_rvg
# hares -modify Hr_Rvg DiskGroup hrdg
Configuring the agents for high availabilityExample—setting up VVR in a VCS environment
50
8 Specify resource dependencies for the resources you added in the previoussteps:
# hares -link Hr_Rvg vvrip
# hares -link Hr_Rvg Hr_Dg
# hares -link vvrip vvrnic
9 Enable all resources in VVRGrp
# hagrp -enableresources VVRGrp
10 Save and close the VCS configuration
# haconf -dump -makero
Perform the following steps on the system seattle1 in the Primary cluster Seattle,and then repeat the steps (with minor changes as noted) on the system london1in Secondary cluster London:
To create the application service group
1 Log in as root.
2 Set the VCS configuration mode to read/write by issuing the followingcommand:
# haconf -makerw
3 Add a service group, ORAGrp, to the cluster Seattle. This group will containall the application specific resources. Populate the attributes SystemList,AutoStartList and ClusterList of the service group.
# hagrp -add ORAGrp
# hagrp -modify ORAGrp SystemList seattle1 0 seattle2 1
# hagrp -modify ORAGrp AutoStartList seattle1 seattle2
# hagrp -modify ORAGrp ClusterList Seattle 0 London 1
On the Secondary , replace seattle1 and seattle2 with london1 and london2,as follows:
# hagrp -add ORAGrp
# hagrp -modify ORAGrp SystemList london1 0 london2 1
# hagrp -modify ORAGrp AutoStartList london1 london2
# hagrp -modify ORAGrp ClusterList Seattle 0 London 1
51Configuring the agents for high availabilityExample—setting up VVR in a VCS environment
4 Add a NIC resource oranic to the service group ORAGrp and modify theattributes of the resource:
# hares -add oranic NIC ORAGrp
# hares -modify oranic Device eth0
5 Add an IP resource oraip to the service group ORAGrp and modify theattributes of the resource:
# hares -add oraip IP ORAGrp
# hares -modify oraip Device eth0
# hares -modify oraip Address 192.168.40.1
# hares -modify oraip NetMask "255.255.248.0"
On the Secondary, modify the Address attribute for the IP resourceappropriately.
6 Add the Mount resource Hr_Mount01 to mount the volume hr_dv01 in theRVG resource Hr_Rvg:
# hares -add Hr_Mount01 Mount ORAGrp
# hares -modify Hr_Mount01 MountPoint /hr_mount01
# hares -modify Hr_Mount01 BlockDevice /dev/vx/dsk/Hr_Dg/hr_dv01
# hares -modify Hr_Mount01 FSType vxfs
# hares -modify Hr_Mount01 FsckOpt %-n
# hares -modify Hr_Mount01 MountOpt rw
7 Add the Mount resource Hr_Mount02 to mount the volume hr_dv02 in theRVG resource Hr_Rvg:
# hares -add Hr_Mount02 Mount ORAGrp
# hares -modify Hr_Mount02 MountPoint /hr_mount02
# hares -modify Hr_Mount02 BlockDevice /dev/vx/dsk/Hr_Dg/hr_dv02
# hares -modify Hr_Mount02 FSType vxfs
# hares -modify Hr_Mount02 FsckOpt %-n
# hares -modify Hr_Mount02 MountOpt rw
Configuring the agents for high availabilityExample—setting up VVR in a VCS environment
52
8 Add the Mount resource Hr_Mount03 to mount the volume set hr_vset01 inthe RVG resource Hr_Rvg:
# hares -add Hr_Mount03 Mount ORAGrp
# hares -modify Hr_Mount03 MountPoint /hr_mount03
# hares -modify Hr_Mount03 BlockDevice /dev/vx/dsk/ Hr_Dg/hr_vset01
# hares -modify Hr_Mount03 FSType vxfs
# hares -modify Hr_Mount03 FsckOpt %-n
# hares -modify Hr_Mount03 MountOpt rw
9 Add the Oracle resource Hr_Oracle
# hares -add Hr_Oracle Oracle ORAGrp
# hares -modify Hr_Oracle Sid hr1
# hares -modify Hr_Oracle Owner oracle
# hares -modify Hr_Oracle Home "/hr_mount01/OraHome1"
# hares -modify Hr_Oracle Pfile "inithr1.ora"
# hares -modify Hr_Oracle User dbtest
# hares -modify Hr_Oracle Pword dbtest
# hares -modify Hr_Oracle Table oratest
# hares -modify Hr_Oracle MonScript "./bin/Oracle/SqlTest.pl"
# hares -modify Hr_Oracle StartUpOpt STARTUP
# hares -modify Hr_Oracle ShutDownOpt IMMEDIATE
# hares -modify Hr_Oracle AutoEndBkup 1
10 Add the Oracle listener resource LISTENER
# hares -add LISTENER Netlsnr ORAGrp
# hares -modify LISTENER Owner oracle
# hares -modify LISTENER Home "/hr_mount01/OraHome1"
# hares -modify LISTENER Listener LISTENER
# hares -modify LISTENER EnvFile "/oracle/.profile"
# hares -modify LISTENER MonScript "./bin/Netlsnr/LsnrTest.pl"
11 Add the RVGPrimary resource Hr_RvgPri
# hares -add Hr_RvgPri RVGPrimary ORAGrp
# hares -modify Hr_RvgPri RvgResourceName Hr_Rvg
53Configuring the agents for high availabilityExample—setting up VVR in a VCS environment
12 Specify resource dependencies for the resources you added in the previoussteps:
# hares -link LISTENER Hr_Oracle
# hares -link LISTENER oraip
# hares -link Hr_Oracle Hr_Mount01
# hares -link Hr_Oracle Hr_Mount02
# hares -link Hr_Mount01 rvg-pri
# hares -link Hr_Mount02 rvg-pri
# hares -link Hr_Mount03 rvg-pri
# hares -link oraip oranic
13 The application service group and the replication service group must bothexist before doing this step. If you have not yet created the replication servicegroup, do so now.
See “Configuring the agents when VCS is running” on page 49.
After you have created the application service group and the replicationservice group, specify an online local hard group dependency between ORAGrpand VVRGrp.
# hagrp -link ORAGrp VVRGrp online local hard
14 Enable all resources in ORAGrp
# hagrp -enableresources ORAGrp
15 Save and close the VCS configuration
# haconf -dump -makero
16 Bring the service groups online, if not already online.
# hagrp -online VVRGrp -sys seattle1
# hagrp -online ORAGrp -sys seattle1
17 Verify that the service group ORAGrp is ONLINE on the system seattle1 byissuing the following command:
# hagrp -state ORAGrp
Refer to the /var/VRTSvcs/engine.log file to identify configuration errors and totake actions accordingly.
Configuring the agents for high availabilityExample—setting up VVR in a VCS environment
54
Configuring the agents when VCS is stoppedPerform the following steps to configure the RVG agent using the sampleconfiguration file on the first node in the Primary cluster and Secondary cluster.In the example in this guide, seattle1 is the first Primary node and london1 is thefirst Secondary node.
To configure the agents when VCS is stopped
1 Log in as root.
2 Ensure that all changes to the existing configuration have been saved andthat further changes are prevented while you modify main.cf:
If the VCS cluster is currently writeable, run the following command:
# haconf -dump -makero
If the VCS cluster is already read only, run the following command:
# haconf -dump
3 Do not edit the configuration files while VCS is started. The followingcommand will stop the had daemon on all systems and leave resourcesavailable:
# hastop -all -force
4 Make a backup copy of the main.cf file:
# cd /etc/VRTSvcs/conf/config
# cp main.cf main.cf.orig
5 Edit the main.cf files for the Primary and Secondary clusters. The filesmain.cf.seattle and main.cf.london located in the/etc/VRTSvcs/conf/sample_vvr/RVGPrimary directory can be used forreference for the primary cluster and the secondary cluster respectively.
6 Save and close the file.
7 Verify the syntax of the file /etc/VRTSvcs/conf/config/main.cf:
# hacf -verify /etc/VRTSvcs/conf/config
8 Start VCS on all systems in both clusters.
9 Administer the service groups.
See “Administering the service groups” on page 70.
55Configuring the agents for high availabilityExample—setting up VVR in a VCS environment
Configuring the agents for parallel applicationsUse the RVGShared, RVGSharedPri, and the RVGLogowner agents to manage andmonitor RVGs used by parallel applications in a shared environment.
Note:Determine the node that is performing the most writes by running the vxstatcommand on each node for a suitable period of time; after you set up replication,specify this node as the logowner.
The prerequisites for configuring the agents are as follows:
■ You must have replication set up between the Primary and Secondary sites.For more information about replicating in a shared environment, see theVeritas Volume Replicator Administrator's Guide.
■ The sites must be configured in a global cluster and the application servicemust be configured as a global service group.For more information about configuring global clusters, see theVeritasClusterServer Administrator's Guide.
Sample configuration files are located in the /etc/VRTSvcs/conf/sample_rac/directory and include CVR in the filename. These sample files are installed as partof the VRTSdbac package, and can be used as a guide when creating yourconfiguration. You can configure agents from the command line or from the VCSJava and Web consoles.
See the Veritas Cluster Server Administrator's Guide for more information.
To modify the VCS configuration on the Primary cluster
1 Define two new service groups: A logowner group that includes theRVGLogowner resource, and an RVG group that includes the RVGSharedresource replication objects.
2 In the logowner group, define IP and NIC resources, used by the RLINKs forthe RVG, and the RVGLogowner resource, for which the RVG and its associateddisk group are defined as attributes.
3 In the RVG service group, set up the RVGShared agent to monitor the RVGresource. Because it is shared, the RVG must be configured to depend on theCVMVolDg resource, which defines the shared disk group and its activationmode.
Define the RVGShared and CVMVolDg resources within a parallel servicegroup so that the service group may be online at the same time on all clusternodes.
Configuring the agents for high availabilityExample—setting up VVR in a VCS environment
56
4 Add the RVGSharedPri resource to the existing application service group anddefine the service group to be a global group.
See theVeritas Cluster Server Administrator's Guide for instructions on howto create global groups.
5 Move the CVMVolDg resource from the existing application service group tothe newly created RVGShared service group.
6 Set the following service group dependencies:
■ The RVG logowner service group has an “online local firm” dependencyon the service group containing the RVG.
■ The RVG service group has an “online local firm” dependency on the CVMservice group.
■ The application service group has an “online local firm” dependency onthe RVG service group.
To modify the VCS configuration on the Secondary cluster
1 Log on to a node in the secondary cluster as root.
2 Ensure that all changes to the existing configuration have been saved andthat further changes are prevented while you modify main.cf:
If the VCS cluster is currently writeable, run the following command:
# haconf -dump -makero
If the VCS cluster is already read only, run the following command:
# haconf -dump
3 Ensure VCS is not running while you edit main.cf by using the hastopcommand to stop the VCS engine on all systems and leave the resourcesavailable:
# hastop -all -force
4 Make a backup copy of the main.cf file:
# cd /etc/VRTSvcs/conf/config
# cp main.cf main.orig
5 Use vi or another text editor to edit the main.cf file, making the followingchanges:
■ Edit the CVM group on the secondary cluster. Use the CVM group on theprimary as your guide.
57Configuring the agents for high availabilityExample—setting up VVR in a VCS environment
■ Add the logowner group and the RVG service groups.
■ Add an application service group. Use the application service group onthe primary cluster as a pattern for the service group on the secondarycluster.
■ Since the service group is a global group, assign it the same name as thegroup on the primary cluster.
■ Define the ClusterList and ClusterFailOverPolicy cluster attributes.
■ Include the RVGSharedPri resource.
6 Save and close the main.cf file.
7 Verify the syntax of the file /etc/VRTSvcs/conf/config/main.cf:
# hacf -verify /etc/VRTSvcs/conf/config
8 Start VCS on all systems in both clusters.
The application group should be online on both systems of the primary cluster.
The application service group should not be online on the secondary cluster,but the CVM, RVG logowner, and RVG groups should be online.
Configuring the agents for a bunker replicationconfiguration
This section describes how to set up the VCS agents for a bunker replicationconfiguration, that is, an RDS that includes a bunker site. A bunker can be set upusing the STORAGE protocol, or using IP.
Refer to one of the following sections to configure the VCS agents:
■ See “VCS configuration for a bunker using the STORAGE protocol” on page 58.
■ See “VCS configuration for a bunker using IP” on page 61.
VCS configuration for a bunker using the STORAGE protocolWhen a bunker is set up using the STORAGE protocol, the disk group containingthe bunker RVG is imported on the Primary node. If the Primary RVG is in a VCScluster, the bunker RVG must remain online on the same node on which thePrimary RVG is online.
In a shared disk group environment, the bunker RVG must be online on thelogowner node.
Configuring the agents for high availabilityConfiguring the agents for a bunker replication configuration
58
This section describes how to configure the agents to automate the failover of thebunker RVG.
In a private disk group environment, the RV