web-dev-qa-db-ja.com

FreeNAS / ZFSセットアップで失敗したディスクを特定する方法

4GのRAM、16個のSATAホットスワップベイを備えたSupermicro X6DHE-XB 3UエンクロージャーにFreeNASベースのサーバーを構築しています。 2x8ポートの3Ware RAIDカードが付属していますが、ハードウェアRAIDの代わりにZFS機能を使用することを計画しています。私の最初のドライブセットは、8x2TB HITACHI Deskstar 7K3000 HDS723020BLA642ドライブです。

ハードウェアベースのRAIDを使用している場合、ドライブが故障したドライブベイに赤いライトが表示されます。ドライブが故障した場合、ZFSとどのように連携しますか? sda = bay1、sdb = bay2などであるという保証はないと思います。どのドライブを交換する必要があるかをどのように判断しますか? ZFSはSATAコントローラーにレポートして、「故障したドライブ」ライトをオンにすることはできますか?ドライブのシリアル番号を報告するだけですか?ドライブが故障してシリアル番号を報告できない場合はどうなりますか?ライブを開始する前に、すべてのドライブのシリアル番号と、それがどのベイに入ったかを書き留めておくことをお勧めします。将来的にドライブを簡単に交換できるようにする他の「製造前」のタスクはありますか?

12
John P

zpool status -vは、どのディスクがオンラインであるかを教えてくれるはずです。

4
Marcin

現在のバージョンのFreeNAS(現時点では9.3)は、zpoolに追加されたドライブごとにgptidを作成します。作成直後、「zpool status」は次のようになります(プールの構成によって異なります)...

#zpool status
プール:myzfstest
状態:オンライン
スキャン:なし
リクエストされた構成:

    NAME                                            STATE     READ WRITE CKSUM
    myzfstest                                       ONLINE       0     0     0
      raidz-0                                       ONLINE       0     0     0
        gptid/4fc2b789-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/51d38480-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/54c672cc-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/56a07638-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
      raidz2-1                                      ONLINE       0     0     0
        gptid/630e1317-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/6557b52d-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/667a1318-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/68cadf75-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
    logs
      mirror-2                                      ONLINE       0     0     0
        gptid/8839f22e-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/8a6d0b14-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
    cache
      gptid/8c2f3824-7b7f-11e4-9585-de9b81338d40    ONLINE       0     0     0
      gptid/8da9ba80-7b7f-11e4-9585-de9b81338d40    ONLINE       0     0     0
    spares
      gptid/72f039f2-7b8a-11e4-9585-de9b81338d40    AVAIL
      gptid/750df91d-7b8a-11e4-9585-de9b81338d40    AVAIL

エラー:既知のデータエラーはありません

残念ながら、Web GUIはこれらの数値を表示しません。したがって、「gptid/6557b52d-7b7f-11e4-9585-de9b81338d40」が不適切であるというエラーが表示された場合、どのドライブをプルするかをどのようにして知ることができますか?その部分を把握するには、インストール時にいくつかの脚の作業が必要です。

  1. システムを構築するとき。すべてのドライブのシリアル番号を書き留め、そのドライブが挿入された場所の場所も書き留めます。たとえば、両面JBODケースでは、前/後、行、および列に注意する必要があります。
  2. FreeNASを起動したら、ウェブGUIで、「ストレージ>ボリューム/ビューディスク」に移動します。そのタブには、すべてのドライブとそのシリアル番号のリストが表示されます。前のリストにあるシリアル番号ごとに指定されたドライブ名に注意してください。シリアル番号が表示されない場合は、シェルに移動してsmartctl -a /dev/ada0 | grep ^Serialを入力する必要があります(「/ dev/ada0」をリストの各ドライブ名に置き換えます)
  3. 次に、シェルで、ドライブ名をすべてのgptid番号と照合する必要があります。したがって、glabel statusと入力すると、次のようになります...

    # glabel status
    
    CORRECT>glabel status (y|n|e|a)? yes    
                                          Name  Status  Components  
                                 ufs/FreeNASs3     N/A  ada0s3  
                                 ufs/FreeNASs4     N/A  ada0s4  
                                ufs/FreeNASs1a     N/A  ada0s1a
    gptid/616cddb6-7b7f-11e4-9585-de9b81338d40     N/A  ada0p2  
    gptid/630e1317-7b7f-11e4-9585-de9b81338d40     N/A  da1p1   
    gptid/6557b52d-7b7f-11e4-9585-de9b81338d40     N/A  da2p1   
    gptid/667a1318-7b7f-11e4-9585-de9b81338d40     N/A  da3p1   
    gptid/68cadf75-7b7f-11e4-9585-de9b81338d40     N/A  da4p1   
    
  4. 次に、すべてのgptid番号を書き込んで、ドライブ名と関連付け、したがってシリアル番号とその場所を関連付けます。 :「da3p1」のようなものが表示された場合、それはda3として識別されるドライブの1つをパーティション化します。 Web GUIのリストには、ディスクのラベル「da3」のみが表示されます。

これで、gptid番号xyzのディスクにエラーがあるというエラーが発生した場合、シートを参照して、どのドライブを使用しているかを知ることができます。プル/交換する必要があります。

これは元のポスターには遅すぎることを知っています。しかし、おそらく他の人はこれが役に立つと思うでしょう。

8
Craig

必要なのは、LSI(現在のAvago)のsas2ircユーティリティです。 LSIは、FreeBSD、Linux、およびWindwosのバージョンを維持しています。 FreeNASでは、FreeBSDバージョンが必要になります。

それを試すには、それを/ tmpディレクトリに置き、最初に実行可能にします。

