Topics:
Managing Components in the VxVM Architecture
Discovering Disk Devices
Administering the Device Discovery Layer
Dynamic Multipathing
Preventing Multipathing for a Device
Managing DMP
Controlling Automatic Restore Processes
VxVM Daemons
vxconfigd – The VxVM configuration daemon maintains disk and group configurations, communicates configuration changes to the kernel, and modifies configuration information stored on disks. When a system is booted, the command “vxdctl enable” is automatically executed to start vxconfigd. VxVM reads the /etc/vx/volboot file to determine disk ownership and automatically imports disk groups owned by the host.
vxiod – The VxVM I/O daemon provides extended I/O operations without blocking calling processes. Several vxiod daemons are usually started at boot time, and they continue to run at all times.
vxrelocd – is the hot-relocation daemon that monitors events that affect data redundancy.
VxVM Configuration Database
- Contains all disk, volume, plex, and subdisk configuration records
- Is stored in the private region of a VxVM disk
- Is replicated to maintain a copy on multiple disks in a disk group
- Is updated by the vxconfigd process
Displaying VxVM Configuration Database Information
vxdg list diskgroup
Displaying Disk Header Information
vxdisk –g diskgroup list disk_name
VxVM Disk Types and Formats
- auto:cdcdisk
- auto:simple
- auto:sliced
- auto:none
simple – Public and private regions are contiguous on the same partition
sliced – Public and private regions are on separate partitions.
nopriv – No private region.
VxVM Configuration Daemon
vxconfigd:
- Maintains the configuration database
- Synchronizes changes between multiple requests, based on a database transaction model:
* All utilities make changes through vxconfigd
* Utilities identify resources needed at the start of the transaction.
* Transactions are serialized, as needed.
* Changes are reflected in all copies immediately
- Does not interfere with access to data on disk
- Must be running for changes to be made to the configuration database.
If vxconfigd is not running, VxVM operates, but configuration changes are not allowed and queries of the database are not possible.
- vxconfigd reads the kernel log to determine current states of VxVM components and updates the configuration database.
- Kernel logs are updated even if vxconfigd is not running. For example, upon startup, vxconfigd reads the kernel log and determines that a volume needs to be resynchronized.
- vxconfigd modes:
enabled – normal operating state
disabled – Most operations not allowed
booted – Part of the normal system startup while acquiring the boot disk group
The vxdctl Command
Use vxdctl to control vxconfigd
vxdctl mode – Displays vxconfigd status
vxdctl enable – Enables vxconfigd
vxdctl disable – Disables vxconfigd
vxdctl stop – Stops vxconfigd
vxdctl –k stop – Sends a kill -9
vxconfigd – Starts vxconfigd
vxdctl license – Checks licensing
vxdctl support – Displays version information
The volboot File
/etc/vx/volboot contains:
- The host ID (this is really the hostname) that is used by VxVM to establish ownership of physical disks
- The values of defaultdg and bootdg if these values were set by the user.
Caution: Do not edit volboot, or its checksum is invalidated.
To display the contents of volboot:
vxdctl list
To change the host ID in volboot:
vxdctl hosted new_hostid
vxdctl enable
To re-create volboot:
vxdctl init hosted
Device Discovery Layer (DDL)
Device discovery is the process of locating and identifying disks attached to a host
Prior to VxVM 3.2, device discovery occurred at boot time. With VxVM 3.2 and later, device discovery occurs automatically whenever you add a new disk array.
Adding Disk Array Support
To add support for a new type of disk array, add vendor-supplied libraries.
Then scan for new devices:
vxdctl enable
This invokes vxconfigd to scan for all disk devices, updates the device list, and reconfigures DMP
Partial Device Discovery
Discover newly added devices previously unknown to VxVM:
vxdisk scandisks new
Discover fabric devices:
vxdisk scandisks fabric
Scan for the specific devices:
vxdisk scandisks device=c1t1d0,c2t2d0
Scan for all devices except those that are listed:
vxdisk scandisks !device=c1t1d0,c2t2d0
Scan for devices that are connected to logical or physical controllers:
vxdisk scandisks ctlr=c1,c2
Discover devices that are connected to the specified physical controller:
vxdisk scandisks pctlr=/pci@1f,4000/scsi@3/
Administering DDL
To add/remove/list support for disk arrays:
vxddladm listsupport
vxddladm excludearray libname=library
vxddladm excludearray vid=ACME pid=X1
vxddladm includearray libname=library
vxddladm includearray vid=ACME pid=X1
vxddladm listexclude
To add/remove/list support for JBODs:
vxddladm listjbod
vxddladm addjbod vid=vendor_ID pid=prod_ID
vxddladm rmjbod vid=vendor_ID pid=prod_ID
To add a foreign device:
vxddladm addforeign blockdir=path chardir=path
Dynamic Multipathing (DMP)
Dynamic multipathing is a method that VxVM uses to manage two or more hardware paths directing I/O to a single drive. VxVM arbitrarily selects one of the two names and creates a single device entry, and then transfers data across both paths to spread the I/O.
VxVM detects multipath systems by using the Universal World-Wide-Device Identifiers (WWD IDs) and manages multipath targets, such as disk arrays, which define polices for using more than one path.
Types of Multiported Arrays
A multiported disk array is an array that can be connected to host systems through multiple paths. The two basic types of multiported disk arrays are:
1) active/active disk arrays
2) active/passive disk arrays
Preventing DMP for a Device
If an array cannot support DMP, you can prevent multipathing for the device by using vxdiskadm:
“Prevent multipathing/Suppress devices from VxVM’s view”
Warning: If you do not prevent DMP for unsupported arrays:
- Commands like “vxdisk list” show duplicate sets of disks as ONLINE, even through only one path is used for I/O.
- Disk failures can be represented incorrectly.
- The option “Suppress all paths through a controller from VxVM’s view” continues to allow the I/O to use both paths internally. After a reboot, “vxdisk list” does not show the suppressed disks.
- “Prevent multipathing of all disks on a controller by VxVM” does not allow the I/O to use internal multipathing. The “vxdisk list” command shows all disks as ONLINE. This option has no effect on arrays that are performing dynamic multipathing or that do not support VxVM DMP.
Listing Controllers
vxdmpadm listctlr all
Displaying Paths
vxdmpadm getsubpaths ctlr=controller_name
To display paths connected to a LUN:
vxdmpadm getsubpaths dmpnodename=node_name
Displaying DMP Nodes
vxdmpadm getdmpnode nodename=c3t2d1
Disabling I/O to a controller
VEA:
Select Actions -> Disable/Enable
CLI:
To disable I/O to a particular controller:
vxdmpadm disable ctlr=ctlr_name
To disable I/O to a particular enclosure:
vxdmpadm disable enclosure=enc0
To reenable I/O to a particular controller:
vxdmpadm enable ctlr=ctlr_name
Displaying I/O Statistics for Paths
Enable the gathering of statistics:
vxdmpadm iostat start [memory=size]
Reset the I/O counters to zero:
vxdmpadm iostat reset
Display the accumulated statistics for all paths:
vxdmpadm iostat show all
Setting I/O Policies and Path Attributes
To change the I/O policy for balancing the I/O load across multiple paths to a disk array or enclosure:
vxdmpadm setattr enclosure enc_name iopolicy=policy
Policies:
adaptive – automatically determines the paths that have the least delay
balanced – (default) takes the track cache into consideration when balancing I/O across paths.
minimumq – sends I/O on paths that have the minimum number of I/O requests in the queue.
priority – assigns the path with the highest load carrying capacity as the priority path.
round-robin – sets a simple round-robin policy for I/O
singleactive – channels I/O through the single active path
To set path attributes for a disk array or enclosure:
vxdmpadm setattr path path_name pathtype=type
Type:
active – changes a standby path to active
nomanual – restores the original primary or secondary attributes of a path
nopreferred – restores the normal priority of the path
preferred [priority=N] – specifies a preferred path and optionally assignes a priority to it.
primary – assignes a primary path for an Active/Passive disk array
secondary - assignes a secondary path for an Active/Passive disk array
standby – marks a path as not available for normal I/O scheduling.
Managing Enclosures
CLI:
To display attributes of all enclosures:
vxdmpadm listenclosure all
To change the name of an enclosure:
vxdmpadm setattr enclosure orig_name name=new_name
VEA:
Highlight an enclosure, and select Actions -> Rename Enclosure.
Controlling the Restore Daemon
The DMP restore daemon is an internal process that monitors DMP paths. To check status:
vxdmpadm stat restored.
To change daemon properties:
Stop the DMP restore Daemon:
vxdmpadm stop restore
Restart the daemon with new attributes:
vxdmpadm start restore interval=400 policy=check_all

Custom Search