Document revision date: 30 March 2001

## Volume Shadowing for OpenVMS

Previous | Contents | Index

### 8.3.4 Using BACKUP/IMAGE on a Shadow Set

You must take special precautions when you restore a shadow set from a BACKUP/IMAGE save set. (See the OpenVMS System Manager's Manual, Volume 1: Essentials and OpenVMS System Management Utilities Reference Manual: A--L for a description of BACKUP/IMAGE operations with physical volumes.) A BACKUP/IMAGE operation marks the target volume as more current than the other shadow set members. This designates it as the source of copy operations if you re-create the shadow set with it.

Although you can create BACKUP save sets or copies from shadow set virtual units, you cannot mount your shadow set with the /FOREIGN qualifier to allow a BACKUP/IMAGE restoration.

You should either restore to a physical disk and then re-create the shadow set with the restored disk as a shadow set member (Example 2) or, if the save operation was a copy to a compatible disk, re-create the shadow set with that disk as a member (Example 3). The target of the BACKUP/IMAGE operation becomes the source of copy operations if you re-create the shadow set with it.

Example 1

This example shows how to perform a backup on a former shadow set member after you rebuild the shadow set.

    $ MOUNT DSA0:/SHADOW=($1$DUA10:, $1$DUA11:)  GHOSTVOL
    %MOUNT-I-MOUNTED, GHOSTVOL     mounted on _DSA0:
    %MOUNT-I-SHDWMEMSUCC, _$1$DUA10: (DISK01) is now a valid
                          member of the shadow set
    %MOUNT-I-SHDWMEMSUCC, _$1$DUA11: (DISK02) is now a valid
                          member of the shadow set

The previous command mounts the shadow set DSA0. Make sure all copy operations are finished before you dismount the shadow set by using the following command:

    $ DISMOUNT DSA0:

This command dismounts the shadow set.

    $ MOUNT/SYSTEM DSA0/SHADOW=$1$DUA10: GHOSTVOL
    %MOUNT-I-MOUNTED, GHOSTVOL    mounted on _DSA0:
    %MOUNT-I-SHDWMEMSUCC, _$1$DUA10: (DISK01) is now a valid
                          member of the shadow set

This command puts the shadow set back on line without $1$DUA11. You can now perform the backup to tape while the shadow set is on line.

    $ MOUNT $1$DUA11: GHOSTVOL
    %MOUNT-W-VOLSHDWMEM, mounting a shadow set member volume
                         volume write locked
    %MOUNT-I-MOUNTED, GHOSTVOL mounted on _$1$DUA11:
    $ MOUNT/FOREIGN  MTA0:
    %MOUNT-I-MOUNTED, ...

These two commands mount the former shadow set member and a magnetic tape in preparation for a BACKUP command.

    $ BACKUP/IMAGE $1$DUA11: MTA0:SAVESET.BCK

This command produces a BACKUP/IMAGE save set from $1$DUA11 while the shadow set is on line with $1$DUA10.

Example 2

This example shows how to restore a shadow set from an image save set. Restoring an image save set directly to a shadow set is not supported because the BACKUP output medium (the shadow set) must be mounted as a foreign volume.

    $ DISMOUNT DSA0:
    $ MOUNT/FOREIGN MTA0:
    %MOUNT-I-MOUNTED, ...
    $ MOUNT/FOREIGN/OVERRIDE=SHADOW_MEMBERSHIP $1$DUA10:
    %MOUNT-I-MOUNTED, ...

These two commands mount the save-set magnetic tape as the input specifier and the former shadow set member as the output specifier for the restore operation.

    $ BACKUP/IMAGE MTA0:SAVESET.BCK $1$DUA10:

This command restores $1$DUA10 from the save set.

    $ DISMOUNT/NOUNLOAD $1$DUA10:

This command dismounts the restored volume in preparation for mounting into a shadow set.

Note Do not attempt to add the restored volume to an existing shadow set without first dissolving the original shadow set. Mounting a restored volume into an existing shadow set will result in a copy operation erasing the restored disk.

    $ MOUNT/SYSTEM DSA0/SHADOW=($1$DUA10:, $1$DUA11:) GHOSTVOL
    %MOUNT-I-MOUNTED, GHOSTVOL    mounted on _DSA0:
    %MOUNT-I-SHDWMEMSUCC, _$1$DUA10: (DISK01) is now a valid member of
                          the shadow set
    %MOUNT-I-SHDWMEMCOPY, _$1$DUA11: (DISK02) added to the shadow set
                          with a copy operation

This command mounts the shadow set with the restored shadow set member. The output of the image backup operation has a newer generation number than other previous members of the shadow set. Therefore, $1$DUA10 (the restored volume) is the source of a copy operation when you form the shadow set.

Example 3

This example illustrates a BACKUP/IMAGE copy operation on a shadow set. The image backup operation stores output files contiguously, eliminating disk fragmentation. Because you must mount the output device of such operations with the /FOREIGN qualifier, you must take special steps as shown with the following commands:

    $ MOUNT DSA0:/SHADOW=($1$DUA10:,$1$DUA11:)  MEANDMY
    %MOUNT-I-MOUNTED, MEANDMY     mounted on _DSA0:
    %MOUNT-I-SHDWMEMSUCC, _$1$DUA10: (DISK03) is now a valid
                          member of the shadow set
    %MOUNT-I-SHDWMEMSUCC, _$1$DUA11: (DISK04) is now a valid
                          member of the shadow set
    $ MOUNT/FOREIGN $1$DUA20:
    %MOUNT-I-MOUNTED, ...

The first command mounts the shadow set DSA0. The second command mounts, on $1$DUA20, the volume to be the output of the BACKUP/IMAGE operation. The /FOREIGN qualifier is required.

    $ BACKUP/IMAGE/IGNORE=INTERLOCK  DSA0: $1$DUA20:

This command performs the image backup using the virtual unit name as the input specifier. The image backup copy of a shadow set has a newer backup revision number than the existing members in the shadow set.

Note If any writes occur between the start of the backup operation and the dismount of both the volume containing the image backup copy and the shadow set, the backup image will not contain all the data on the shadow set. You can prevent any writes from occurring during this period by mounting the shadow set with the /NOWRITE qualifier prior to mounting the volume that will serve as the backup volume.

    $ DISMOUNT $1$DUA20:
    $ DISMOUNT DSA0:

These commands dismount the target of the image backup and the shadow set, in preparation for re-creating the shadow set.

    $ MOUNT/SYSTEM DSA0/SHADOW=($1$DUA10:,$1$DUA11:,$1$DUA20:) MEANDMY
    %MOUNT-I-MOUNTED, MEANDMY     mounted on _DSA0:
    %MOUNT-I-SHDWMEMSUCC, _$1$DUA20: (DISK05) is now a valid
                          member of the shadow set
    %MOUNT-I-SHDWMEMCOPY, _$1$DUA10: (DISK03) added to the shadow
                          set with a copy operation
    %MOUNT-I-SHDWMEMCOPY, _$1$DUA11: (DISK04) added to the shadow
                          set with a copy operation

This command rebuilds the shadow set with the image backup disk as one of the shadow set members. The other former shadow set members receive copy operations.

## 8.4 Crash Dumping to a Shadowed Disk

If a multiple-member system disk shadow set is mounted and the system fails, the resulting crash dump information is initially written to the dump file on only one of the shadow set members. Once the dump operation has successfully completed, the unit number of the member with the written dump file is printed on the console device. Error messages display if the dump cannot be written (for example, because the path to the dump unit is unavailable or is unsuitable).

Note The crash dump file is normally written to the original boot device, provided that it is available and on line. If that device has been removed from the shadow set, the dump file is written to the current master member of the shadow set, provided that it is available and on line.

You can enable a minimerge on shadowed system disks and write a dump to a nonshadowed, nonsystem disk of your choice by doing the following:

- Set the SHADOW_SYS_DISK system parameter to 4097
- Set the DUMPSTYLE system parameter to the appropriate setting for your system for a nonshadowed, nonsystem disk of your choice.
- Configure a disk for dump off system disk (DOSD), as described in the System Manager's Manual: Tuning, Monitoring, and Complex Systems manual

If you accidentally enable a minimerge to a system disk that receives a crash dump and you have not set up DOSD, you may be able to recover if you know which disk contains the valid dump. Remove that member, remount it, and remove the dump from that member.

Once the system is rebooted, the shadowing software automatically begins a merge operation. This merge operation automatically propagates the dump file to all of the other members and also corrects any other inconsistencies caused by the system failure.

You can reboot the system from either the original boot device or the current master member device. At boot time, if the paths to all of the members of the shadow set are on the same type of adapter, the shadowing software correctly designates the current master and dump device on all of the booting nodes. At boot time, several OPCOM messages display information about the status of the dump device and the reboot condition of the system.

You cannot reboot the system unless the boot device is a current member of the shadow set. When a multiple member system disk shadow set loses its boot device, a warning is printed on the console device, and an OPCOM message is displayed.

Caution Do not add shadow set members to an existing system disk shadow set in any startup command procedure. Upon system reboot, all of the data, including the dump file, can be overwritten and therefore lost if volume shadowing automatically performs a copy operation. For more information, see the Caution in Section 3.4.

On some systems, you can stipulate that multiple devices be members of the same system disk shadow set. Please refer to the system-specific manual for further details.

If you use the System Dump Analyzer (SDA) to access the dump file on the virtual unit during the merge operation, you can enter the SDA command ANALYZE/CRASH to examine the dump while the shadow set is undergoing a merge operation. If SDA accesses portions of the dump file that have not yet been merged, shadowing resolves inconsistent data across the shadow set before the read is returned to SDA.

You can also use the Crash Log Utility Extractor (CLUE) commands to access the dump file on the virtual unit during a merge operation. CLUE commands can automatically create a footprint of the crash to a .LIS file and store it for future reference.

Note Accessing the dump file with the SDA command COPY or the SDA command ANALYZE/CRASH on a merging system disk will significantly degrade I/O performance on the volume. Accessing the dump file with the DCL command COPY on a merging system disk will have the same effect.

## Chapter 9
Performance Information for Volume Shadowing

Volume Shadowing for OpenVMS is designed primarily to be a data availability product and not a performance product. Recognizing that the topics of performance and data availability cannot be completely separated from each other, this chapter discusses the performance effects that can result on systems using Volume Shadowing for OpenVMS. Several factors affect the performance of a shadow set, including the following:

- I/O access path (local versus remote)
- Size of I/O requests
- Data access patterns (random or sequential)
- Read-to-write ratio
- Shadow set configuration
- State of a shadow set (steady or transient)
- Whether or not you use the shadowing copy and merge performance assists (see Section 9.2.2)
- Whether or not you use the minicopy operation (see Chapter 7)
- Other work load on the system utilizing common resources (CPUs, disks, controllers, interconnects)
- Striping (RAID) implementation

The following sections examine how the state of a shadow set and its configuration can affect resource utilization and performance. Some guidelines for controlling the use of system resources are also provided in Section 9.3. Because there is no significant difference in the performance of a nonshadowed disk and a one-member shadow set, all discussions that follow apply to multiple-member shadow sets.

## 9.1 Performance During Steady State

A shadow set is in a steady state when all of its members are consistent and no copy operation or merge operation is in progress. Overall, the performance of a shadow set in a steady state compares favorably with that of a nonshadowed disk. Read and write I/O requests processed by a shadow set utilize a very small amount of extra CPU processing time as compared with a nonshadowed disk. A shadow set often can process read requests more efficiently than can a nonshadowed disk because it can use the additional devices to respond to multiple read requests simultaneously.

For a shadow set in a steady state, the shadowing software handles read and write operations in the following manner:

- Write I/O requests are issued concurrently to all members of the shadow set. Because each member must be updated before the I/O request is considered complete, the overall completion time for a write operation is determined by the member unit with the longest access time from the node issuing the write request. Depending on how the shadow set is configured and the access paths to the individual member units, you might observe a slight increase in the time it takes to complete write I/O requests. The steady state performance is generally better to a member that is locally connected because the access path is shorter and more direct than the access path to a served member. For example, you might notice degraded write performance on shadow sets that include some members that are accessed through an MSCP server across a network link, where each member is locally connected to a separate node.
- Read I/O requests are issued to only one member unit. Volume Shadowing for OpenVMS attempts to access the member unit that can provide the best completion time. In terms of I/O throughput, a two-member shadow set can satisfy nearly twice as many read requests as a nonshadowed disk (and even more throughput is possible with a three-member shadow set). The shadow set can use the additional disk read heads to respond to multiple read requests at the same time. Thus, a steady-state shadow set can provide better performance when an application or user reads data from the disk. However, the performance gains occur mainly when the read requests queued to the shadow set come in batches such that there are as many read requests as there are member units.

Even though the read performance of a shadow set in steady-state has the potential for better performance, the primary purpose of volume shadowing is to provide data availability. It is not appropriate to use volume shadowing as a means to increase the read I/O throughput of your applications (by explicitly increasing the I/O work load). This is because the same level of performance cannot be expected during situations when copy or merge operations must take place to add new members or preserve data consistency, or when members are removed from the shadow set. Section 9.2 discusses performance considerations when the shadow set is in a transient state.

## 9.2 Performance During Copy and Merge Operations

A shadow set is in a transient state when some or all of its members are undergoing a copy or merge operation. During merge operations, Volume Shadowing for OpenVMS ensures consistency by reading the data from one member and making sure it is the same as the data contained in the same LBNs on the other members of the shadow set. If the data is different, the shadowing software updates the LBN on all members before returning the I/O request. For copy operations, the shadowing software reads data from a source member and writes the data to the same LBN on target members.

At the same time it performs a merge or copy operation, the shadowing software continues to process application and user I/O requests. The I/O processing necessitated by a copy operation can result in decreased performance as compared with the possible performance of the same shadow set under steady-state conditions. However, if your shadow set members are configured on controllers that support the shadowing assisted copy and assisted merge operations, you can significantly improve the speed with which a shadow set performs a copy or merge operation. Volume Shadowing for OpenVMS supports both assisted and unassisted merge and copy operations.

The following list describes how the performance of a shadow set might be affected while an unassisted merge or copy operation is in progress. See Chapter 6 for a description of assisted copy and merge operations.

- Copy operations
  A copy operation is started on a two- or three-member shadow set either when you mount the shadow set to create it or to add a new member to an existing shadow set. During a copy operation, members that are targets of the operation cannot provide data availability until the operation completes. Therefore, the shadowing software performs the copy operation as quickly as possible to make the shadow set fully available.
  During a copy operation, the shadowing software gives equal priority to user and application I/O requests and to I/O requests necessary to complete the copy operation. The performance of a shadow set during a copy operation is reduced because:
  - The shadowing software must follow special protocols for user read and write I/O requests during a copy operation.
  - Copy operation I/O requests are large in size and have the same priority as user and application I/O requests.
  In addition, other system resources are utilized during a copy operation. Depending on the access path to the individual shadow set members, these resources could include the disk controller, interconnects, interconnect adapters, and systems.
  Because you explicitly start copy operations when you mount a new shadow set or add members to an existing set, you can control when the shadowing software performs a copy operation. Therefore, you can minimize the effect on users and applications in the system by limiting the number of copy operations that occur at the same time. For example, when you create new sets or add new members, try to add the sets or members during periods of low system activity, and do not mount several sets at the same time.
  You can further minimize the effect on users and applications in the system by using the minicopy operation, introduced with OpenVMS Version 7.3. The minicopy operation can significantly reduce the time it takes to return a shadow set member to shadow set. By the use of write bitmap technology, the minicopy operation copies only the data that was changed while the member was dismounted. For more information, see Chapter 7.
- Merge operations
  In contrast to copy operations, merge operations are not under the control of a user or program. The shadowing software automatically initiates a merge operation on a shadow set as a result of the failure of a node on which the shadow set is mounted.
  As in the case of a copy operation, the volume shadowing software ensures that all I/O requests to the shadow set follow appropriate protocols to ensure data consistency. However, when a shadow set is undergoing a merge operation, full data availability exists in the sense that individual members of the set are valid data sources and are accessible by applications and users on the system. Therefore, it is not urgent for the shadowing software to finish the merge operation, especially when the system is being heavily used. Because of this major distinction from a copy operation, the shadowing software implicitly places a higher priority on user activity to the shadow set. Volume Shadowing for OpenVMS does this by detecting and evaluating system load, and then dynamically controlling or throttling the merge operation so that other I/O activity can proceed without interference.
  Because the merge throttle slows merge operations when there is heavy application and user I/O activity on the system, the merge operation can take longer than copy operations. The merge throttle allows application and user activity to continue unimpeded by the merge operation when heavy work loads are detected.
  On the other hand, the read performance of a shadow set during a merge operation is reduced because the shadowing software must perform data integrity checks on all members for every read request. The volume shadowing software reads the data from the same LBN on all members of the shadow set, compares the data, and repairs any inconsistencies before returning the read data to the user.

### 9.2.1 Improving Performance for Unassisted Merge Operations

Because read performance during a shadow set unassisted merge operation is reduced, a mechanism is provided to control the throttle on the merge I/O rate. Two logical names are available to vary the unassisted merge multiplication factor used for a virtual unit on a per-node and per-virtual unit basis.

These logicals must be defined in the system table and should be defined on each node in the cluster. The valid range for the multiplication factor is 100 to 100,000. Any value outside of this range causes the factor to default to 200. This value of 200 is displayed at the start of a shadow set merge, in the `%SHADOW_SERVER-I-SSRVINIMRG` message, following the word `Factor` .

The two logical names are:

- SHAD$MERGE_DELAY_FACTOR_DSAnnnn
  This logical is specific to a virtual unit, where nnnn represents the virtual unit number. If any important virtual units need to be merged without regard to the impact on application I/O, values as high as 100,000 can be defined.
- SHAD$MERGE_DELAY_FACTOR
  This logical applies to all shadow sets that do not have a virtual unit specific logical defined.

Note Increasing the values excessively may cause application performance problems when merges are occurring. When setting values, system managers must balance the site specific application needs with their merge requirements.

These two logical names are evaluated again after 100,000 merge I/Os have completed. Therefore, the factor can be adjusted while a merge is in progress.

Previous | Next | Contents | Index

| privacy and legal statement |
5423PRO_012.HTML