Go to main content
Oracle® Solaris 11.3 での ZFS ファイルシステムの管理

印刷ビューの終了

更新: 2016 年 11 月
 
 

ストレージプール内のデバイスを置き換える

zpool replace コマンドを使用して、ストレージプール内のデバイスを置き換えることができます。

# zpool replace pool replaced-device [new-device]

冗長プールの同じ位置に交換用デバイスをインストールする場合は、置き換えられるデバイスのみを指定すればよい場合があります。一部のハードウェアでは、ZFS は同じ場所に新しいデバイスを認識します。ただし、別の場所に交換用デバイスをインストール場合、交換されるデバイスと新しいデバイスの両方を指定する必要があります。

置き換えられるデバイスの自動検出はハードウェアに依存しており、一部のプラットフォームではサポートされていない場合があります。さらに、一部のハードウェアタイプは autoreplace プールプロパティーをサポートします。このプロパティーが有効な場合に、同じ場所でデバイスを置き換えると、自動的にフォーマットおよび置き換えが実行されます。zpool replace コマンドの実行は不要です。

次のガイドラインに留意してください。

  • ホットスペアデバイス (使用可能な場合) は、システムの稼動中に削除されるデバイスを自動的に置き換えます。障害の発生したディスクを置き換えたあとに、zpool detach コマンドを使用してスペアの切り離しが必要になる場合があります。ホットスペアの切り離しについては、ストレージプール内のホットスペアをアクティブにする/非アクティブにするを参照してください。

  • 削除してからふたたび挿入されたデバイスは自動的にオンラインにされます。この場合、置き換えは行われません。再挿入されたデバイスがオンラインに戻されると、交換用のホットスペアデバイスが自動的に削除されます。

デバイスをより大きい容量を持つデバイスで置き換える場合は、プールに新しいデバイスを追加したあと、そのデバイスは自動的にはフルサイズに拡張されません。autoexpand プールプロパティーが交換用 LUN の自動拡張を決定します。デフォルトでは、このプロパティーは無効です。より大きい LUN をプールに追加する前後に、このプロパティーを有効にできます。

SATA ディスクを備えた一部のシステムでは、オフラインにする前にディスクを構成解除する必要があります。このシステム上の同じスロット位置にあるディスクを置き換えようとしている場合は、このセクションの最初の例 (使用例 12) で説明したように zpool replace コマンドを実行するだけでかまいません。SATA ディスクの置き換えの例については、使用例 58を参照してください。

新しいディスクへのデータの再同期化のため、ディスクの置き換えに時間がかかります。ディスクの置き換えの合間に zpool scrub コマンドを実行して、交換用デバイスが動作可能なこと、およびデータが正しく書き込まれることを確認することもできます。

デバイスの置き換えの詳細は、見つからないデバイスまたは削除されたデバイスを解決するおよび 破損したデバイスを交換または修復するを参照してください。

ストレージプールのデバイスを置き換える方法

  1. 必要に応じて、OFFLINE 状態にデバイスを切り替えます。
    # zpool offline pool device
  2. 新しいデバイスでデバイスを物理的に置き換えます。

    冗長なストレージプールの場合、交換用のデバイスがプール内のもっとも小さいディスク以上であることを確認します。

  3. format コマンドを実行します。

    出力で次の点を確認します。

    • 新しいデバイスがリストされていることを確認します。

    • 交換用のデバイスが WWN としてマークされているかどうかを確認し、デバイス ID が変更されたことを確認します。

  4. プール内のデバイスを置き換えます。

    新しいデバイスに新しい ID がある場合は、コマンドにその ID を含めます。

    # zpool replace pool replaced-device [new-device-ID]

    注 -  複数のデバイスを置き換える場合、次のデバイスを置き換える前に各デバイスが完全に再同期化されていることを確認します。
  5. 必要に応じて、デバイスをオンラインにします。
    # zpool online pool new-device
  6. デバイスに障害があることを示すエラーが報告される場合は、FMA 手順を実行します。
    1. fmadm faulty コマンドを実行します。
    2. 出力の Affects: セクションから仮想デバイスのプール名および GUID を識別します。
    3. 次のコマンドを実行して、前の手順の情報を指定します。
      # fmadm repaired zfs://pool=name/vdev=guid
使用例 12  ミラー化プール内のデバイスを置き換える

次の例では、プール system1 内の 2 つの 16G バイトディスクは 2 つの 72G バイトディスクで置き換えられます。ディスクの交換後に autoexpand プロパティーを有効にして、ディスクをその最大サイズまで拡張します。

# zpool status system1
  pool: system1
 state: ONLINE
 scrub: none requested
config:

        NAME         STATE     READ WRITE CKSUM
        system1      ONLINE       0     0     0
          mirror     ONLINE       0     0     0
            c1t16d0  ONLINE       0     0     0
            c1t17d0  ONLINE       0     0     0

# zpool list system1
NAME      SIZE   ALLOC   FREE    CAP  HEALTH  ALTROOT
system1  16.8G   76.5K  16.7G     0%  ONLINE  -
# zpool replace system1 c1t16d0 c1t1d0
# zpool replace system1 c1t17d0 c1t2d0
# zpool list system1
NAME      SIZE   ALLOC   FREE    CAP  HEALTH  ALTROOT
system1  16.8G   88.5K  16.7G     0%  ONLINE  -
# zpool set autoexpand=on system1
# zpool list system1
NAME      SIZE   ALLOC   FREE    CAP  HEALTH  ALTROOT
system1  68.2G    117K  68.2G     0%  ONLINE  -