HP Veritas Volume Manager 5.0 -UX 11i v3 manual Multipathed disk arrays, Device discovery

Page 21

22Understanding Veritas Volume Manager

How VxVM handles storage management

Figure 1-2

How VxVM presents the disks in a disk array as volumes to the

 

operating system

Operating system

Veritas Volume Manager

Volumes

Physical disks

 

 

 

Disk 1

Disk 2

Disk 3

Disk 4

Multipathed disk arrays

Some disk arrays provide multiple ports to access their disk devices. These ports, coupled with the host bus adaptor (HBA) controller and any data bus or I/O processor local to the array, make up multiple hardware paths to access the disk devices. Such disk arrays are called multipathed disk arrays. This type of disk array can be connected to host systems in many different configurations, (such as multiple ports connected to different controllers on a single host, chaining of the ports through a single controller on a host, or ports connected to different hosts simultaneously).

HP-UX 11i v3 provides its own native multipathing solution in addition to the Dynamic Multipathing (DMP) feature that is used by VxVM. These two multipathing solutions can coexist on the same system. For more information, see “DMP coexistence with HP-UX native multipathing” on page 130.

Device discovery

Device discovery is the term used to describe the process of discovering the disks that are attached to a host. This feature is important for DMP because it needs to support a growing number of disk arrays from a number of vendors. In conjunction with the ability to discover the devices attached to a host, the

