Top
PRIMECLUSTERGlobal Disk Services Configuration and AdministrationGuide 4.5
FUJITSU Software

A.2.17 Swapping Internal Disks (FC-AL)

If FC-AL internal disks are swapped, the device numbers of the replacement disks may change. For this reason, FC-AL internal disks cannot be swapped through the procedures for physical disk swapping with [Swap Physical Disk] and [Restore Physical Disk] in the GDS Management View or with the sdxswap command. For FC-AL internal disk swapping, remove the relevant disk from the class once and register the replacement with the class again.

The following example shows the procedures for swapping an FC-AL internal disk connected to a mirror group for another. In this example, the swapped disk is a mirrored disk and removal of volumes from the disk prior to swapping is unnecessary. If the swapped disk is not a mirrored disk, such as a single disk and a disk whose highest level group is not a mirror group, volumes must be removed from the disk in advance. If volume removal is required, back up volume data according to need, remove the volumes, remove the disk from the class, register the replacement with the class, then re-create volumes and restore the data.

  1. Check GDS I/O error messages output in the /var/adm/messages file for the device name (devname) of the failed disk.

    To search the GDS I/O error messages, use the string "sfdsk" as a key. In the following example, the device name is ssd@w210000203716ee10.

    WARNING: sfdsk: write error on slice:
       volume info:    devno(maj,min)=0x03f4002e(253,46)
       device info:    devno(maj,min)=0x01d8001e(118,30)
                         devname=/sbus@2,0/SUNW,socal@d,10000/sf@1,0/ssd@w210000203716ee10,0 (ssd3)
       error info:     blk in disk=17308981, blk in slice=5232448
                         length=8192, resid=8192, errno=5
  2. Check the physical disk name of the swapped disk (failed disk).

    For the argument of the grep command, specify the device name confirmed in step 1.
    In the following example, the physical disk name is c2t4d0.

    # ls -l /dev/rdsk | grep ssd@w210000203716ee10
    lrwxrwxrwx 1 root root 78 Feb 3 18:49 c2t4d0s0 -> ../../devices/sbus@2,0/SUNW,socal@d,10000/sf@1,0/ssd@w210000203716ee10,0:a,raw lrwxrwxrwx 1 root root 78 Feb 3 18:49 c2t4d0s1 -> ../../devices/sbus@2,0/SUNW,socal@d,10000/sf@1,0/ssd@w210000203716ee10,0:b,raw lrwxrwxrwx 1 root root 78 Feb 3 18:49 c2t4d0s2 -> ../../devices/sbus@2,0/SUNW,socal@d,10000/sf@1,0/ssd@w210000203716ee10,0:c,raw lrwxrwxrwx 1 root root 78 Feb 3 18:49 c2t4d0s3 -> ../../devices/sbus@2,0/SUNW,socal@d,10000/sf@1,0/ssd@w210000203716ee10,0:d,raw lrwxrwxrwx 1 root root 78 Feb 3 18:49 c2t4d0s4 -> ../../devices/sbus@2,0/SUNW,socal@d,10000/sf@1,0/ssd@w210000203716ee10,0:e,raw lrwxrwxrwx 1 root root 78 Feb 3 18:49 c2t4d0s5 -> ../../devices/sbus@2,0/SUNW,socal@d,10000/sf@1,0/ssd@w210000203716ee10,0:f,raw lrwxrwxrwx 1 root root 78 Feb 3 18:49 c2t4d0s6 -> ../../devices/sbus@2,0/SUNW,socal@d,10000/sf@1,0/ssd@w210000203716ee10,0:g,raw lrwxrwxrwx 1 root root 78 Feb 3 18:49 c2t4d0s7 -> ../../devices/sbus@2,0/SUNW,socal@d,10000/sf@1,0/ssd@w210000203716ee10,0:h,raw
  3. Check the disk name, class name, and group name of the swapped disk.

    For these names, execute the sdxinfo -D command and check the NAME, CLASS, GROUP fields of the row that shows the physical disk name confirmed in step 2. in the DEVNAM field.

    In the following example, for physical disk c2t4d0, the disk name is Disk2, the class name is Class1, and the group name is Group1.

    # sdxinfo -D
    OBJ NAME TYPE CLASS GROUP DEVNAM DEVBLKS DEVCONNECT STATUS ------ ------- ------ ------- ------- ------- -------- -------------- -------- disk Disk1 mirror Class1 Group1 c0t0d0 17682084 Node1 ENABLE disk Disk2 mirror Class1 Group1 c2t4d0 17682084 Node1 ENABLE
  4. Disconnect the swapped disk from the group.

    With the -c, -g, and -d options of the sdxdisk -D command, specify the class name, the group name, and the disk name confirmed in step 3.

    # sdxdisk -D -c Class1 -g Group1 -d Disk2
  5. Check if the swapped disk was disconnected from the group.

    For checking, execute the sdxinfo -D command and check if the asterisk (*) is displayed in the GROUP field of the row that shows the physical disk name of the disconnected disk in the DEVNAM field.

    # sdxinfo -D
    OBJ NAME TYPE CLASS GROUP DEVNAM DEVBLKS DEVCONNECT STATUS ----- ------- ------- ------- ------- ------- --------- -------------- ------- disk Disk1 mirror Class1 Group1 c0t0d0 17682084 Node1 ENABLE disk Disk2 mirror Class1 * c2t4d0 17682084 Node1 ENABLE
  6. Remove the swapped disk from the class.

    With the -c and -d options of the sdxdisk -R command, specify the class name and the disk name confirmed in step 3.

    # sdxdisk -R -c Class1 -d Disk2
  7. Check if the swapped disk was removed from the class.

    For checking, execute the sdxinfo -D command and check if information of the removed disk is not displayed.

    # sdxinfo -D
    OBJ NAME TYPE CLASS GROUP DEVNAM DEVBLKS DEVCONNECT STATUS ------ ------- ------- ------- ------- ------- -------- ------------- ------- disk Disk1 mirror Class1 Group1 c0t0d0 17682084 Node1 ENABLE
  8. Stop the system.

    # shutdown -y -i0 -g0
  9. Swap disks.

    Ask field engineers for disk unit swapping.

    The CE will swap disk units according to the following procedures.

    1. Take a copy of the WWN (World Wide Name) of the swapped disk.

    2. Check the auto-boot? variable setting of OpenBoot, and if the auto-boot? variable value is "true", change the value to "false."

    3. Turn off power of the main unit.

    4. Swap disks.

    5. Turn on power of the main unit.

    6. When the auto-boot? value was changed to "false" in step 2., set it back to "true."

  10. Restart the system.

    Note

    An FC-AL disk has been assigned a unique WWN (World Wide Name) and Solaris uses this WWN as management information. For Solaris to recognize the WWN of the replacement disk, the system must be rebooted with the boot -r command.

    ok boot -r
  11. Together with the CE, check if the replacement is recognized by Solaris and check its physical disk name.

    In the following example, the WWN is 0020370e35e5 and the physical disk name is c2t4d0.

    # format
    Searching for disks...done AVAILABLE DISK SELECTIONS: 0. c2t4d0 <sfdsk type1.0; SUN9.0G cyl 4924 alt 2 hd 27 sec 133> 00100004 /sbus@2,0/SUNW,socal@d,10000/sf@1,0/ssd@w21000020370e35e5,0
    Specify disk (enter its number):

    Information

    Disks managed by GDS are not displayed with the format command.

  12. Check if the device special files of the replacement exist.

    For the argument of the ls command, specify the physical disk name confirmed in step 11. attaching the asterisk (*) to the end.

    # cd /dev/rdsk
    # ls -lL c2t4d0*
    crw-r----- 1 root sys 118, 32 Feb 3 17:09 c2t4d0s0 crw-r----- 1 root sys 118, 33 Feb 3 13:21 c2t4d0s1 crw-r----- 1 root sys 118, 34 Feb 3 17:09 c2t4d0s2 crw-r----- 1 root sys 118, 35 Feb 3 13:21 c2t4d0s3 crw-r----- 1 root sys 118, 36 Feb 3 13:21 c2t4d0s4 crw-r----- 1 root sys 118, 37 Feb 3 13:21 c2t4d0s5 crw-r----- 1 root sys 118, 38 Feb 3 13:21 c2t4d0s6 crw-r----- 1 root sys 118, 39 Feb 3 15:35 c2t4d0s7
  13. If the relevant system is a cluster system, re-create the resource of the replacement according to the following procedures.

    If not, go on to step 14.

    1. Check the resource of the original disk.

      Check if the resource of the original disk c2t4d0 connected to node Node1, confirmed in step 2., is displayed with the clgettree command.

      # /etc/opt/FJSVcluster/bin/clgettree
      Cluster 1 cluster
                 Domain 2 Domain0
      ...
                         Node 3 Node1 ON
      ...
                                 DISK 33 c2t4d0 UNKNOWN 
      ...
    2. Delete the original disk resource.

      # /etc/opt/FJSVcluster/bin/cldeldevice -n c2t4d0
    3. Check if the original disk resource was deleted.

      For checking, check if the resource confirmed in step 1. is not displayed with the clgettree command.

      # /etc/opt/FJSVcluster/bin/clgettree
      Cluster 1 cluster Domain 2 Domain0 ... Node 3 Node1 ON ...
    4. Create the resource of the replacement.

      Execute the following command on any node that composes the cluster system.

      # /etc/opt/FJSVcluster/bin/clautoconfig -r
    5. Confirm that the resource of the replacement was created.

      For checking, check if the resource of replacement c2t4d0 confirmed in step 11. is displayed with the clgettree command.

      # /etc/opt/FJSVcluster/bin/clgettree
      Cluster 1 cluster Domain 2 Domain0 ... Node 3 Node1 ON ... DISK 44 c2t4d0 UNKNOWN ...
  14. Register the replacement with the class.

    With the -c option of the sdxdisk -M command, specify the class name confirmed in step 3. With the -d option, specify the physical disk name confirmed in step 11. and the disk name confirmed in step 3.

    # sdxdisk -M -c Class1 -d c2t4d0=Disk2
  15. Confirm that the replacement was registered with the class.

    # sdxinfo -D
    OBJ NAME TYPE CLASS GROUP DEVNAM DEVBLKS DEVCONNECT STATUS ------ ------- ------ ------- ------- ------- -------- ------------ ------- disk Disk1 mirror Class1 Group1 c0t0d0 17682084 Node1 ENABLE disk Disk2 mirror Class1 * c2t4d0 17682084 Node1 ENABLE
  16. Connect the replacement to the group.

    With the -c, -g, and -d options of the sdxdisk -D command, specify the class name, the group name, and the disk name confirmed in step 3.

    # sdxdisk -C -c Class1 -g Group1 -d Disk2
  17. Confirm that the replacement was connected to the group.

    # sdxinfo -D
    OBJ NAME TYPE CLASS GROUP DEVNAM DEVBLKS DEVCONNECT STATUS ------ ------ ------ ------- ------- -------- -------- ------------- ------- disk Disk1 mirror Class1 Group1 c0t0d0 17682084 Node1 ENABLE disk Disk2 mirror Class1 Group1 c2t4d0 17682084 Node1 ENABLE
  18. When the replacement is connected to the group, resynchronization copying for the disk is performed.

    If the resynchronization copying is in process, with the sdxinfo -S command, COPY is displayed in the STATUS field of the row that shows the disk name of the replacement. If the resynchronization copying is complete, ACTIVE is displayed in the STATUS field.

    # sdxinfo -S
    OBJ CLASS GROUP DISK VOLUME STATUS ----- ------- ------- ------- ------- -------- slice Class1 Group1 Disk1 Volume1 ACTIVE slice Class1 Group1 Disk1 Volume2 ACTIVE slice Class1 Group1 Disk2 Volume1 COPY slice Class1 Group1 Disk2 Volume2 COPY