Document revision date: 19 July 1999
[Compaq] [Go to the documentation home page] [How to order documentation] [Help on this site] [How to contact us]
[OpenVMS documentation]

Volume Shadowing for OpenVMS


Previous Contents Index

In addition, you should specify a system disk shadow set virtual unit number with the SHADOW_SYS_UNIT system parameter, unless the desired system disk unit number is DSA0.

SHADOW_SYS_TMO

You can use the SHADOW_SYS_TMO parameter in two ways: during the booting process and during normal operations.

During the booting process, you can use this parameter on the first node in the cluster to boot and to create a specific shadow set. If the proposed shadow set is not currently mounted in the cluster, use this parameter to extend the time a booting system will wait for all former members of the system disk shadow set to become available.

The second use of this parameter comes into effect once the system successfully mounts the virtual unit and begins normal operations. Just as the SHADOW_MBR_TMO parameter controls the time the operating system waits for failing members of an application disk shadow set to join the shadow set, the SHADOW_SYS_TMO parameter controls how long the operating system will wait for failing members of a system disk shadow set. All nodes using a particular system disk shadow set should have their SHADOW_SYS_TMO parameter equal to the same value, after normal operations begin. Therefore, after booting, this parameter applies only to members of the system disk shadow set.

The default value is OpenVMS version specific. You can set a range of up to 65,535 seconds if you want the system to wait longer than the default for all members to join the shadow set.

SHADOW_SYS_UNIT

The SHADOW_SYS_UNIT parameter, which must be used when the SHADOW_SYS_DISK parameter is set to 1, contains the virtual unit number of the system disk.

The SHADOW_SYS_UNIT parameter is an integer value that contains the virtual unit number of the system disk. The default value is 0. The maximum value allowed is 9999. This parameter is effective only when the SHADOW_SYS_DISK parameter has a value of 1. This parameter must be set to the same value on all nodes that boot off a particular system disk shadow set.

SHADOW_SYS_WAIT

Use the SHADOW_SYS_WAIT parameter to extend the time a booting system will wait for all current members of a mounted shadowed system disk to become available to this node. The shadow set must already be mounted by at least one other cluster node for this parameter to take effect. The default value is 256 seconds. Change this parameter to a higher value if you want the system to wait more than the 256-second default for all members to join the shadow set. This parameter has a range of 1 through 65,535 seconds.

3.2.1 Example of Shadowing Values for MODPARAMS.DAT

To set or modify volume shadowing parameters, edit the [SYSn.SYSEXE]MODPARAMS.DAT file or the appropriate AUTOGEN include file. After editing the file, execute SYS$UPDATE:AUTOGEN as described in the OpenVMS System Manager's Manual: Tuning, Monitoring, and Complex Systems. If you have an OpenVMS Cluster system, ensure that the system parameters are updated on each node. Example 3-2 illustrates a MODPARAMS.DAT file that includes assignment statements to set shadowing parameters.

Example 3-2 MODPARAMS.DAT File

   .
   .
   .
! Volume Shadowing Parameters: 
SHADOWING=2             ! Enables phase II shadowing 
 
SHADOW_SYS_DISK=1       ! Enables system disk shadowing 
 
SHADOW_SYS_UNIT=7       ! Specifies 7 as the virtual unit number 
                          of the system disk 
 
SHADOW_MAX_COPY=4       ! Specifies that 4 parallel copies can occur at one time 
 
SHADOW_MBR_TMO=12       ! Allows 12 seconds for physical members to fail over 
                        ! before removal from the shadow set 
   .
   .
   .

See the OpenVMS System Manager's Manual: Tuning, Monitoring, and Complex Systems for complete information about invoking AUTOGEN and specifying the appropriate command qualifiers to perform the desired AUTOGEN operations.

3.2.2 Displaying System Parameters

It is sometimes useful to use the SYSGEN command SHOW to display the values of system parameters.

You do not need special privileges to invoke the SYSGEN utility. You can use either a qualifier or the name of a system parameter with the SHOW command, or you can use the SHOW/ALL command to display information about all system parameters. (Enter HELP SHOW at the SYSGEN> prompt for more information about the SHOW command.) The following example illustrates how you can check the current default, minimum, and maximum values for the SHADOWING parameter.


$ MCR SYSGEN
SYSGEN> SHOW SHADOWING
Parameter Name       Current   Default   Minimum   Maximum Unit Dynamic
--------------       -------   -------   -------   ------- ---- -------
SHADOWING                  2         0         0        3  Coded-value
SYSGEN>  