Image 21
Contents Veritas Volume Manager Administrator’s Guide Legal Notices Page Contents VxVM root disk volume restrictions Using vxdiskadd to place a disk under control of VxVMBooting root volumes Setting up a VxVM root disk and mirror119 Taking a disk offline 118133 136167 185207 215 Setting default values for vxassist 241Displaying subdisk information 216 217252 274275 288 Moving volumes from a VM disk 290289 290356 Chapter Creating and administering volume sets387 386388 390441 434463 Setup tasks after installation 511507 512521 531 Understanding Veritas Volume Manager Veritas Enterprise Administrator User’s Guide How data is stored VxVM and the operating systemPhysical objects-physical disks How VxVM handles storage managementDisk arrays Multipathed disk arrays Device discoveryOperating system Enclosure-based naming Fibre Channel hub or switch C2t99d0 Provide redundant loop accessVirtual objects Combining virtual objects in VxVMVirtual objects in VxVM include the following Connection between objects in VxVM VM disks Disk groupsSubdisks Plexes Volumes How VxVM handles storage management Disk01-01 vol06-01 Volume layouts in VxVM Implementation of non-layered volumesImplementation of layered volumes Layout methods Concatenation and spanningFollowing sections describe each layout method 12 Example of concatenation Data Disk01-01 +1 n+2 Example of spanning DataStriping RAID-0 Su1 Su2 Su3 Devname3 Devname2 Striping plus mirroring mirrored-stripe or RAID-0+1 Mirroring RAID-1Mirroring plus striping striped-mirror, RAID-1+0 or RAID-10 17 Mirrored-stripe volume laid out on six disksColumn Mirror Striped plex Mirror volumes You need a full license to use this featureRAID-5 striping with parity Traditional RAID-5 arrays Data ParityVeritas Volume Manager RAID-5 arrays Left-symmetric layout 22 Veritas Volume Manager RAID-5 array StripeUnderstanding Veritas Volume Manager RAID-5 logging Layered volumes Example of a striped-mirror layered volume Understanding Veritas Volume Manager How online relayout works Online relayoutThree columns of length 5L/3 Striped volume Limitations of online relayout Transformations and volume length Transformation characteristicsVolume resynchronization Dirty flagsResynchronization process Dirty region logs Dirty region loggingSequential DRL Log subdisks and plexesData volume configuration SmartSync recovery acceleratorRedo log volume configuration Volume snapshotsOriginal Comparison of snapshot features Space than original VolumeUse on creation Requires less storage FastResync Non-persistent FastResync FastResync enhancementsDCO volume versioning Persistent FastResyncHow non-persistent FastResync works with snapshots Version 20 DCO volume layout Version 0 DCO volume layoutHow persistent FastResync works with snapshots Where the size of each map in bytes isDCO FastResync Effect of growing a volume on the FastResync map FastResync limitations Hot-relocation Volume setsVolume sets Disk devices Administering disksDisk device naming in VxVM Operating system-based namingThere are two different methods of naming disk devices # vxdisk path egrep diskname Private and public disk regions To boot the system.Typically, most disks on a system are Configures disk access records for them automaticallyConfigured as this disk type. However, it is not a suitable Format for boot, root or swap disks, for mirrors orFollowing command scans for the devices c1t1d0 and c2t2d0 Discovering and configuring newly added disk devicesPartial device discovery Next example discovers fabric devicesDiscovering disks and dynamically adding disk arrays Disk categoriesFor more information, see the vxdisk1M manual Adding support for a new disk array Third-party driver coexistenceEnabling discovery of new devices Removing support for a disk arrayListing details of supported disk arrays Administering the Device Discovery Layer# vxddladm listsupport all # vxddladm listsupport libname=libraryname.slExcluding support for a disk array library Re-including support for an excluded disk array libraryListing excluded disk arrays Adding unsupported disk arrays to the Disks category Listing supported disks in the Disks category# vxddladm addjbod vid=SEAGATE pid=ST318404LSUN18G Length=serialnolength policy=ap# vxdmpadm listenclosure all # vxdisk listRemoving disks from the Disks category Adding foreign devices# vxddladm rmjbod vid=SEAGATE See Migrating between DMP and HP-UX native multipathing on Placing disks under VxVM controlDefault Mode Format of output from VxVM commandChanging the disk-naming scheme Legacy# vxdmpadm getlungroup dmpnodename=disk25 VxVM vxdmpadm Error V-5-1-10910 Invalid da-nameRestart the VxVM configuration demon Regenerating persistent device namesThis regenerates the persistent name database Changing device naming for TPD-controlled enclosures # vxdmpadm setattr enclosure enclosure tpdmode=nativepseudo# vxdmpadm getsubpaths dmpnodename=enclosure-basedname # vxconfigd -kr reset Persistent simple or nopriv disks in the boot disk groupInstalling and formatting disks Persistent simple or nopriv disks in non-boot disk groupsRe-import the disk group using the following command Displaying and changing default disk layout attributes Add or initialize disks Menu VolumeManager/Disk/AddDisksAdding a disk to VxVM C3t0d0 c3t1d0 c3t2d0 c3t3d0 Use default disk names for the disks? y,n,q,? default y Continue operation? y,n,q,? default y yExclude disks from hot-relocation use? y,n,q,? default n n Add site tag to disks? y,n,q,? default nEnter the desired format cdsdisk,hpdisk,q,? default cdsdisk Continue with operation? y,n,q,? default y yEnter desired private region length privlen,q,? default Following disksAdd or initialize other disks? y,n,q,? default n Using vxdiskadd to place a disk under control of VxVMReinitializing a disk Vxdiskadm then proceeds to add the disksRootability Root disk mirrors VxVM root disk volume restrictionsBooting root volumes Setting up a VxVM root disk and mirror# /etc/vx/bin/vxcplvmroot -b c0t4d0 # /etc/vx/bin/vxcplvmroot -m c1t1d0 -R 30 -v -b c0t4d0 # /etc/vx/bin/vxcplvmroot -R 30 -v -b c0t4d0Creating an LVM root disk from a VxVM root disk Adding persistent dump volumes to a VxVM rootable system Adding swap volumes to a VxVM rootable systemView the changed swap configuration Display the initial crash dump configurationYou can now remove the volume if required Removing a persistent dump volume# crashconf -ds /dev/vx/dsk/bootdg/dumpvol Dynamic LUN expansion109 Removing disks # vxvol -g diskgroup stop volume1 volume2Remove another disk? y,n,q,? default n Continue with operation? y,n,q,? default yRemoving a disk with subdisks VxVM Info V-5-2-268 Removal of disk mydg01 is completeRemoving a disk from VxVM control # /usr/lib/vxvm/bin/vxdiskunsetup c#t#d#Removing and replacing disks Removing a disk with no subdisksAre you sure you want do this? y,n,q,? default n To replace a disk# vxassist move mkting !mydg02 Removing and replacing disks Following devices are available as replacements c0t1d0Replacing a failed or removed disk Following devices are available as replacementsReplace another disk? y,n,q,? default n Select a disk device to enable address,list,q,? c0t2d0 Then run the following command on the master nodeEnabling a disk # vxreattach -r accesnameEnable another device? y,n,q,? default n Disable another device? y,n,q,? default nTaking a disk offline You would use the following command to rename the disk Renaming a diskReserving disks Displaying disk information See the vxedit1M manual page for more informationVxVM returns a display similar to the following List disk information Menu VolumeManager/Disk/ListDisk Enter disk device or all address,all,q,? default allDisplaying disk information with vxdiskadm Setting the Pfto values Controlling Powerfail TimeoutTo set the Pfto value on a disk, use the following command Displaying the Pfto valuesEnabling or disabling Pfto For example, to disable Pfto on the disk c5t0d6Controlling Powerfail Timeout How DMP works Administering dynamic multipathing DMPHow DMP works Enc00 Path failover mechanism How DMP monitors I/O on pathsThrottling Load balancingDMP coexistence with HP-UX native multipathing Use the following commands to initiate the migrationMigrating between DMP and HP-UX native multipathing # vxvol -g diskgroup stopall# vxvol -g diskgroup startall Restart all the volumes in each disk groupUnder the new naming scheme as DMP in a clustered environmentDisabling and enabling multipathing for specific devices Disabling multipathing and making devices invisible to VxVMEnabling or disabling controllers with shared disk groups Enabling multipathing and making devices visible to VxVM 135 Administering dynamic multipathing DMP Typical output from the vxdisk list command is as follows Displaying DMP database informationDisplaying the paths to a disk Disabled Log Disabled ConfigDisabled Lockrgn C1t0d3 state=enabled Type=secondaryAdministering DMP using vxdmpadm Retrieving information about a DMP node# vxdmpadm getdmpnode nodename=c3t2d1 # vxdmpadm getdmpnode enclosure=enc0 Displaying the members of a LUN group# vxdmpadm getlungroup dmpnodename=c11t0d10 # vxdmpadm getsubpaths dmpnodename=c2t66d0# vxdmpadm listctlr all Displaying information about controllersFollowing is example output from this command Displaying information about enclosuresDisplaying information about array ports # vxdmpadm getsubpaths tpdnodename=emcpower10 Displaying information about TPD-controlled devices# vxdmpadm gettpdnode nodename=c7t0d10 Examples of using the vxdmpadm iostat command To reset the I/O counters to zero, use this commandGathering and displaying I/O statistics # vxdmpadm iostat show pathname=c3t115d0 # vxdmpadm iostat start memory=4096# vxdmpadm iostat show dmpnodename=c0t0d0 # vxdmpadm iostat show enclosure=Disk# vxdmpadm setattr path c2t10d0 pathtype=active Setting the attributes of the paths to an enclosure# vxdmpadm setattr path c3t10d0 pathtype=nomanual # vxdmpadm setattr path c1t20d0 pathtype=nopreferredSpecifying the I/O policy Displaying the I/O policyAdaptive Following policies may be set# vxdmpadm setattr enclosure enc1 iopolicy=adaptive Adaptiveminq048 # vxdmpadm setattr enclosure Disk iopolicy=minimumq This is the default I/O policy for Active/Active A/A arrays# vxdmpadm setattr arrayname Sena iopolicy=priority # vxdmpadm setattr arraytype A/A iopolicy=round-robinExample of applying load balancing in a SAN Default setting for this attribute is useallpaths=no# vxdmpadm setattr arrayname Disk iopolicy=singleactive # vxdisk list c3t2d15DMP statistics are now reset # dd if=/dev/vx/rdsk/mydg/myvol1 of=/dev/null# vxdmpadm getattr enclosure ENC0 iopolicy # vxdmpadm -c-fdisable ctlr=ctlrname # vxdmpadm -c-fdisable path=pathnameDisabling I/O for paths, controllers or array ports # vxdmpadm setattr enclosure ENC0 iopolicy=singleactive# vxdmpadm enable ctlr=ctlrname # vxdmpadm enable path=pathnameEnabling I/O for paths, controllers or array ports Upgrading disk controller firmwareRenaming an enclosure Re-enable the plex associated with the deviceStop I/O to all disks through one controller of the HBA For the other controller on the HBA, enterConfiguring the response to I/O failures # vxdmpadm getattr enclosure enc0 recoveryoption# vxdmpadm setattr \ # vxdmpadm setattr arraytype A/A recoveryoption=default Configuring the I/O throttling mechanism# vxdmpadm setattr enclosure enc0 recoveryoption=nothrottle Displaying recoveryoption values # vxdmpadm getattr enclosure HDS9500-ALUA0 recoveryoptionHDS9500-ALUA0 Error-Retry # vxdmpadm start restore interval=seconds policy=checkall Configuring DMP path restoration policiesStopping the DMP path restoration thread Displaying the status of the DMP path restoration threadThis produces output such as the following Configuring array policy modules Displaying information about the DMP error-handling threadTo add and configure an APM, use the following command One daemon should be shown as running# vxdmpadm -r cfgapm modulename Administering DMP using vxdmpadm Creating and administering disk groups Creating and administering disk groups Block special device corresponding to this volume is Specifying a disk group to commandsSystem-wide reserved disk groups To nodgDisplaying the system-wide boot disk group Rules for determining the default disk group# vxdg bootdg See the vxdg1M manual page for more information# vxdg list Displaying disk group information# vxdg list diskgroup # vxdisk -s list devicenameCreating a disk group Displaying free space in a disk groupFollowing is example output # vxdiskadd c1t0d0 Adding a disk to a disk group# vxdg init mktdg mktdg01=c1t0d0 # vxdg -g diskgroup set cds=onoff# vxdiskunsetup c1t0d0 # vxdiskunsetup devicenameRemoving a disk from a disk group # vxdg -g diskgroup rmdisk disknameDeporting a disk group Importing a disk group Newdg# vxdisk -s list Select another disk group? y,n,q,? default n Select disk group to import group,list,q,? default listHandling disks with duplicated identifiers VxVM Info V-5-2-374 The import of newdg was successful# vxdisk -f-g diskgroup updateudid disk Option to the vxdg import command, as shown in this# vxdisk updateudid c2t66d0 c2t67d0 Writing a new Udid to a disk# vxdisk -g diskgroup settag tagname disk # vxdg -o useclonedev=on -o updateid import mydg# vxdisk settag mytaggeddisks c2t66d0 c2t67d0 # vxdisk listtagSample cases of operations on cloned disks Enabling configuration database copies on tagged disks# vxdg -q listmeta diskgroup # vxdg -o useclonedev=on -o tag=mytaggeddisks import mydg# vxdg -g mydg set tagmeta=on tag=t1 nconfig=all nlog=all Importing cloned disks without tags# vxdisk -o alldgs list Symmir command is used to split off the BCV device To import only the cloned disks into the mydg disk group# /usr/symcli/bin/symmir -g mydg split DEV001 Importing cloned disks with tags # vxdg -n newdg -o useclonedev=on -o updateid import mydgState of the cloned disk is now shown as online clonedisk Disks are tagged as follows# vxdisk set EMC08 clone=off # vxdisk -o alldgs list Renaming a disk group This command results in output such as the followingMoving disks between disk groups Dgid 774226267.1025.tweety# vxdg -tC -n newdg import diskgroup Moving disk groups between systems # vxrecover -g diskgroup -sbTo clear the locks during import, use the following command Handling errors when importing disks# vxdisk clearimport devicename # vxdg -C import diskgroupFollowing error message indicates a recoverable error Reserving minor numbers for disk groups# vxdg -f import diskgroup # vxprint -g mydg reminor # xvdg init newdg minor=30000 c1d0t0 c1t1d0# vxdg -g diskgroup set maxdev=4079 Compatibility of disk groups between platformsExample of a serial split brain condition in a cluster Handling conflicting configuration copies191 Typical arrangement of a 2-node campus cluster Expected a = Expected B = AutomaticallyImported on host Y # vxsplitlines -g newdg Correcting conflicting configuration informationReorganizing the contents of disk groups Reorganizing the contents of disk groups 197 Disk group join operation Limitations of disk group split and join Listing objects potentially affected by a move Moving DCO volumes between disk groups201 Split Snapshot Moving objects between disk groups # vxdg -o expand move mydg rootdg mydg01 # vxprintFollowing commands would also achieve the same result Splitting disk groups# vxdg -o expand split rootdg mydg rootdg07 rootdg08 # vxdg -o overrideverify join sourcedg targetdg Joining disk groupsDisabling a disk group Following command joins disk group mydg to rootdgMydg Mydg05 C1t96d0 Mydg06 C1t98d0Destroying a disk group Recovering a destroyed disk groupUpgrading a disk group Use the disk group ID to import the disk groupUpgrading a disk group Features supported by disk group versions To list the version of a disk group, use this command # vxdg upgrade dgname# vxdg list dgname # vxdg -T 120 init newdg newdg01=c0t3d0 Managing the configuration daemon in VxVMUsing vxnotify to monitor configuration changes Backing up and restoring disk group configuration data# vxnotify -f # vxnotify -sUsing vxnotify to monitor configuration changes # vxmake -g mydg sd mydg02-01 mydg02,0,8000 Creating subdisksDisplaying subdisk information This command provides the following output# vxprint -st # vxprint -g diskgroup -l subdiskMoving subdisks Splitting subdisks# vxsd -g mydg mv mydg03-01 mydg12-01 mydg12-02 Joining subdisks Associating subdisks with plexes# vxmake -g diskgroup plex plex sd=subdisk # vxsd -g mydg -l 4096b assoc vol10-01 mydg15-01 # vxsd -g mydg assoc home-1 mydg02-01 mydg02-00 mydg02-01# vxsd -g mydg -l 1 assoc vol02-01 mydg11-01 # vxsd -g diskgroup assoc plex subdisk10 ... subdiskMN-1Associating log subdisks # vxassist -g diskgroup addlog volume disk# vxsd -g diskgroup aslog plex subdisk # vxsd -g mydg aslog vol01-02 mydg02-01Dissociating subdisks from plexes To remove a subdisk, use the following commandRemoving subdisks Changing subdisk attributes# vxedit -g mydg set putil0=DO-NOT-USE mydg02-01 # vxedit -g mydg set comment=subdisk comment mydg02-01# vxmake -g mydg plex vol01-02 sd=mydg02-01,mydg02-02 Creating plexesCreating a striped plex Displaying plex informationPlex states Clean plex state Active plex stateDcosnp plex state Iofail plex state Empty plex stateLOG plex state Offline plex stateStale plex state Snaptmp plex stateTemp plex state Temprm plex statePlex condition flags Enabled plex kernel state Disabled plex kernel stateAttaching and associating plexes Plex kernel statesTaking plexes offline # vxmend -g diskgroup off plex# vxmend -g mydg off vol01-02 vol02-02 Reattaching plexes Detaching plexes# vxmend -g diskgroup fix clean plex Start the volume using the following command# vxvol -g diskgroup start volume Moving plexes# vxplex -g diskgroup cp volume newplex Copying volumes to plexesDissociating and removing plexes # vxplex -g diskgroup -o rm dis plex# vxedit -g diskgroup set attribute=value ... plex Changing plex attributes# vxedit -g mydg set comment=plex comment tutil2=u vol01-02 # vxedit -g mydg set putil0=DO-NOT-USE vol01-02Creating volumes RAID-5 Types of volume layoutsMirror and concatenated-mirror volumes Supported volume logs and mapsAdvanced approach Creating a volumeAssisted approach Using vxassistVxassist # vxassist options make volume length attributesFollowing is a sample vxassist defaults file Setting default values for vxassistDisk group alignment constraints on volumes Discovering the maximum size of a volume# vxassist -g diskgroup maxsize layout=layout attributes # vxassist -g dgrp maxsize layout=raid5 nlog=2# vxassist -b -g diskgroup make volume length Creating a volume on any disk# vxassist -b make voldefault 10g # vxprint -g diskgroup -G -F %alignCreating a volume on specific disks # vxassist -b -g mydg make volspec 5g mydg03 mydg04# vxassist -b -g mydg make volspec 5g ctlrc1 !targetc1t5 Specifying ordered allocation of storage to volumes Mydg01 mydg02 mydg03 mydg04 mydg05 mydg06 mydg07 mydg08 Stripe volume Volume across controllers Creating a mirrored-concatenated volume Creating a mirrored volumeCreating a concatenated-mirror volume # vxassist -b -g mydg make volmir 5g layout=mirrorCreating a volume with a version 0 DCO volume # vxdg -T 90 upgrade diskgroup # vxvol -g diskgroup set logtype=drldrlseq volumeFor more information, see Upgrading a disk group on Creating a volume with a version 20 DCO volume Creating a volume with dirty region logging enabled# vxdg upgrade diskgroup Creating a striped volume # vxassist -b -g diskgroup make volume length layout=stripe# vxassist -b -g mydg make volzebra 10g layout=stripe Creating a striped-mirror volume Creating a mirrored-stripe volumeMirroring across targets, controllers or enclosures # vxassist -b -g mydg make volraid 10g layout=raid5 nlog=2 Creating a RAID-5 volumeCreating tagged volumes # vxassist -g diskgroup listtag volume# vxassist -g diskgroup list tag=tagname volume Creating a volume using vxmake # vxmake -g diskgroup -d descriptionfile Creating a volume using a vxmake description fileInitializing and starting a volume # vxassist -b -g diskgroup make volume length layout=mirrorMydg04-021/8000,mydg04-031/16000 # vxvol -g diskgroup init enable volume Initializing and starting a volume created using vxmake# vxvol -g diskgroup init active volume # vxvol -g diskgroup init zero volumeAccessing a volume Administering volumes Displaying volume information Vxprint command can also be applied to a single disk groupThis is example output from this command Active volume state Volume statesClean volume state Empty volume stateInvalid volume state Volume kernel statesNeedsync volume state Replay volume stateDisabled volume kernel state Detached volume kernel stateEnabled volume kernel state Monitoring and controlling tasksVxtask operations Managing tasks with vxtaskUsing the vxtask command Putting a volume in maintenance mode Stopping a volumeStarting a volume Adding a mirror to a volumeTo start all Disabled volumes, enter Mirroring volumes on a VM disk Mirroring all volumes# /etc/vx/bin/vxmirror -g diskgroup -a # /etc/vx/bin/vxmirror -d yes# vxassist -gdiskgroup remove mirror volume Mirror volumes on another disk? y,n,q,? default nRemoving a mirror At the following prompt, press Return to make the mirrorAdding logs and maps to volumes Preparing a volume for DRL and instant snapshots Specifying storage for version 20 DCO plexes # DCONAME=‘vxprint -g diskgroup -F%dconame volume‘ Using a DCO and DCO volume with a RAID-5 volumeDetermining the DCO version number # vxprint -g diskgroup -F%version $DCONAMEDetermining if DRL logging is active on a volume Determining if DRL is enabled on a volumeThis command returns on if DRL logging is enabled Disabling and re-enabling DRLUpgrading existing volumes to use version 20 DCOs To re-enable DRL on a volume, enter this commandTo re-enable sequential DRL on a volume, enter Use the following command on the volume to upgrade it Adding traditional DRL logging to a mirrored volume # vxassist -g mydg addlog volume logtype=drlseq nlog=n To remove a DRL log, use the vxassist command as followsRemoving a traditional DRL log # vxassist -g mydg addlog vol03 logtype=drl# vxassist -b -g diskgroup addlog volume loglen=length Adding a RAID-5 log using vxplexAdding a RAID-5 log # vxassist -g mydg addlog volraid# vxprint -g diskgroup -ht volume Resizing a volume# vxassist -g diskgroup maxgrow volume Removing a RAID-5 logOnline JFS Full Base JFS Lite Resizing volumes using vxresizeVxFS Mounted File System Unmounted File SystemResizing volumes using vxassist Extending to a given lengthExtending by a given length Resizing volumes using vxvol Shrinking to a given lengthShrinking by a given length # vxassist -g diskgroup removetag volume tagname Setting tags on volumesChanging the read policy for mirrored volumes Removing a volume Moving volumes from a VM diskTo set the read policy to select, use the following command Move volumes from another disk? y,n,q,? default n To move volumes from a diskVxVM vxevac Info VxVM Info V-5-2-188 Evacuation of disk mydg02 is complete# vxvol -g diskgroup set fastresync=on volume Enabling FastResync on a volume# vxprint -g diskgroup -F%fastresync volume Checking whether FastResync is enabled on a volume# vxprint -g diskgroup -F%hasdcolog volume Disabling FastResync# vxassist -g mydg relayout vol02 layout=stripe Performing online relayoutPermitted relayout transformations Relayout to From raid5 Concat Supported relayout transformations for RAID-5 volumesRelayout to From mirror-concat Concat Mirror-concat Mirror-stripeRelayout to From mirror-stripe Concat Layered striped-mirror volumesSupported relayout transformations for unmirrored stripe Relayout to From stripe or stripe-mirror ConcatSpecifying a plex for relayout Specifying a non-default layoutTagging a relayout operation # vxassist -g fsgrp relayout vol04 layout=raid5 ncol=4To resume the operation, use the vxtask command Viewing the status of a relayoutControlling the progress of a relayout # vxrelayout -g mydg -o bg,slow=1000,iosize=10m start vol04 Converting between layered and non-layered volumes# vxrelayout -g mydg -o bg reverse vol04 # vxassist -g mydg relayout vol1 ncol=5# vxassist -g mydg convert vol1 layout=mirror-stripe Converting between layered and non-layered volumes Administering volume snapshots Administering volume snapshots Traditional third-mirror break-off snapshots Independent Volume Vxassist snapclearTraditional third-mirror break-off snapshots Full-sized instant snapshots 308 Administering volume snapshots Cycle Start Vxsnap make Vxsnap refresh Vxsnap prepare Space-optimized instant snapshotsEmulation of third-mirror break-off snapshots Linked break-off snapshot volumes Cascaded snapshots Cascaded snapshotsCreating a snapshot of a snapshot Creating a snapshot of a snapshot Create instant snapshot S2 of S1 Vxsnap make source=S1 Vxsnap dis S2 Creating multiple snapshots Restoring the original volume from a snapshotRestoring the original volume from a snapshot Creating instant snapshots Creating instant snapshots Preparing to create instant and break-off snapshots Creating a shared cache object For example to start the cache object, cobjmydg # LEN=‘vxprint -g diskgroup -F%len volume‘# vxcache -g mydg start cobjmydg # RSZ=‘vxprint -g diskgroup -F%regionsz $DCONAME‘Creating and managing space-optimized instant snapshots Creating instant snapshots # fsck -F vxfs /dev/vx/rdsk/diskgroup/snapshot # vxsnap -g mydg make source=myvol/snapvol=snap1myvol Creating and managing full-sized instant snapshots# vxsnap -g diskgroup syncwait snapvol # vxsnap -g mydg syncwait snap2myvol# vxprint -gdiskgroup -F%incompletesnapvol # vxsnap -g mydg addmir vol1 nmirror=2 alloc=mydg10,mydg11 Creating and managing third-mirror break-off snapshots# vxsnap -g mydg snapwait vol1 nmirror=2 # vxsnap -g diskgroup -b addmir volume mirvol=snapvol \ Creating and managing linked break-off snapshot volumesMirdg=snapdg Creating multiple instant snapshots Reattach the snapshot volume with the original volume. See# vxsnap -g diskgroup make \ # vxsnap -g diskgroup make source=vol1/snapvol=snapvol1 \Creating instant snapshots of volume sets # vxvset -g mydg list vset1# vxvset -g mydg list snapvset1 Svol0 204800 Svol1 409600Svol2 614400 Adding snapshot mirrors to a volume Removing a snapshot mirror# vxsnap -g mydg rmmir vol1 Adding a snapshot to a cascaded snapshot hierarchy Removing a linked break-off snapshot volumeRefreshing an instant snapshot # vxsnap -g mydg rmmir vol1 mirvol=prepsnap mirdg=mysnapdg# vxsnap -g mydg reattach snapmyvol source=myvol nmirror=1 Reattaching an instant snapshot# vxsnap -g mydg snapwait myvol nmirror=1 Reattaching a linked break-off snapshot volume# vxsnap -g mydg restore myvol source=snap3myvol Restoring a volume from an instant snapshotDissociating an instant snapshot # vxsnap -g snapdg snapwait myvol mirvol=prepsnapSplitting an instant snapshot hierarchy Removing an instant snapshot# vxsnap -g mydg dis snap2myvol # vxedit -g mydg -r rm snap2myvol# vxsnap -g mydg split snap2myvol Displaying instant snapshot information# vxsnap -g diskgroup print vol # vxsnap -g mydg print# vxsnap -g dg -vx list # vxsnap -g diskgroup -l -v -x list volVxsnap -g diskgroup syncresume \ Controlling instant snapshot synchronizationVxsnap -b -g diskgroup syncstart \ Vxsnap -g diskgroup syncstop vol volsetListing the snapshots created on a cache Improving the performance of snapshot synchronization# vxcache -g diskgroup listvol cacheobject # vxcache -g mydg set highwatermark=60 cobjmydg Tuning the autogrow attributes of a cacheFinally, remove the cache object and its cache volume Growing and shrinking a cacheRemoving a cache Creating traditional third-mirror break-off snapshots # vxassist -b -g diskgroup snapstart nmirror=N volume # vxassist -g diskgroup snapwait volume# vxassist -g diskgroup snapstart voldef # vxassist -g diskgroup snapshot nmirror=N volume snapshot Create a snapshot volume using the following command# vxassist -g diskgroup snapshot voldef snapvol # vxedit -g diskgroup -rf rm snapshotConverting a plex into a snapshot plex Creating multiple snapshots Reattaching a snapshot volume# vxplex -g diskgroup convert state=SNAPDONE plex # vxassist -g diskgroup -o allvols snapshotAdding plexes to a snapshot volume # vxassist -g diskgroup -o allplexes snapback snapshot# vxassist -g diskgroup snapback nmirror=number snapshot Dissociating a snapshot volume # vxprint -g diskgroup -F%rid $DCOVOL# vxassist snapclear snapshot # vxassist snapprint volume Output from this command is shown in the following examplesDisplaying snapshot information # vxassist -g mydg snapprintAdding a version 0 DCO and DCO volume Specifying storage for version 0 DCO plexes Removing a version 0 DCO and DCO volume # vxdco -g diskgroup -o rm dis dcoobj# vxdco -g mydg dis myvoldco Reattaching a version 0 DCO and DCO volume For more information, see the vxdco1M manual# vxdco -g mydg att myvol myvoldco Adding a version 0 DCO and DCO volume Creating and administering volume sets Adding a volume to a volume set Creating a volume setStopping and starting volume sets Listing details of volume setsRaw device node access to component volumes Removing a volume from a volume set# vxvset -g diskgroup -f rmvol volset volume # vxvset -g mydg start set1 # vxvset -g mydg list set1Enabling raw device access when creating a volume set Displaying the raw device access settings for a volume set Controlling raw device access for an existing volume set# vxvset -g diskgroup -fset makedev=onoff vset # vxvset -g mydg set compvolaccess=read-write myvset2 # vxvset -g mydg set makedev=on myvset2# vxvset -g mydg set makedev=off myvset2 Raw device node access to component volumes Configuring off-host processing Example implementation of off-host processing Implementing off-host processing solutions# vxprint -g volumedg -F%instant volume Implementing off-host online backup# vxvol -g volumedg set fastresync=on volume # vxdg deport snapvoldg # vxdg import snapvoldg# fsck -F vxfs /dev/vx/rdsk/snapvoldg/snapvol # vxsnap -g volumedg snapwait volume mirvol=snapvol # vxprint -g volumedg -F%instantvolumeImplementing decision support 375 # mount -F vxfs /dev/vx/dsk/snapvoldg/snapvol \ mountpoint You can then resume the procedure from on Implementing off-host processing solutions Administering hot-relocation How hot-relocation works 381 Mydg05 Partial disk failure mail messages # vxrecover -b -g mydg home src# vxstat -g mydg -s -ff home-02 src-02 Sd mydg01-04 Sd mydg01-06 Sd mydg02-03 Sd mydg02-04Complete disk failure mail messages How space is chosen for relocationFailing disks mydg02 Configuring a system for hot-relocation Displaying spare disk information # vxdg -g diskgroup spareMydg mydg02 C0t2d0 658007 Mark another disk as a spare? y,n,q,? default n Marking a disk as a hot-relocation spare# vxedit -g mydg set spare=on mydg01 Removing a disk from use as a hot-relocation spare Where diskname is the disk media nameExcluding a disk from hot-relocation use Following confirmation is displayedMaking a disk available for hot-relocation use To use vxdiskadm to exclude a disk from hot-relocation use# vxedit -g diskgroup set nohotuse=off diskname Moving and unrelocating subdisks Configuring hot-relocation to use only spare disksSpare=only To root Subject Attempting VxVM relocation on host tealUnrelocate to a new disk y,n,q,? default n Moving and unrelocating subdisks using vxdiskadmStatus message is displayed at the end of the operation Enter the original disk name disk,list,q,?Moving and unrelocating subdisks using vxassist Moving and unrelocating subdisks using vxunreloc# vxassist -g mydg move home !mydg05 mydg02 Moving hot-relocated subdisks back to their original disk Moving hot-relocated subdisks back to a different diskForcing hot-relocated subdisks to accept different offsets Restarting vxunreloc after errors Examining which subdisks were hot-relocated from a disk# vxprint -g mydg -se sdorigdmname=mydg01 Modifying the behavior of hot-relocation Nohup vxrelocd -o slow=IOdelay root# nohup vxrelocd root Nohup vxrelocd root user1 user2Alternatively, you can use the following command See the vxrelocd1M manual page for more information# nohup /etc/vx/bin/vxrelocd root user1 user2 Administering cluster functionality Overview of cluster volume management 399 Example of a 4-node cluster Two types of disk groups are defined Private and shared disk groupsExclusivewrite ew Activation modes of shared disk groupsReadonly ro Sharedread srEnableactivation=true Defaultactivationmode=activation-mode Activation mode DescriptionActivation modes for shared disk groups Sharedwrite swConnectivity policy of shared disk groups Global detach policy Local detach policy Disk group failure policy Guidelines for choosing detach and failure policies Limitations of shared disk groups Effect of disk connectivity on cluster reconfigurationCluster reconfiguration Cluster initialization and configurationVarious reasons that may be given are shown in Table Vxclustadm utility# /etc/vx/bin/vxclustadm nodestate state out of cluster Reason user initiated stopReason Description Node abort messagesVolume reconfiguration Vxconfigd daemon recovery Vxconfigd daemon# hagrp -unfreeze group # hagrp -freeze groupNode shutdown Multiple host failover configurations Node abortCluster shutdown Failover Import lockWhere the reason can describe errors such as Corruption of disk group configuration# vxdctl -c mode Administering VxVM in cluster environmentsRequesting node status and discovering the master node See the vxdctl1M manual page for more informationExample output from this command is as follows Example output from this command is displayed hereDetermining if a disk is shareable Listing shared disk groups# vxdg -s init diskgroup diskname=devicename Creating a shared disk groupForcibly importing a disk group Importing disk groups as shared# vxdg -s import diskgroup # vxdg -s -f import diskgroupConverting a disk group from shared to private Setting the disk detach policy on a shared disk group Changing the activation mode on a shared disk groupDefault disk detach policy is global # vxdg -g diskgroup set activation=modeSetting exclusive open access to a volume by a node Creating volumes with exclusive open access by a node# vxdg -g diskgroup set dgfailpolicy=dgdisableleave # vxvol -g dskgrp set exclusive=on volmirThis command produces out put similar to the following This command produces output similar to the followingDisplaying the cluster protocol version Displaying the supported cluster protocol version rangeRecovering volumes in shared disk groups Upgrading the cluster protocol versionObtaining cluster performance statistics # vxstat -b Vol Vol1 2421 600000 99.0Administering VxVM in cluster environments Administering Sites and remote mirrors Site-consistent volume with two plexes at each of two sites Example of a two-site configuration with remote storage only Configuring sites for hosts and disks Configuring site-based allocation on a disk groupTo remove the site name from a host, use this command Configuring site consistency on a volume Configuring site consistency on a disk group# vxdg -g diskgroup set siteconsistent=on # vxdg -g diskgroup set siteconsistent=offSetting the siteread policy on a volume Site-based allocation of storage to volumesRAID-5 volumes in a site-consistent disk group # vxassist -g diskgroup make volume size mirror=site Command Description Examples of storage allocation using sitesMaking an existing disk group site consistent Turn on site consistency for each volume in the disk groupRegister a site record for each site with the disk group Turn on site consistency for the disk groupRecovery from simulated site failure Fire drill testing the configurationAutomatic site reattachment Simulating site failureFailure scenarios and recovery procedures # ps -afe# kill -9 PID Recovery from host failure Recovery from a loss of site connectivityRecovery from storage failure Failure scenario Recovery techniqueRecovery from site failure Failure scenarios and recovery procedures See the vxse1M manual About Storage ExpertHow Storage Expert works Before using Storage ExpertRunning Storage Expert One of the following keywords must be specifiedDiscovering what a rule does Displaying rule attributes and their default valuesRunning a rule # vxsestripes2 infoRule result types Setting rule attributesRecovery time Identifying configuration problems using Storage ExpertChecking minimum and maximum RAID-5 log sizes vxseraid5log2 Checking for non-mirrored RAID-5 logs vxseraid5log3Vxseraid5log1 Checking on disk config size vxsedg3 Checking disk group configuration copies and logs vxsedg2Disk groups Checking the version number of disk groups vxsedg4Checking volume redundancy vxseredundancy Checking states of plexes and volumes vxsevolplexChecking for non-imported disk groups vxsedg6 Checking the number of columns in RAID-5 volumes vxseraid5 Volumes needing recoveryDisk striping Hardware failures Disk sparing and relocation managementRootability System nameChecking the system name vxsehost Rule definitions and attributes See Running a rule on Rule DescriptionRule Attribute Default Description Value Vxseraid5 Toonarrowraid5 NsdthresholdToowideraid5 R5maxsizeVxsestripes1 Default stripeunit Vxseredundancy VolumeredundancyVxserootmir VxsesparesVxsevolplex Rule definitions and attributes Data assignment Performance guidelinesMirroring StripingRAID-5 Combining mirroring and stripingVolume read policies Setting performance priorities Performance monitoringObtaining performance data Tracing volume operations Printing volume statisticsBy vxtrace Using I/O statistics Using performance data# vxprint -g mydg -tvh archive Following is an extract from typical outputMydg03-03 Archive-01 40960 C1t2d0 # vxassist -g mydg move archive !mydg03 destdisk471 Tuning VxVM General tuning guidelinesUsing I/O tracing Number of configuration copies for a disk group Tuning guidelines for large systemsChanging the values of tunables # vxedit set nconfig=5 bigdg# vxdmpadm settune dmptunable=value # vxdmpadm gettune dmptunableTunable parameters Dmphealthtime DmppathswitchblksshiftDmploglevel DmppathageDmprestoreinterval DmprestorecyclesDmpprobeidlelun DmpqueuedepthDmpretrytimeout DmprestorepolicyDmpscsitimeout DmpretrycountVoldefaultiodelay VolcheckptdefaultDmpstatinterval VolfmrlogszVolmaxvol VolmaxioVolmaxioctl Volmaxparallelio VolmaxspecialioVolsubdisknum Voldrlmaxdrtregs VolcvmsmartsyncVoldrlmaxseqdirty VoldrlminregionszVoliomemmaxpoolsz VoliotiobufdefaultVolioterrbufdflt VoliotiobuflimitVoliotiobufmax VoliotmaxopenVolpagemodmaxmemsz Volraidrsrtransmax VolraidminpoolszTuning VxVM If you are using a C shell csh or tcsh, use the commands Commands summary# vxdisk -g mydg list Vxdisk -g diskgroup list disknameVxdg list diskgroup # vxdg list mydgTable A-2 Administering disks Command Description Mydg03 mydg02 # vxedit -g mydg rename \# vxedit -g mydg set \ Reserve=on mydg02Spare=on mydg04 # vxdiskunsetup c0t3d0Spare=off mydg04 # vxdisk offline c0t1d0Mydg01=c0t1d0 # vxdg init mydg \# vxsplitlines -g mydg # vxdg -n newdg deport mydgMydg newdg myvol1 # vxdg -o expand listmove \Newdg myvol1 Newdg myvol2 myvol3# vxdg destroy mydg # vxrecover -g mydg -sb# vxmake -g mydg sd \ Mydg02-01 mydg02,0,8000Vol01-01 mydg10-010 \ # vxsd -g mydg assoc \Mydg11-011 mydg12-012 Mydg02-01# vxmake -g mydg plex \ # vxsd -g mydg -o rm dis \Vol01-02 \ Sd=mydg02-01,mydg02-02Vol01-02 # vxplex -g mydg mv \Vol02-02 vol02-03 # vxplex -g mydg cp vol02 \ Table A-6 Creating volumes Command DescriptionVol03-01 Vol02-02Vxassist -b -g diskgroup make \ Volume length layout=striperaid5 \Stripeunit=W ncol=N attributes Mysvol 20g layout=stripe \Vol r5vol \ # vxmake -g mydg -Uraid5\Plex=raidplex,raidlog1,\ Raidlog2Table A-7 Administering volumes Command Description # vxsnap -gmydg prepare \ myvol drl=on Drl=onsequentialoffCvol 1g layout=mirror \ # vxassist -g mydg make \Init=active mydg16 mydg17 Cachevolname=cvol# vxassist -gmydg relayout \ vol2 layout=stripe # vxsnap -g mydg unprepare \ myvolVol3 layout=raid5 \ Stripeunit=16 ncol=4# vxassist -g mydg remove \ myvol # vxrecover -g mydg \Mytask -b mydg05 # vxtask -h -g mydg list# vxtask -p -g mydg list # vxtask pause mytask# vxtask resume mytask # vxtask abort mytaskOnline manual pages Administrative commandsTable A-9 Manual pages Name Description Vxmend VxrecoverVxmirror VxnotifyDevice driver interfaces File formatsSetup tasks after installation Configuring Veritas Volume ManagerAdding unsupported disk arrays as JBODs Adding foreign devicesAdding disks to disk groups Guidelines for configuring storage Mirroring guidelines Striping guidelines Dirty region logging guidelinesHot-relocation guidelines RAID-5 guidelines517 Configuring cluster support Accessing volume devicesControlling VxVM’s view of multipathed devices Converting existing VxVM disk groups to shared disk groups Configuring shared disk groupsReconfiguration tasks Glossary Single copy of a configuration database Page See disk enclosure Jbod Page RAID Page Page Page Index CDS Page CVM Page Page DMP Empty Page Page Page Page Iofail 228 Nodarec 228 Nodevice 228 Recover 228 Removed Page Page Page Page Page TPD Page Detached Disabled Enabled Page Page Page Page Page