高可用性ソフトウェアRAID 1サーバーでsmartd(smartmontools)を使用してディスクの状態を監視する

高可用性ソフトウェアRAID 1サーバーでsmartd(smartmontools)を使用してディスクの状態を監視する

私のサーバーには、3つの同じSATA / 600 3TBドライブ(/dev/sda、、、/dev/sdb)があります/dev/sdc。ドライブはGPTを使用してパーティションを分割し、各ドライブには3つのパーティションがあります。

  • 1MB:ブートローダ用に予約されたパーティション
  • 1GB: RAID1 /dev/md0( ext2( /boot ) )
  • 3TB:RAID1 /dev/md1(暗号化ボリューム(LVM(ボリュームグループ(スワップ、/、/etc、/home...))))

3つのドライブのうちの1つはホットスペアで、残りの2つのドライブはRAIDセットでアクティブになります。正常に動作し、単一のハードドライブを取り外した後に起動できます。使いたいsmartd (smartmontoolsの一部)ドライブの状態を監視し、システムログにエラーを報告します(私はログの確認)。サーバーは可能な限り最高の可用性を持つ必要がありますが、テスト中にパフォーマンスが低下します。

出力は次のとおりですsmartctl -a /dev/sda

smartctl 5.41 2011-06-09 r3365 [x86_64-linux-3.2.0-4-amd64] (local build)
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Device Model:     WDC WD30EZRX-00MMMB0
Serial Number:    WD-WMAWZ0412093
LU WWN Device Id: 5 0014ee 2b19fbdcd
Firmware Version: 80.00A80
User Capacity:    3,000,592,982,016 bytes [3.00 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   8
ATA Standard is:  Exact ATA specification draft version not indicated
Local Time is:    Fri Sep 27 15:37:25 2013 CEST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x82) Offline data collection activity
                    was completed without error.
                    Auto Offline Data Collection: Enabled.
Self-test execution status:      (   0) The previous self-test routine completed
                    without error or no self-test has ever 
                    been run.
Total time to complete Offline 
data collection:        (50280) seconds.
Offline data collection
capabilities:            (0x7b) SMART execute Offline immediate.
                    Auto Offline data collection on/off support.
                    Suspend Offline collection upon new
                    command.
                    Offline surface scan supported.
                    Self-test supported.
                    Conveyance Self-test supported.
                    Selective Self-test supported.
SMART capabilities:            (0x0003) Saves SMART data before entering
                    power-saving mode.
                    Supports SMART auto save timer.
Error logging capability:        (0x01) Error logging supported.
                    General Purpose Logging supported.
Short self-test routine 
recommended polling time:    (   2) minutes.
Extended self-test routine
recommended polling time:    ( 255) minutes.
Conveyance self-test routine
recommended polling time:    (   5) minutes.
SCT capabilities:          (0x3035) SCT Status supported.
                    SCT Feature Control supported.
                    SCT Data Table supported.

SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0
  3 Spin_Up_Time            0x0027   148   148   021    Pre-fail  Always       -       9575
  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       95
  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x002e   200   200   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   099   099   000    Old_age   Always       -       820
 10 Spin_Retry_Count        0x0032   100   253   000    Old_age   Always       -       0
 11 Calibration_Retry_Count 0x0032   100   253   000    Old_age   Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       93
192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       65
193 Load_Cycle_Count        0x0032   196   196   000    Old_age   Always       -       12824
194 Temperature_Celsius     0x0022   119   116   000    Old_age   Always       -       33
196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Short offline       Completed without error       00%       787         -
# 2  Extended offline    Completed without error       00%       727         -

SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.

オフラインテストをサポートしているようです。を発行すると、smartctl -o onディスプレイsmartctl -cOffline data collection statusすでにに設定されています(0x82)smartctl -o off同じ値を出すとなります(0x02)

start_smartd=yes設定でサーバーを起動するようにsmartdを設定しました/etc/default/smartmontools/etc/smartd.confこのサーバーを編集してsmartdを設定することをどのように提案しますか?使用する各パラメータとその方法で使用する理由を説明してください。

現在の設定を回答として追加します。自由に活用してご自身の回答に改善してください。同じ設定を使用するより良い説明も改善されます!

ベストアンサー1

私は長い自己レビューからselect,contテストに切り替えました。長いセルフテストに似ていますが、一度にディスク1つずつです。したがって、長いセルフテストには1日以上かかることがありますが(3TBディスクの使用量が多い場合)、オプションのテストはサーバーが最も使用量の少ない毎晩実行され、忙しい時間にパフォーマンスを低下させることなく実際に完了することができます。

したがって、デフォルトでは、ディスク全体に対して毎月の長期セルフテストを実行し、1ヶ月間ディスク全体を対象に夜間選択テストを実行します。

しかし、そのためには少し準備が必要です。

  • smartd--savestates通常、ディスク自体はテストされた最後の領域を追跡しないため、このオプションを実行する必要があります。
  • 毎日テストするスライスサイズを確認する-t select,0-$sizeには、最初のオプションのセルフテスト()を手動で開始する必要があります。smartdサイズによって、テストにかかる時間とディスク全体のテスト期間が決まります。
  • 選択した$sizeがディスクサイズと一致することを確認してください。それ以外の場合は、スライスで終わるリスクが非常に少なくなります(最悪のシナリオは、ディスク上の単一のセクタのみをテストするために1日を無駄にすることです)。
  • この情報が実際にsavestatesファイルに保存されていることを確認する必要があります。時々、そうでない場合、テストは望む方法で実行されないからです。 (savestateファイルを直接編集することもオプションです)。
  • smartd.confファイルの構文は次のとおりです-s c/../.././01(この場合、毎日午前1時に実行されます)。

しかし、一度完了すると、プロセスは自動的に安定して進行します。ディスクの終わりに達すると、自動的に翌日から始まります。テストsmartctlselect,contマンページを読んでください。

長期テストまたはオプションのテストも優れていますが、短期テストまたはフル評価テストも実行する必要があります。これは短い時間しかかかり、一般的な問題を検出するのに役立ちます。

おすすめ記事