Symantec logo

Using the IBC messaging command vradmin ibc

The vradmin ibc command enables you to perform off-host processing operation in a single command.

Prerequisites for using vradmin ibc command

  The Primary RLINK that points to the Secondary host participating in the vradmin ibc command must be in the connect state.

  The onfreeze script must exist on each Secondary host participating in the vradmin ibc command.

  Make sure each user-defined script to be used in the vradmin ibc command exits with a status of 0 on successful completion and a status of nonzero on unsuccessful completion.

  The user-defined scripts must have execute permissions for root user.


  Caution   The vradmin ibc executes scripts using root privileges. If the scripts can be modified by a non-privileged user, there is a potential security risk. To prevent this, ensure that you have the proper access privileges set on the scripts used with the vradmin ibc command.


 To perform an off-host processing task on one or more Secondary RVGs in an RDS

  1. Make sure the RLINKs are in the connect state. If the RLINKs are not in the connect state, use the vradmin startrep command to start replication.
  2. Create the user-defined scripts for this off-host processing task.
    1. Create the following directory on all hosts participating in the vradmin ibc command:

      /etc/vx/vvr/ibc_scripts/task_name

      where task_name is the name of the off-host processing task and is the same as the task_name argument used in the vradmin ibc command.

    2. Create the appropriate scripts for the required off-host processing task and copy the scripts in the directory created in step a. See Understanding the scripts used for the vradmin ibc command.
  1. Run the following command from any host in the RDS:

    # vradmin -g diskgroup ibc rvg_name task_name [sechost]...

    The argument diskgroup represents the disk group that contains the RVG on the local host.

    The argument rvg_name is the name of the RVG on the local host and represents its RDS.

    The argument task_name is the name of the off-host processing task and is the same as the name of the directory created in step a.

    The argument sechost is the name of the Secondary host as displayed in the output of the vradmin printrvg command. The argument sechost is optional if the RDS contains only one Secondary. To perform the task on multiple Secondary hosts, specify a space-separated list with the name of each Secondary to be included. Use the -all option to perform the task on all the Secondary hosts in the RDS.


Example-Creating a snapshot on the Secondary using the vradmin ibc command

This example shows how to create a snapshot of the data volumes on the Secondary london using the vradmin ibc command. The RVG hr_rvg, which belongs to the disk group hrdg, has been created on the Primary and Secondary. This example also assumes that Secondary data volumes have associated snapshot plexes. It uses the application name dss_app.

  1. Create the following directory on Secondary host:

    /etc/vx/vvr/ibc_scripts/dss_app

  2. Create the onfreeze script in the /etc/vx/vvr/ibc_scripts/dss_app directory on the Secondary host by including the following command to create the snapshot of the data volumes on the Secondary:

    #!/bin/sh

    /usr/sbin/vxrvg -g hrdg snapshot hr_rvg

  3. On the Primary, put the application using the Primary data volumes in the quiesce mode.
  4. Create the snapshot by running the following command on any host in the RDS:

    # vradmin -g hrdg ibc hr_rvg dss_app london

  5. On the Primary, take the application out of quiesced mode to resume it.
Understanding the scripts used for the vradmin ibc command

The vradmin ibc command executes the user-defined scripts: prefreeze, quiesce, unquiesce, onfreeze, and postfreeze. Note that the onfreeze script is mandatory and must be present on the Secondary. The scripts prefreeze, quiesce, unquiesce, and postfreeze are optional. However, if you provide the quiesce script, you must provide the unquiesce script and vice versa. You must name the user-defined scripts prefreeze, quiesce, unquiesce, onfreeze, or postfreeze.


  Note   A user-defined script can either be a shell script or a binary.



Location of the scripts

The scripts must reside in the /etc/vx/vvr/ibc_scripts/task_name directory on the Primary and the Secondary host. Note that task_name is the name of the off-host processing task and is the same as the task_name argument used in the vradmin ibc command. For example, if the off-host processing task is Decision Support Systems (DSS), you can choose a task name of dss; or if the off-host processing task is Backup, you can choose the task name of backup.

Host

Directory

Name of Script

Primary 

/etc/vx/vvr/ibc_scripts/task_name 

quiesce 

Primary 

/etc/vx/vvr/ibc_scripts/task_name 

unquiesce 

Secondary 

/etc/vx/vvr/ibc_scripts/task_name 

onfreeze 

Secondary 

/etc/vx/vvr/ibc_scripts/task_name 

prefreeze 

Secondary 

/etc/vx/vvr/ibc_scripts/task_name 

postfreeze 

In a shared disk group environment, the scripts must exist on each node in the Primary or Secondary cluster. That is, the quiesce and unquiesce scripts must exist on each node in the Primary cluster; the onfreeze, prefreeze, and postfreeze scripts must exist on each node in the Secondary cluster.

When the vradmin ibc command executes each script, it passes the following arguments to the script:

Parameter

Description

Argument 1 

Name of the disk group of the Primary RVG. 

Argument 2 

Name of the Primary RVG. 

Argument 3 

The task_name specified in the vradmin ibc command. 

Remaining Arguments 

Names of the RLINKs participating in the vradmin ibc command. 

The following section describes how each script is used with the vradmin ibc command:

Sample scripts

The /etc/vx/vvr/ibc_scripts directory contains the following sample script directories:

sample_db_snapshot

sample_vxfs_snapshot

sample_so_snapshot

These sample scripts show how to use the user-defined scripts with the vradmin ibc command. Refer to the README file provided in /etc/vx/vvr/ibc_scripts directory for instructions on how to use the sample scripts to perform off-host processing tasks.


  Note   Sample scripts are provided for reference. Customize the sample scripts to suit your requirements.