3.3 Booting from a System Disk Shadow Set

When multiple nodes boot from a common system disk shadow set, ensure that all nodes specify a physical unit that is a source member of the system disk shadow set.

At boot time, the volume shadowing software attempts to construct a complete system disk shadow set based on the shadowing membership information contained in the storage control block (SCB) of the boot device. The SCB is an ODS-2 or ODS-5 file system data structure that resides on each storage device and contains information about shadow set membership (described in Section 6.1). Depending on what information is in the SCB at boot time, the following scenarios are possible:

The boot process automatically locates all the members of a system disk shadow set. You should not add system disk shadow set members in startup procedures as formerly recommended when phase I shadowing was supported.

Caution

Do not add members to a system disk shadow set in startup procedures. Doing so can result in loss of data under the following circumstances:
  1. A system is operating normally with a multiple member system disk shadow set.
  2. The original boot device is removed from the shadow set but remains as a functioning disk.
  3. The system continues with the remaining members.
  4. The system is shut down or it fails.
  5. The system is rebooted using the original boot device (which is now out of date).
  6. The boot process determines that the boot device is not consistent with the other shadow set members and, therefore, does not add them into the shadow set. This behavior preserves the up-to-date data on the other members.
  7. A MOUNT command in the startup procedure adds the other shadow set members to the system disk shadow set.
  8. A copy operation from the boot device to the other shadow set members is initiated, thereby overwriting them.

If the boot device fails, the following console warning message displays:


virtual-unit: does not contain the member named to VMB. 
System may not reboot. 

After the boot device has been repaired, manually add it back into the system disk shadow set.

3.4 Booting Satellite Nodes from an MSCP Served System Disk Shadow Set

The OpenVMS operating system uses the Maintenance Operations Procedure (MOP) protocol to boot satellite nodes. The MOP protocol is provided by either the LANCP utility or by DECnet. The network software (DECnet or LANCP) must be configured on your system before you can use either DECnet commands or LANCP commands. You must also define a satellite's system disk using the LANCP or DECnet commands of the network software you are using for satellite booting. If the system disk is shadowed, the commands should specify the virtual unit or the virtual unit logical name rather than any physical unit.

The MOP server accesses the system disk shadow set (using the virtual unit defined) to perform downline load operations to the satellite. These operations include downline loading the physical boot device name to the satellite. When downline loading is complete, the satellite is able to connect to an MSCP server and access the physical boot device directly. The satellite's shadowing parameters are then used in the same way as a nonsatellite node.

The cluster configuration command procedure automatically enables shadowing on satellite nodes when you want to shadow the system disk. If you do not want to shadow the system disk but need to enable shadowing, you must do so manually after the cluster configuration command procedure completes. Set shadowing parameters in the satellite node's MODPARAMS.DAT file and execute AUTOGEN as described in Section 3.2.

Figure 3-1 shows two satellite nodes with shadowed system disk volumes located in an OpenVMS Cluster system configuration. In this configuration, the devices $254$DUA1 and $254$DUA2 make up a two-member shadow set. The satellites HIWAY1 and BYWAY2 access shadow set members across the Ethernet via the MSCP servers in the two boot nodes.

Figure 3-1 Booting Satellite Nodes


When a satellite node in Figure 3-1 is booted, the boot node (MOP server) downline loads initial bootstrap code from the virtual unit DSA1. The boot node points the satellite to use either $254$DUA1 or $254$DUA2 as a boot device for the remainder of the boot process. Note that the boot node must have the virtual unit mounted. The satellite then forms the system disk shadow set locally according to the shadow set membership information stored in the SCB on the boot device.

The following SHOW DEVICES command displays how the shadow set appears after the satellite node HIWAY1 is booted. In this example, the physical disk devices are accessed through the MSCP server node BTNODE.


$ SHOW DEVICES DSA1
Device                  Device           Error    Volume         Free  Trans Mnt
Name                   Status           Count     Label        Blocks Count Cnt
DSA1:                   Mounted              0  MYVOLUME        181779   194  37
$254$DUA1:    (BTNODE)  ShadowSetMember      0  (member of DSA1:)
$254$DUA2:    (BTNODE)  ShadowSetMember      0  (member of DSA1:)
$ 


Chapter 4
Managing Shadow Sets Using DCL Commands

