Migrating extents using the CLI

To improve performance, you can migrate extents using the command-line interface (CLI).

The SAN Volume Controller provides various data migration features. These can be used to move the placement of data both within MDisk groups and between MDisk groups. These features can be used concurrently with I/O operations. There are two ways in which you can migrate data:
  1. Migrating data (extents) from one MDisk to another (within the same MDisk group). This can be used to remove highly utilized MDisks.
  2. Migrating VDisks from one MDisk group to another. This can be used to remove highly utilized MDisk groups. For example, you can reduce the utilization of a group of MDisks.
  3. Migration commands fail if the target or source VDisk is offline, or if there is insufficient quorum disk space to store the metadata. Correct the offline or quorum disk condition and reissue the command.
Notes:
  1. The source MDisk must not currently be the source MDisk for any other migrate extents operation.
  2. The destination MDisk must not be the destination MDisk for any other migrate extents operation.

You can determine the usage of particular MDisks by gathering input/output (I/O) statistics about nodes, MDisks, and VDisks. After you have gathered this data, you can analyze it to determine which MDisks are highly utilized. The procedure then takes you through querying and migrating extents to elsewhere in the same MDisk group. This procedure can only be performed using the command-line tools.

To migrate extents to remove possible problems, perform the following:
  1. Isolate any MDisks that are overutilized. You can determine this by requesting an I/O statistics dump and analyzing the output. To start I/O statistics gathering, issue the following CLI command:
    svctask startstats -interval 15
    This command generates a new I/O statistics dump file approximately every 15 minutes.
  2. Wait for at least 15 minutes after issuing the svctask startstats command and then issue the following command:
    svcinfo lsiostatsdumps
    This command lists the I/O statistics files generated on a per-node basis. These are prefixed with Nm for MDisk statistics, Nv for VDisk statistics, and Nn for node statistics.
  3. Use secure copy (scp) to retrieve the dumps files for analysis. For example, issue the following AIX® CLI command:

    scp clusterip:/dumps/iostats/m_*

    This command copies all the MDisk statistics files to the AIX host in the current directory.
  4. Analyze the dumps to determine which MDisks are highly utilized. You can also determine which VDisks are being highly utilized so that you can spread data more evenly across all the MDisks in the group.
  5. Stop the statistics collection by issuing the following command:
    svctask stopstats

After you have determined the MDisks that are highly utilized, you can migrate some of the data onto other MDisks within the same MDisk group.

  1. Determine the number of extents that are in use by each VDisk for the given MDisk by issuing the following CLI command:

    svcinfo lsmdiskextent mdiskname

    This command returns the number of extents that each VDisk is using on the given MDisk. You should pick some of these to migrate elsewhere in the group.
  2. Determine the other MDisks that reside in the same MDisk group.
    1. To determine the MDisk group that the MDisk belongs to, issue the following CLI command:

      svcinfo lsmdisk mdiskname | ID

    2. List the MDisks in the group by issuing the following CLI command:

      svcinfo lsmdisk -filtervalue mdisk_grp_name=mdiskgrpname

  3. Select one of these MDisks as the target MDisk for the extents. You can determine how many free extents exist on an mdisk by issuing the following CLI command:
    svcinfo lsfreeextents mdiskname
    You can issue the svcinfo lsmdiskextent newmdiskname command for each of the target MDisks to ensure that you are not just moving the over-utilization to another MDisk. Check that the VDisk that owns the set of extents to be moved does not already own a large set of extents on the target MDisk.
  4. For each set of extents, issue the following CLI command to move them to another MDisk:

    svctask migrateexts -source mdiskname | ID -exts num_extents
    -target newmdiskname | ID -threads 4 vdiskid

    Where num_extents is the number of extents on the vdiskid. The newmdiskname | ID value is the name or ID of the MDisk to migrate this set of extents to.
    Note: The number of threads indicates the priority of the migration processing, where 1 is the lowest priority and 4 is the highest priority.
  5. Repeat the previous steps for each set of extents that you are moving.
  6. You can check the progress of the migration by issuing the following CLI command:

    svcinfo lsmigrate

Library | Support | Terms of use | Feedback
© Copyright IBM Corporation 2003, 2009. All Rights Reserved.