ページの先頭行へ戻る
PRIMECLUSTER Global Disk Services 説明書 4.5
FUJITSU Software

A.2.18 ディスクの交換 (SAS)

以下のディスクを交換する場合、本項で説明する方法で交換してください。

本項では、上記のディスクを SAS ディスクと呼びます。

SAS ディスクを交換すると、交換後のディスクのデバイス番号が変更される場合があります。このため、GDS 運用管理ビューの[物理ディスク交換] と [物理ディスク復旧]、または sdxswap コマンドを使用する物理ディスク交換手順では、SAS ディスクは交換できません。SAS ディスクを交換する場合は、当該ディスクをクラスからいったん削除してからディスク装置を交換し、交換後のディスクをクラスに再度登録してください。

以下に、例として、ミラーグループに接続されている SAS ディスクの交換手順を示します。この例では、ミラーリングされているディスクを交換するため、交換前にディスク上のボリュームを削除する必要はありません。シングルディスクの場合や、最上位グループがミラーグループ以外の場合など、ミラーリングされていないディスクを交換する場合は、交換前にディスク上のボリュームを削除する必要があります。

この場合、必要に応じてボリュームのデータをバックアップしてからボリュームを削除し、ディスクをクラスから削除し、交換後のディスクをクラスに登録した後、ボリュームの再作成とデータのリストアを行う必要があります。

  1. /var/adm/messages ファイルに出力されている GDS の I/O エラーメッセージから、交換前のディスクの raw デバイス名 (devname) を確認します。

    GDS の I/O エラーメッセージは、文字列 sfdsk をキーにして検索することができます。以下の例では、raw デバイス名は disk@g5000c5001d4809ff です。

    WARNING: sfdsk: write error on slice:
               volume info:    devno(maj,min)=0x13300000002(307,2)
               device info:    devno(maj,min)=0x2000000038(32,56)
               devname=/scsi_vhci/disk@g5000c5001d4809ff (sd7)
               error info:     blk in disk=17308981, blk in slice=5232448
                               length=8192, resid=8192, errno=5
  2. 交換前のディスクのデバイス名を確認します。

    grep コマンドの引数には、手順 1. で確認した raw デバイス名を指定します。

    以下の例では、交換前のディスクのデバイス名は c0t5000C5001D4809FFd0 です。

    # ls -l /dev/rdsk | grep disk@g5000c5001d4809ff
    lrwxrwxrwx   1 root   root  52  4月 25日  13:46 c0t5000C5001D4809FFd0s0 -> ../../devices/scsi_vhci/disk@g5000c5001d4809ff:a,raw
    lrwxrwxrwx   1 root   root   52  4月 25日  13:46 c0t5000C5001D4809FFd0s1 -> ../../devices/scsi_vhci/disk@g5000c5001d4809ff:b,raw
    lrwxrwxrwx   1 root   root   52  4月 25日  13:46 c0t5000C5001D4809FFd0s2 -> ../../devices/scsi_vhci/disk@g5000c5001d4809ff:c,raw
    lrwxrwxrwx   1 root   root   52  4月 25日  13:46 c0t5000C5001D4809FFd0s3 -> ../../devices/scsi_vhci/disk@g5000c5001d4809ff:d,raw
    lrwxrwxrwx   1 root   root   52  4月 25日  13:46 c0t5000C5001D4809FFd0s4 -> ../../devices/scsi_vhci/disk@g5000c5001d4809ff:e,raw
    lrwxrwxrwx   1 root   root   52  4月 25日  13:46 c0t5000C5001D4809FFd0s5 -> ../../devices/scsi_vhci/disk@g5000c5001d4809ff:f,raw
    lrwxrwxrwx   1 root   root   52  4月 25日  13:46 c0t5000C5001D4809FFd0s6 -> ../../devices/scsi_vhci/disk@g5000c5001d4809ff:g,raw
    lrwxrwxrwx   1 root   root   52  4月 25日  13:46 c0t5000C5001D4809FFd0s7 -> ../../devices/scsi_vhci/disk@g5000c5001d4809ff:h,raw 
  3. 交換前のディスクのディスク名、クラス名、グループ名を確認します。

    sdxinfo -D コマンドを実行し、DEVNAM フィールドに手順 2. で確認したデバイス名が表示されている行を確認します。

    以下の例では、デバイス名 c0t5000C5001D4809FFd0 のディスク名は rootDisk0002、クラス名は RootClass、グループ名は rootGroup です。

    # sdxinfo -D
    OBJ    NAME         TYPE   CLASS     GROUP     DEVNAM                DEVBLKS   DEVCONNECT       STATUS
    ------ ------------ ------ --------- --------- --------------------- --------- ---------------- -------
    disk   rootDisk0001 mirror RootClass rootGroup c0t5000CCA0150FEA10d0 585912500 *                ENABLE
    disk   rootDisk0002 mirror RootClass rootGroup c0t5000C5001D4809FFd0 585912500 *                ENABLE
    disk   dataDisk0001 mirror RootClass dataGroup c0t5000CCA00AC1C874d0 585912500 *                ENABLE
    disk   dataDisk0002 mirror RootClass dataGroup c0t5000CCA0150F96F0d0 585912500 *                ENABLE
  4. 交換前のディスクをグループから切断します。

    sdxdisk -D コマンドの -c、-g、-d オプションには、手順 3. で確認したクラス名、グループ名、ディスク名を指定します。

    # sdxdisk -D -c RootClass -g rootGroup -d rootDisk0002

    注意

    スペアディスクが接続されている場合

    交換前のディスクを切断する際、スペアディスクが接続されていると、以下のエラーが出力されます。

    SDX:sdxdisk: ERROR: spare disk connected for ディスク名

    この場合、先にスペアディスクをグループから切断してください。

    以下に、スペアディスク (disk0001) を切断した後、交換前のディスク (rootDisk0002) を切断する例を示します。

    # sdxinfo -D
    OBJ    NAME         TYPE   CLASS     GROUP     DEVNAM                DEVBLKS   DEVCONNECT STATUS
    ------ ------------ ------ --------- --------- --------------------- --------- ---------- ------
    disk   rootDisk0001 mirror RootClass rootGroup c0t5000CCA0150FEA10d0 585912500 *          ENABLE
    disk   rootDisk0002 mirror RootClass rootGroup c0t5000C5001D4809FFd0 585912500 *          ENABLE
    disk   disk0001     spare  RootClass rootGroup c0t5000CCA00AC1C874d0 585912500 *          ENABLE
    # sdxdisk -D -c RootClass -g rootGroup -d disk0001
    SDX:sdxdisk: INFO: disk0001: disconnected disk from group rootGroup
    # sdxdisk -D -c RootClass -g rootGroup -d rootDisk0002
    SDX:sdxdisk: INFO: rootDisk0002: disconnected disk from group rootGroup
  5. 交換前のディスクがグループから切断されたことを確認します。

    sdxinfo -D コマンドを実行し、切断したディスク (rootDisk0002) の GROUP フィールドに、アスタリスク (*) が表示されていることを確認します。

    # sdxinfo -D
    OBJ    NAME         TYPE   CLASS     GROUP     DEVNAM                DEVBLKS   DEVCONNECT       STATUS
    ------ ------------ ------ --------- --------- --------------------- --------- ---------------- -------
    disk   rootDisk0001 mirror RootClass rootGroup c0t5000CCA0150FEA10d0 585912500 *                ENABLE
    disk   dataDisk0001 mirror RootClass dataGroup c0t5000CCA00AC1C874d0 585912500 *                ENABLE
    disk   dataDisk0002 mirror RootClass dataGroup c0t5000CCA0150F96F0d0 585912500 *                ENABLE
    disk   rootDisk0002 undef  RootClass *         c0t5000C5001D4809FFd0 585912500 *                ENABLE
  6. 交換前のディスクをクラスから削除します。

    sdxdisk -R コマンドの -c、-d オプションには、手順 3. で確認したクラス名、ディスク名を指定します。

    # sdxdisk -R -c RootClass -d rootDisk0002
  7. 交換前のディスクがクラスから削除されたことを確認します。

    sdxinfo -D コマンドを実行し、削除したディスク (rootDisk0002) の情報が表示されていないことを確認します。

    # sdxinfo -D
    OBJ    NAME         TYPE   CLASS     GROUP     DEVNAM                DEVBLKS   DEVCONNECT STATUS
    ------ ------------ ------ --------- --------- --------------------- --------- ---------- ------
    disk   rootDisk0001 mirror RootClass rootGroup c0t5000CCA0150FEA10d0 585912500 *          ENABLE
    disk   dataDisk0001 mirror RootClass dataGroup c0t5000CCA00AC1C874d0 585912500 *          ENABLE
    disk   dataDisk0002 mirror RootClass dataGroup c0t5000CCA0150F96F0d0 585912500 *          ENABLE
  8. 交換前のディスクが接続されているハードウェア固有の識別子を調べます。

    ハードウェア固有の識別子は、交換前のディスクのデバイス名が表示された情報の "Ap_Id " で確認します。

    以下の例では、物理ディスク c0t5000C5001D4809FFd0 のハードウェア固有の識別子は c5::w5000c5001d4809fd です。

    # cfgadm -av
    Ap_Id                     Receptacle  Occupant      Condition   Information
    When         Type       Busy     Phys_Id
    ~
    c5::w5000c5001d4809fd,0  connected     configured    unknown  \
            Client Device: /dev/dsk/c0t5000C5001D4809FFd0s0(sd7)
    unavailable disk-path   n  \
            /devices/pci@400/pci@2/pci@0/pci@e/scsi@0/iport@4:scsi::w5000c5001d4809fd,0
    ~
  9. ディスクを交換します。

    当社技術員 (CE) にディスク装置の交換を依頼します。

    ディスク装置の交換は、活性交換、非活性交換のどちらの方法でも可能です。

  10. 交換後のディスクのデバイス名を調べます。

    手順 8. で調べたハードウェア固有の識別子の情報について、Occupant に "unconfigured" と表示されていることと、Phys_Id に表示されている "iport@X:scsi" の形式の情報を確認します。

    交換後のディスクのデバイスは、Phys_Id に上記で確認した"iport@X:scsi"が表示され、かつ、Occupant に "configured" と表示されているデバイスです。

    以下の例では、交換後のディスクのデバイス名は c0t5000C5001D4806BFd0 です。

    # cfgadm -av
    Ap_Id Receptacle Occupant Condition Information When Type Busy Phys_Id ~ c5::w5000c5001d4809fd,0 connected unconfigured unknown (sd7) unavailable disk-path n \ /devices/pci@400/pci@2/pci@0/pci@e/scsi@0/iport@4:scsi::w5000c5001d4809fd,0 c5:: w5000c5001d4806bd,0 connected configured unknown \ Client Device: /dev/dsk/c0t5000C5001D4806BFd0s0(sd8) unavailable disk-path n \ /devices/pci@400/pci@2/pci@0/pci@e/scsi@0/iport@4:scsi:: w5000c5001d4806bd,0 ~
  11. 交換後のディスクのデバイス特殊ファイル (cCtWWNdDs{0-7}) が存在することを確認します。

    ls コマンドの引数では、手順 10. で確認したデバイス名の最後にアスタリスク (*) を付加したものを指定します。

    以下の例では、デバイス特殊ファイル c0t5000C5001D4806BFd0s0 ~ c0t5000C5001D4806BFd0s7 が存在していることが確認できます。

    # ls -lL /dev/rdsk/c0t5000C5001D4806BFd0*
    crw-r-----   1 root     sys  32, 16 May 16 17:26 /dev/rdsk/c0t5000C5001D4806BFd0s0
    crw-r-----   1 root     sys  32, 17 May 17 12:10 /dev/rdsk/c0t5000C5001D4806BFd0s1
    crw-r-----   1 root     sys  32, 18 May 17 09:44 /dev/rdsk/c0t5000C5001D4806BFd0s2
    crw-r-----   1 root     sys  32, 19 May 17 12:10 /dev/rdsk/c0t5000C5001D4806BFd0s3
    crw-r-----   1 root     sys  32, 20 May 17 12:10 /dev/rdsk/c0t5000C5001D4806BFd0s4
    crw-r-----   1 root     sys  32, 21 May 17 12:10 /dev/rdsk/c0t5000C5001D4806BFd0s5
    crw-r-----   1 root     sys  32, 22 May 17 12:10 /dev/rdsk/c0t5000C5001D4806BFd0s6
    crw-r-----   1 root     sys  32, 23 May 17 12:10 /dev/rdsk/c0t5000C5001D4806BFd0s7
  12. クラスタシステムの場合、以下の手順により、交換後のディスクのリソースを PRIMECLUSTER に登録します。

    クラスタシステムでない場合、手順 13. 以降を実施してください。

    1. PRIMECLUSTER が管理するクラスタのノード ID を確認します。

      以下の例では、ノード ID は 0 になります。

      # /etc/opt/FJSVcluster/bin/clgetnode
      RID 3
      KEY TRC89
      RNAME TRC89
      NODEID 0
    2. 交換前のデバイスにおける PRIMECLUSTER のリソース ID を確認します。

      clgetrid コマンドの -k オプションでは手順 2. で確認したデバイス名、-s オプションでは手順 12-1) で確認したノード ID を指定します。

      以下の例では、リソース ID は 25 になります。

      # /etc/opt/FJSVcluster/sys/clgetrid -c DISK -k c0t5000C5001D4809FFd0 -s 0
      25
    3. 交換前のディスクのリソースを削除します。

      以下の例では、リソース ID が 25 のリソースを削除します。

      # /etc/opt/FJSVcluster/bin/cldeldevice -r 25
    4. 交換前のディスクのリソースが削除されていることを確認します。

      削除したリソースが表示されていないことを確認します。

      # /etc/opt/FJSVcluster/sys/clgetrid -c DISK -k c0t5000C5001D4809FFd0 -s 0
    5. 交換後のディスクを PRIMECLUSTER に登録します。

      # /etc/opt/FJSVcluster/sys/clautoconfig -r
    6. 交換後のディスクのデバイス名が登録されていることを確認します。

      交換後のディスクのデバイス名 (c0t5000C5001D4806BFd0) が表示されていることから、交換後のディスクが PRIMECLUSTER に登録されたことが確認できます。

      # /etc/opt/FJSVcluster/bin/clgettree
      Cluster 1 cluster
          Domain 2 cluster
              Shared 7 SHD_cluster
                  SHD_DISK 3417 SHD_Disk3417 UNKNOWN
                      DISK 3418 c3t46554A4954535520333030303030383530303043d0 UNKNOWN TRC89
                      DISK 3477 c3t46554A4954535520333030303030383530303043d0 UNKNOWN ryuta
                  SHD_DISK 3419 SHD_Disk3419 UNKNOWN
                      DISK 3420 c3t46554A4954535520333030303030383530303042d0 UNKNOWN TRC89
                      DISK 3478 c3t46554A4954535520333030303030383530303042d0 UNKNOWN ryuta
              Node 3 TRC89 ON
                  Ethernet 105 igb3 UNKNOWN
                  SDX_DC 3519 RootClassI UNKNOWN
                  DISK 71 c0t5000CCA0150FEA10d0 UNKNOWN
                  DISK 72 c0t5000CCA00AC1C874d0 UNKNOWN
                  DISK 73 c0t5000CCA0150F96F0d0 UNKNOWN
                  DISK 3418 c3t46554A4954535520333030303030383530303043d0 UNKNOWN
                  DISK 3420 c3t46554A4954535520333030303030383530303042d0 UNKNOWN
                  DISK 3518 c0t5000C5001D4806BFd0 UNKNOWN
              Node 5 ryuta  ON
                  Ethernet 106 igb3 UNKNOWN
                  DISK 101 c0t5000C5001D480F6Fd0 UNKNOWN
                  DISK 3477 c3t46554A4954535520333030303030383530303043d0 UNKNOWN
                  DISK 3478 c3t46554A4954535520333030303030383530303042d0 UNKNOWN
  13. GDS のディスク情報を再読込みします。

    # sdxinfo -x Refresh
  14. GDS に交換後のディスクを登録します。

    sdxdisk -M コマンドの -c オプションには、交換前のディスクのクラス名を指定します。-d オプションには、交換後のディスクのデバイス名と交換前のディスクのディスク名を指定します。

    # sdxdisk -M -c RootClass -d c0t5000C5001D4806BFd0=rootDisk0002
  15. GDS に交換後のディスクが登録されていることを確認します。

    # sdxinfo -D
    OBJ    NAME         TYPE   CLASS     GROUP     DEVNAM                DEVBLKS   DEVCONNECT STATUS
    ------ ------------ ------ --------- --------- --------------------- --------- ---------- -------
    disk   rootDisk0001 mirror RootClass rootGroup c0t5000CCA0150FEA10d0 585912500 *          ENABLE
    disk   dataDisk0001 mirror RootClass dataGroup c0t5000CCA00AC1C874d0 585912500 *          ENABLE
    disk   dataDisk0002 mirror RootClass dataGroup c0t5000CCA0150F96F0d0 585912500 *          ENABLE
    disk   rootDisk0002 undef  RootClass *         c0t5000C5001D4806BFd0 585912500 *          ENABLE
  16. 交換後のディスクをグループに接続します。

    sdxdisk -C コマンドの -c、-g、-d オプションには、手順 3. で確認したクラス名、グループ名、ディスク名を指定します。

    # sdxdisk -C -c RootClass -g rootGroup -d rootDisk0002
  17. 交換後のディスクがグループに接続されていることを確認します。

    # sdxinfo -D
    OBJ    NAME         TYPE   CLASS     GROUP     DEVNAM                DEVBLKS   DEVCONNECT       STATUS
    ------ ------------ ------ --------- --------- --------------------- --------- ---------------- -------
    disk   rootDisk0001 mirror RootClass rootGroup c0t5000CCA0150FEA10d0 585912500 *                ENABLE
    disk   rootDisk0002 mirror RootClass rootGroup c0t5000C5001D4806BFd0 585912500 *                ENABLE
    disk   dataDisk0001 mirror RootClass dataGroup c0t5000CCA00AC1C874d0 585912500 *                ENABLE
    disk   dataDisk0002 mirror RootClass dataGroup c0t5000CCA0150F96F0d0 585912500 *                ENABLE
  18. 交換後のディスクをグループに接続すると、交換後のディスクに対して等価性回復コピーが実行されます。

    # sdxinfo -S
    OBJ    CLASS     GROUP     DISK         VOLUME     STATUS
    ------ --------- --------- ------------ ---------- -------
    slice  RootClass rootGroup rootDisk0001 rootVolume ACTIVE
    slice  RootClass rootGroup rootDisk0002 rootVolume COPY
    slice  RootClass rootGroup rootDisk0001 swapVolume ACTIVE
    slice  RootClass rootGroup rootDisk0002 swapVolume COPY
    slice  RootClass rootGroup rootDisk0001 homeVolume ACTIVE
    slice  RootClass rootGroup rootDisk0002 homeVolume COPY
    slice  RootClass group0001 disk000001   volume0001 ACTIVE
    slice  RootClass group0001 disk000002   volume0001 ACTIVE