ステップ1は、SAS HBA(例)のIDを検出することです。

/tmp# ./sas2ircu list
LSI Corporation SAS2 IR Configuration Utility.
Version 19.00.00.00 (2014.03.17)
Copyright (c) 2008-2014 LSI Corporation. All rights reserved.


         Adapter      Vendor  Device                       SubSys  SubSys
 Index    Type          ID      ID    Pci Address          Ven ID  Dev ID
 -----  ------------  ------  ------  -----------------    ------  ------
   0     SAS2008     1000h    72h   00h:04h:00h:00h      1000h   3020h
SAS2IRCU: Utility Completed Successfully.

ステップ2では、後で調べることができるすべてのデバイスのリストを生成します。

/tmp# ./sas2ircu 0 display > disklist.txt

ステップ3では、ディスクリストを調べています。次のようになります。

/tmp# vi disklist.txt
LSI Corporation SAS2 IR Configuration Utility.
Version 19.00.00.00 (2014.03.17)
Copyright (c) 2008-2014 LSI Corporation. All rights reserved.

Read configuration has been initiated for controller 0
------------------------------------------------------------------------
Controller information
------------------------------------------------------------------------
  Controller type                         : SAS2008
  BIOS version                            : 7.37.00.00
  Firmware version                        : 19.00.00.00
  Channel description                     : 1 Serial Attached SCSI
  Initiator ID                            : 0
  Maximum physical devices                : 255
  Concurrent commands supported           : 3432
  Slot                                    : 4
  Segment                                 : 0
  Bus                                     : 4
  Device                                  : 0
  Function                                : 0
  RAID Support                            : No
------------------------------------------------------------------------
IR Volume information
------------------------------------------------------------------------
------------------------------------------------------------------------
Physical device information
------------------------------------------------------------------------
Initiator at ID #0

Device is a Enclosure services device
  Enclosure #                             : 2
  Slot #                                  : 24
  SAS Address                             : 5003048-0-00d3-a87d
  State                                   : Standby (SBY)
  Manufacturer                            : LSI CORP
  Model Number                            : SAS2X36
  Firmware Revision                       : 0717
  Serial No                               : x36557230
  GUID                                    : N/A
  Drive Type                              : Undetermined

Device is a Enclosure services device
  Enclosure #                             : 3
  Slot #                                  : 0
  SAS Address                             : 5003048-0-00ca-7bfd
  State                                   : Standby (SBY)
  Manufacturer                            : LSI CORP
  Model Number                            : SAS2X28
  Firmware Revision                       : 0717
  Serial No                               : x36557230
  GUID                                    : N/A
  Drive Type                              : Undetermined

Device is a Hard disk
  Enclosure #                             : 4
  Slot #                                  : 0
  SAS Address                             : 5003048-0-00d3-a8cc
  State                                   : Ready (RDY)
  Size (in MB)/(in sectors)               : 1907729/3907029167
  Manufacturer                            : ATA
  Model Number                            : WDC WD20EARS-00M
  Firmware Revision                       : AB51
  Serial No                               : WDWCAZA1037887
  GUID                                    : N/A
  Drive Type                              : Undetermined

Device is a Hard disk
  Enclosure #                             : 4
  Slot #                                  : 1

ステップ4は、故障したドライブを識別します。ドライブで報告された情報の欠落または損傷によって、どれがわかるかがわかります。エンクロージャ#とスロット#を取得し、それらを使用して、手順5でトレイのLEDを点滅させます。エンクロージャ#4、スロット#0を見つけるには

 /tmp# ./sas2ircu 0 locate 4:1 ON

交換後にLEDをオフにするには:

/tmp# ./sas2ircu 0 locate 4:1 OFF

これが役に立てば幸いです!

5
Dimitar Boyn

ボリュームを見てください。

劣化したボリュームを選択します。

画面の下部には3つの選択肢があります... [ボリュームのステータス]をクリックします

ボリュームのクローズアップと、個々のハードドライブがada3p2、ada5p2、ada6p2、ada4p2などのように表示されます。

劣化したドライブを選択します。

画面の下部に2つのオプションが表示されます。ディスクを編集して交換

[ディスクの編集]を選択します

劣化したディスクのシリアル番号が表示されます。

FreeNASサーバーの電源を切り、そのディスクを探します。

2
wri7913

これは、個別のHDライトがあるケース(別名サーバーケース)があることを前提としています。

不良ドライブのリストを見つけます。例/dev/da9、/dev/sda...etc

GUIまたはFreeNAS端末コマンドを使用して、そのディスクをオフラインにします。

DDを実行して、ディスクが/ dev/nullに読み込まれるようにします。その間、サーバーの前面を見て、今、狂ったように点滅しているライトを探します。

Sudo dd if=/dev/da# of=/dev/null

ディスクの場所をメモし、DDコマンド(ctrl-c)をキャンセルしてから、交換方法を検討します。 freeNASの場合、新しいディスクをロードしてから、GUIの[Replace]ボタンをクリックして、そのプロセスを終了します。完了したら、不良ドライブを取り外し、それを使用して必要なことをすべて実行します。さらにテストし、安全に消去し、物理的に破壊し、保証修理に送ってください。

1
Easyanswer

私が見つけた最も簡単な方法。

ストレージをクリックし、ドライブを表示します。

sATAケーブルを1本引き抜きます。欠落しているドライブを含むラベルを、ディスクの別名ada1スティックラベルをドライブの側面に印刷します。

ドライブを再接続します。プリントラベルada2などから2番目のSATAケーブルを引っ張る

ドライブが故障すると、そのada2がわかります

0
Michael Harker