cancel
Showing results for 
Search instead for 
Did you mean: 

Info about Oracle Data Guard Agent for VCS

Faisal_Saleem
Level 4
Partner Accredited

Dear All

I am working on gaining knowledge about Oracle Data Guard Agent for Veritas Cluster Server for Windows Server.

Any help from the community will be helpful for VCS version 6x

Thanks

2 ACCEPTED SOLUTIONS

Accepted Solutions

Marianne
Moderator
Moderator
Partner    VIP    Accredited Certified

There does not seem to be an agent for Windows.

See https://sort.symantec.com/agents

View solution in original post

mikebounds
Level 6
Partner Accredited

You can write your own agent either from scratch using information from the VCS Agent Developers Guide - 

http://sort-cdn.symantec.com/public/documents/sfha/6.0.2/windows/productguides/pdf/VCS_AgentDev_6.0....

or use the Process agent.  It is not that difficult.  Using the Process agent you would need to use the following attributes of the Process Agent:

  1. StartProgram: Write a program that promotes ODG to primary and demotes the other node if it is there.  The program touches a lock file
  2. MonitorProgram: Just checks lock file exists
  3. StopProgram: Removes lock file

So the 2nd two are easy, so the StartProgram is the one that is difficult.  You can see what the UNIX agent does from the documentation (https://sort.symantec.com/agents/detail/4625) and actually you could download UNIX agent and reuse the code from the online.  If the code is written in perl it MAY work unchanged, but dealing with files MAY need altering as Windows paths can have spaces.  Even if program is written in shell, at least you can reuse or the databas commands - these are listed in the guide:

 

About the Oracle Data Guard agent’s online function
 
The agent determines the role of the database and the type of open mode using
the SQL commands:
DATABASE_ROLE from V$DATABASE
OPEN_MODE from V$DATABASE
 
If the role of the replicated database is PRIMARY and the open mode is MOUNT,
the agent makes the database accessible for clients as follows:
■ Alters the database to open mode READ WRITE.
■ Creates a lock file on the local host to indicate that the resource is online.
 
If the role of the database is PHYSICAL STANDBY, the agent assumes a site fault
and reconfigures the database as follows:
■ The agent first tries to demote a primary database instance by executing the
   action DGDemotePri inside the remote cluster.
■ Then, the agent changes the mode of the local database from PHYSICAL
   STANDBY to PRIMARY.
 
  The agent stops the reception of redo log information using the SQL command:
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL
 
The agent changes the role of the database using the SQL command:
ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY
 
■ The agent then restarts the local database instance to make the changes
effective and creates a lock file in the local agent home directory.
 
Note here, this also uses an action script "DGDemotePri" in order to run the commands to demote the database on a different node.
 
If you are going to reuse code, then it may be easier to write a "proper" agent with the info from the Developers guide.
 
Mike

View solution in original post

7 REPLIES 7

Marianne
Moderator
Moderator
Partner    VIP    Accredited Certified

There does not seem to be an agent for Windows.

See https://sort.symantec.com/agents

mikebounds
Level 6
Partner Accredited

I think Mariannne is right , however SORT is not always very accurate as for example, SORT does not list an Oracle Database agent for Windows , but there is an Oracle Database agent which is mentioned in the Install guide, but the install guide does not mention an Oracle Data Guard - see extract below:

 

High Availability Hardware Replication Agents
■ Veritas Cluster Server Hardware Replication Agent
for EMC SRDF
Enables VCS to manage SRDF replicated devices.
■ Veritas Cluster Server Hardware Replication Agent
for EMC SRDFSTAR
Enables VCS to manage SRDFSTAR replicated
devices.
■ Veritas Cluster Server Hardware Replication Agent
for Hitachi TrueCopy
Enables VCS to manage TrueCopy replicated devices.
 
High Availability Application Agents
■ Veritas Cluster Server Application Agent for
Exchange 2007
■ Veritas Cluster Server Database Agent for Exchange
2010
■ Veritas Cluster Server Application Agent for
SharePoint Server 2010
 
High Availability Database Agents
■ Veritas Cluster Server Database Agent for SQL
This installs the VCS agent for both, SQL Server
■ Veritas Cluster Server Database Agent for Oracle
 
Mike

 

Marianne
Moderator
Moderator
Partner    VIP    Accredited Certified

I have checked the Oracle agent guides for Windows. (https://sort.symantec.com/documents ) 

Data Guard is not mentioned at all.

Faisal_Saleem
Level 4
Partner Accredited

Thanks for the input, I also had concluded on the same from my research that Agent for Windows is not available.

So here my question is how can we cater this situation, if someone is interested in Clustering Solution HA/DR for Windows Env but want to use Oracle Data Guard and avoid licensening of VVR as they already have ODG.

Any comments  ?

Faisal_Saleem
Level 4
Partner Accredited

I have raised a query on Mariane comment, see if you can also contribute on it.

Thanks

mikebounds
Level 6
Partner Accredited

You can write your own agent either from scratch using information from the VCS Agent Developers Guide - 

http://sort-cdn.symantec.com/public/documents/sfha/6.0.2/windows/productguides/pdf/VCS_AgentDev_6.0....

or use the Process agent.  It is not that difficult.  Using the Process agent you would need to use the following attributes of the Process Agent:

  1. StartProgram: Write a program that promotes ODG to primary and demotes the other node if it is there.  The program touches a lock file
  2. MonitorProgram: Just checks lock file exists
  3. StopProgram: Removes lock file

So the 2nd two are easy, so the StartProgram is the one that is difficult.  You can see what the UNIX agent does from the documentation (https://sort.symantec.com/agents/detail/4625) and actually you could download UNIX agent and reuse the code from the online.  If the code is written in perl it MAY work unchanged, but dealing with files MAY need altering as Windows paths can have spaces.  Even if program is written in shell, at least you can reuse or the databas commands - these are listed in the guide:

 

About the Oracle Data Guard agent’s online function
 
The agent determines the role of the database and the type of open mode using
the SQL commands:
DATABASE_ROLE from V$DATABASE
OPEN_MODE from V$DATABASE
 
If the role of the replicated database is PRIMARY and the open mode is MOUNT,
the agent makes the database accessible for clients as follows:
■ Alters the database to open mode READ WRITE.
■ Creates a lock file on the local host to indicate that the resource is online.
 
If the role of the database is PHYSICAL STANDBY, the agent assumes a site fault
and reconfigures the database as follows:
■ The agent first tries to demote a primary database instance by executing the
   action DGDemotePri inside the remote cluster.
■ Then, the agent changes the mode of the local database from PHYSICAL
   STANDBY to PRIMARY.
 
  The agent stops the reception of redo log information using the SQL command:
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL
 
The agent changes the role of the database using the SQL command:
ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY
 
■ The agent then restarts the local database instance to make the changes
effective and creates a lock file in the local agent home directory.
 
Note here, this also uses an action script "DGDemotePri" in order to run the commands to demote the database on a different node.
 
If you are going to reuse code, then it may be easier to write a "proper" agent with the info from the Developers guide.
 
Mike

mikebounds
Level 6
Partner Accredited

I've just had a look at the code and it is all written in perl so would be fairly easy to port.   You may want to ask your Symantec representive to ask if this could be ported as it would be very easy for Symantec to port assuming ODG works the same on Windows as it does on UNIX as all the Symantec parts are the same.

Mike