This chapter describes how to create, mount, dismount, and dissolve shadow sets using interactive DCL commands. It also describes how to use the DCL command SHOW DEVICES and the lexical function F$GETDVI to access current information about the state of shadow sets.

Volume Shadowing for OpenVMS improves data availability by ensuring that corresponding logical block numbers (LBNs) on multiple disk volumes contain the same information. Upon receiving a command to mount or dismount disks in a shadow set, the volume shadowing software may need to reconcile data differences and ensure that corresponding LBNs contain the same information.

An understanding of the copy and merge operations used for data reconciliation is essential to the discussions in this chapter. Therefore, you may find it helpful to refer to Chapter 6 to understand how Volume Shadowing for OpenVMS ensures data availability and consistency during changes in shadow set membership.

4.1 Allocating Devices

To avoid the possibility of another user mounting a particular device before you enter the MOUNT command, you can optionally allocate the device before issuing the MOUNT command. Use the DCL command ALLOCATE to provide your process with exclusive access to a physical device until you either deallocate the device or terminate your process. Optionally, you can associate a logical name with the device. The format for the ALLOCATE command is as follows:

ALLOCATE device-name[:] logical-name[:] 

4.2 Creating a Shadow Set

You use the MOUNT command to mount physical disk devices into a shadow set and assign a virtual unit name to the set. To create a shadow set, mount the virtual unit and specify at least one shadow set member as a parameter to the /SHADOW qualifier, as shown in Example 4-1.

Example 4-1 Creating a Shadow Set

$  MOUNT DSA23:(1) /SHADOW(2) =$4$DUA9:(3) volume-label(4) logical-name(5)

This example forms a shadow set represented by the virtual unit DSA23, and includes one shadow set member, $4$DUA9.

  1. You must use the DSAn: format to specify the shadow set virtual unit, where n represents a unique number from 0 through 9999. The prefix DSA indicates that phase II shadowing is being used. If you do not include a number after the DSA prefix, MOUNT automatically assigns the highest unit number available. Numbering starts at 9999 and decrements to 0; the first virtual unit mounted is numbered 9999, the second 9998, and so on.
    Each virtual unit number must be unique across the system, regardless of whether or not the unit is mounted for public (mounted with the /SYSTEM qualifier) or private access. Virtual units are named independently of the controllers involved.
  2. The /SHADOW qualifier is required when specifying a physical devices. You must name at least one physical device as a parameter to the /SHADOW qualifier. Although one-member shadow sets are valid, you should mount one or two additional disks in order for the shadowing software to maintain duplicate data. Adding disks to an existing shadow set is discussed in Section 4.5.
  3. You must use a nonzero allocation class for each physical device in the shadow set. Use the allocation class naming format $allocation-class$ddcu, where:
    See OpenVMS Cluster Systems for more information about allocation classes.
  4. Specify a 1- to 12-character volume label for the virtual unit.
  5. Optionally, specify a 1- to 255-alphanumeric-character logical name string for the shadow set.

Upon receiving a command to create a shadow set, the volume shadowing software may perform a copy or a merge operation to reconcile data differences. If you are not sure which disks might be targets of copy operations, you can specify the /CONFIRM or /NOCOPY qualifiers as a precaution against overwriting important data when you mount a disk. These and other MOUNT command qualifiers are discussed in Section 4.4.

4.3 Mounting a Shadow Set on Other Nodes in the Cluster

If a shadow set is already mounted on one or more nodes in an OpenVMS Cluster system, the /SHADOW qualifier is not required when you mount the same shadow set on other nodes in the cluster. For example, if DSA42 is already mounted in the cluster when a new node is brought into the cluster, you can use the following command to mount DSA42 on the new node:


$ MOUNT/SYS DSA42:  volume-label logical-name

Upon receiving this command, the volume shadowing software creates the virtual unit on the new node with the same members that currently exist in the cluster.

4.4 MOUNT Command Qualifiers for Shadowing

This section briefly describes the MOUNT command qualifiers that are useful for shadow set management. Refer also to the OpenVMS System Management Utilities Reference Manual for complete information about these and other DCL commands.

You must use the /SHADOW qualifier when you create a new shadow set or when you add a member to an existing shadow set. You also can use the optional qualifiers described in Table 4-1. These qualifiers require the VOLPRO and OPER privileges, or your user identification code (UIC) must match the owner UIC of the volume being mounted. To mount a shadow set throughout the system, you must also have the SYSNAM privilege.

