Unique Disk Identifier (UDID) interoperability changes with Veritas Volume Manager (VxVM)

Unique Disk Identifier (UDID) interoperability changes with Veritas Volume Manager (VxVM)

Article: 100038560
Last Published: 2019-04-03
Ratings: 9 0
Product(s): InfoScale & Storage Foundation

Description

Unique Disk Identifier (UDID) Introduction

From Veritas Volume Manager (VxVM) 5.0, an unique disk identifier (UDID) attribute is added to the disk’s private region (on-disk) when the disk is initialized or when the disk is imported into a disk group (if this identifier does not already exist).

Figure 1.0

In releases prior to 5.0, if VxVM could not determine which disks are the originals (source) and clones, VxVM would not import any of the disks.

VxVM uses two UDID values, kernel UDID (DDL) and on-disk UDID to potentially identify a CLONE/REPLICATED device differently to a standard data disk.
The Device Discover Layer (DDL) kernel UDID is the true UDID of the disk.


Figure 2.0


 

The on-disk UDID is the UDID written on the disk, however, this is not necessarily the “true” UDID of the disk discovered by the DDL (Device Discovery Layer).   The on-disk UDID may come from another source.

Key points:

- UDID Concept introduced in Veritas Volume Manager (VxVM) 5.0
- The udid_mismatch flag visibility changed with VxVM 5.0 MP3
- The udid_mismatch flag is now always visible with VxVM 5.1SP1RP4 and 6.0.3.200 onwards
- New CLI options "vxdg -c import <dg-name>" and "vxdisk -c updateudid <disk-access-name>" introduced with VxVM 6.0.5 and 6.1 onwards
- New VCS DiskGroup resouce attribute "ClearClone=1" added to handle hardware replicated devices


The UDID format consists of the following attributes:

Figure 3.0



Advanced disk arrays provide hardware tools to create clones and replicated images of disks.

As a result, the VxVM private region (on-disk) contents are duplicated from the source disk to target devices such as CLONED / REPLICATED disks.

Figure 4.0



When the disk group containing the original disk is to be imported, VxVM can detect multiple disks having the same disk identifier due to the attributes defined in the private region (on-disk).

Whenever a disk is brought online, the current UDID value that is known to the Device Discovery Layer (DDL) is compared with the UDID that is set in the disk’s private region (on-disk).
If the UDID values do not match, the udid_mismatch flag is set on the disk.

If a disk is a hardware clone or a hardware replicated copy of another disk, the on-disk UDID will differ to the UDID discovered by the Device Discovery Layer (DDL), thus triggering a udid_mismatch flag.

Figure 5.0



Note: The “udid_mismatch” flag can be viewed with various “vxdisk” CLI command options.


The UDID related content can be viewed using commands such as:

# vxdisk –v list <da-name>

# vxdisk –o udid list

# vxdisk –px LIST_UDID list

 

Consistent visibility of the UDID_MISMATCH FLAG

The udid_mismatch flag visibility criteria behaviour changed as of 5.0 MP3.

Since 5.0 MP3, the VxVM udid_mismatch disk flag is not shown to the user (vxdisk list) unless the source and target (clone/replicated)disks are presented to the same physical server.

Figure 6.0






With 5.1 SP1 RP4 and 6.0.3.200
 

Where VxVM finds a matching disk (Clone) related to the Diskgroup image, and where the diskid also matches, the import selection criteria incorrectly assumes it is the source disk image.

The udid_mismatch flag visibility criteria behaviour changed as a result in 5.1 SP1 RP4 and 6.0.3.200 to prevent incorrect disk selection data corruption scenarios.

Regardless if the source and target disks are presented to the same server, if a udid_mismatch state exists the udid_mismatch FLAG will always be visible to the user (vxdisk list).


Figure 7.0


 

In 6.0.5 an 6.1 onwards:


In simple terms, the new “-c” option provided with the vxdg command is primarily used to handle the on-disk UDID update for REPLICATED devices, such as EMC SRDF, EMC MirrorView/RecoverPoint, HDS TrueCopy, IBM MetroMirror and so on

For hardware clone devices, support would recommend the use of the “vxdg –o useclonedev=on –o updateid import <dg-name>” and where required the use of VxVM tags.
 

Although the “-c” option can be used for clone (such as EMC BCV/Symclone/Snaps, HDS ShadowImage ) devices, Veritas would not recommend it with hardware clone devices.

In the event that a standard data disk(s) reports a udid_mismatch, the “vxdg –c import <dg-name>” or “vxdisk –fc updateudid <da-names>” commands can be used to align the UDID values from the DDL (Kernel) to that on-disk.


Introduced in 6.0.3.200 ( vxdisk –px LIST_CLONE list ) when using DMP as the multi-pathing driver, no EMC PowerPath, MPIO, MPxIO etc, VxVM presents extended attribute content and lun characters.

Example:

Various attribute view are now available.


# vxdisk -px list | tail -5
VxVM vxdisk ERROR V-5-1-0  Attribute "list" is not valid