Detailed examples and descriptions of how to use these qualifiers are included in Section 4.5. In addition to the shadowing specific qualifiers mentioned in Table 4-1, the /NOASSIST, /SYSTEM, and /CLUSTER qualifiers are also frequently used when mounting shadow sets.

Table 4-1 MOUNT Command Qualifiers
Qualifier Function
/[NO]CONFIRM Controls whether the Mount utility issues a request to confirm a copy operation when mounting a shadow set. The default is /NOCONFIRM.
/[NO]COPY Enables or disables copy operations on physical devices named when mounting or adding to a shadow set. The default is /COPY.
/[NO]INCLUDE Automatically mounts and reinstates a shadow set to the way it was before the shadow set was dissolved. The default is /NOINCLUDE.
/OVERRIDE=NO_FORCED_ERROR Directs the Mount utility to proceed with shadowing, even though the device or controller does not support forced error handling. Using unsupported SCSI disks can cause members to be removed from a shadow set if certain error conditions arise that cannot be corrected, because some SCSI disks do not implement READL and WRITEL commands that support disk bad- block repair. If the SCSI device does not support READL and WRITEL commands, the SCSI disk class driver sets a NOFE (no forced error) bit in a System Dump Analyzer display. See Section 4.8.4.2 for more about how to display this information.
/OVERRIDE=SHADOW_MEMBERSHIP Mounts a former shadow set member and erases the disk's shadow set generation number so that the disk is no longer marked as having been a member of the shadow set.
/POLICY=[NO]REQUIRE_MEMBERS Controls whether every physical device specified with the /SHADOW qualifier must be accessible when the MOUNT command is issued in order for the MOUNT command to take effect. The default is /POLICY=NOREQUIRE_MEMBERS.
/POLICY=[NO]VERIFY_LABELS Controls whether the labels of every physical device specified with the /SHADOW qualifier must be verified in order for the MOUNT command to take effect. The default is /POLICY=NOVERIFY_LABELS.
/SHADOW=( physical-device-name[:][,...]) Directs the Mount utility to bind the specified physical devices into a shadow set represented by the virtual unit named in the command.

Caution

Do not use the /OVERRIDE=IDENTIFICATION or /NOMOUNT_VERIFICATION qualifiers when mounting shadow sets. Using either of these qualifiers can result in loss of data.

If you mount a shadow set with the /OVERRIDE=IDENTIFICATION qualifier, individual shadow set members start with different volume labels, which can cause a volume to lose data.

If you specify the /NOMOUNT_VERIFICATION qualifier, the shadow set becomes unusable at the first state change of the shadow set.

/NOASSIST Qualifier

You may occasionally find it useful to specify the /NOASSIST qualifier on the MOUNT command line. Use the MOUNT/NOASSIST command in startup files to avoid failure of a MOUNT command when a device you specify in the command is not available. The /NOASSIST qualifier can be used in startup files because operator intervention is impossible during startup.

The MOUNT/NOASSIST qualifier can successfully mount the shadow set as long as at least one of the devices included in the MOUNT command line is available for mounting. Example 4-2 shows an example of the /NOASSIST qualifier and the resulting messages when one of the members included in the command line is not available for mounting.

Example 4-2 Using the /NOASSIST Qualifier

$ MOUNT/SYS DSA65:/SHADOW=($4$DIA6,$4$DIA5) GALEXY/NOASSIST
%MOUNT-I-MOUNTED, GALEXY mounted on _DSA65:
%MOUNT-I-SHDWMEMSUCC, _$4$DIA6: (READY) is now a valid member of the shadowset
%MOUNT-I-SHDWMEMFAIL, $4$DIA5 failed as a member of the shadow set
-SYSTEM-F-VOLINV, volume is not software enabled

Even though device $4$DIA5 is not available for mounting, the MOUNT command continues to create the shadow set with $4$DIA6 as its only member. If the command line did not include the /NOASSIST qualifier, the MOUNT command would not mount the shadow set.

/SYSTEM, /GROUP, and /CLUSTER Qualifiers

The /SYSTEM qualifier makes the volume available to all users on the system, and should be used when adding a disk to an existing shadow set. When you add members to an existing shadow set, you do not need to specify the /CLUSTER qualifier. This qualifier applies to the virtual unit, so it is not necessary to specify it again when adding physical units. You need only to specify /SYSTEM.


Previous Next Contents Index

  [Go to the documentation home page] [How to order documentation] [Help on this site] [How to contact us]  
  privacy and legal statement  
5423PRO_002.HTML