Supported Attribute Lists :

LIST_OFFSET           LIST_CLONE            LIST_DMP
LIST_UDID             LIST_DISK             LIST_DEVICE
LIST_STATE


VxVM when used in connection with DMP in now capable of exposing the Hardware Replication and Clone related content, i.e. rep_pri for say srdf-r1, rep-sec for srdf-r2.

The LUN state for EMC DMX/VMAX devices is also exposed when using DMP, WD (Write-Disabled), NR (Not-Ready).


# vxdisk -px LIST_CLONE list
DEVICE           DG_NAME   REPLICATED REPLICATED_TYPE HARDWARE_MIRROR LUN_SIZE  NR_DEVICE DEVICE_TYPE DDL_DEVICE_ATTR
emc0_01da        newsrdf   -          -               yes             4287360   no        -           lun,bcv
emc0_01db        newsrdf   -          -               yes             4287360   no        -           lun,bcv
emc0_01d8        newsrdf   yes        rep_pri         no              4287360   no        -           lun,srdf-r1,Mirror
emc0_01d9        newsrdf   yes        rep_pri         no              4287360   no        -           lun,srdf-r1,Mirror
emc0_0052        srdfdg    yes        rep_sec         yes             4128000   no        -           lun,WD,srdf-r2
emc0_0053        srdfdg    yes        rep_sec         yes             4128000   no        -           lun,WD,srdf-r2
emc0_0054        srdfdg    yes        rep_sec         yes             4128000   no        -           lun,WD,srdf-r2
emc0_0055        -         yes        rep_pri         no              4128000   no        -           lun,srdf-r1


VxVM New CLI Options

1.] vxdg –c import <dg-name>

With Veritas Volume Manager (VxVM) 6.1 (and 6.0.5 ) it is now possible to update the on-disk UDID related content for a specific DiskGroup whilst deported using a single command.

Previously:

The on-disk UDID content can be updated using the “vxdisk updateudid <da-name>” command. This CLI operation takes the UDID value from the DDL and overwrites the UDID on-disk.
This results in the clone_disk flag being set against the updated the disk. To turn off the clone_disk flag for non-hardware clone devices, a further command is required "vxdisk set <disk-access-name> clone=off".

# vxdisk updateudid <da-name>
# vxdisk set <disk-access-name> clone=off


Now replaced with a single command:


# vxdg –c import <dg-name>

The “-c" is a new option provided by VxVM.

It enables the user  to update the UDID related content, clearing udid_mismatch and subsequent clone_disk flags from the disks associated with the specified Diskgroup (DG).

Note: This option is mainly used to handle UDID alignment for hardware replicated devices at a DG level.Do not use with hardware clone devices.



2.] vxdisk –c updateudid <da-name>
 

With Veritas Volume Manager (VxVM) 6.1 (and 6.0.5 ) it is now possible to update the on-disk UDID related content for a specific disk and clear the clone_disk flag in a single operation.

Previously:

# vxdisk updateudid <da-name>
# vxdisk set <da-name> clone=off


Now replaced with a single command option:
 

# vxdisk –c updateudid <da-name>


It enables the user  to update the UDID related content, clearing udid_mismatch and subsequent clone_disk flags from the specified disk(s).


Note: This option is mainly used to handle UDID updates at a disk level.


With Veritas Cluster Server (VCS) 6.1 (and 6.0.5 ) it is now possible for VCS to call the VxVM command “vxdg –c import <dg-name>”.


3.] VCS enhancement available with SFHA 6.0.5 and 6.1


VCS configuration:

        DiskGroup srdfdg (
                DiskGroup = srdfdg
                ClearClone = 1  <<<<< NEW 6.1 enhancement for VCS (default is 0) . Functionality Back ported to VxVM 6.0.5.
                )

 

The VCS ClearClone attribute is mainly used to handle UDID updates for VxVM replicated devices.


The EMC SRDF resource could be defined in the VCS ServiceGroup “ srdfgrp ” as follows:


group srdfgrp (
        SystemList = { goofy = 0, pluto = 1 }
        AutoStartList = { goofy, pluto }
        SystemZones = { goofy = 0, pluto = 1 }
        )

        DiskGroup plutodg (
                DiskGroup = plutodg
                     ClearClone = 1  <<<<< NEW 6.1 enhancement for VCS (default is 0) . Functionality back ported to VxVM 6.0.5.
                )

        Mount srdfmnt (
                MountPoint = "/srdfvol"
                BlockDevice = "/dev/vx/dsk/plutodg/srdfvol"
                FSType = vxfs
                FsckOpt = "-n"
                )

        SRDF SRDF-PlutoDg (
                SymHome = "/opt/emc/SYMCLI"
                GrpName = PlutoDg
                SplitTakeover = 1
                )

        plutodg requires SRDF-PlutoDg
        srdfmnt requires plutodg


This functionality will slowly remove the need for the VCS Preonline (UDID) trigger.

Was this content helpful?