このsmartctl(smartmon)データの解釈方法


20

Linuxサーバーが3年にわたって頻繁に使用されています。その上で多数の仮想化サーバーを実行していますが、一部は正常に動作しておらず、かなりの期間、サーバーのio容量を超えてiowaitが悪化しました。4個の500GBバラクーダSATAドライブが3com RAIDコントローラーに接続されています。1ドライブにはOSがあり、他の3ドライブはセットアップraid-5です。

ドライブの状態と、それらがアクティブに故障しているかどうかについての議論があります。

これは、4つのディスクのうちの1つに対する出力の一部です。それらはすべて比較的類似した統計を持っています:

SMART Attributes Data Structureのリビジョン番号:10
しきい値を持つベンダー固有のSMART属性:
ID#ATTRIBUTE_NAMEフラグ値最悪のしきい値タイプWHEN_FAILED RAW_VALUEが更新されました
  1 Raw_Read_Error_Rate 0x000f 118 099 006 Pre-fail Always-169074425
  3 Spin_Up_Time 0x0003 095 092 000事前失敗常に-0
  4 Start_Stop_Count 0x0032 100100020 Old_age Always-26
  5 Reallocated_Sector_Ct 0x0033 100100 036事前失敗常に-0
  7 Seek_Error_Rate 0x000f 077 060 030 Pre-fail Always-200009354607
  9 Power_On_Hours 0x0032 069 069 000 Old_age Always-27856
 10 Spin_Retry_Count 0x0013 100100 097事前失敗常に-1
 12 Power_Cycle_Count 0x0032 100100020 Old_age Always-26
184 Unknown_Attribute 0x0032 100 100 099 Old_age常に-0
187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always-0
188 Unknown_Attribute 0x0032 100 100 000 Old_age Always-1
189 High_Fly_Writes 0x003a 100 100 000 Old_age常に-0
190 Airflow_Temperature_Cel 0x0022 071 060 045 Old_age Always-29(ライフタイム最小/最大26/37)
194 Temperature_Celsius 0x0022 029 040 000 Old_age Always-29(0 21 0 0)
195 Hardware_ECC_Recovered 0x001a 046 033 000 Old_age Always-169074425
197 Current_Pending_Sector 0x0012 100 100 000 Old_age常に-0
198 Offline_Uncorrectable 0x0010 100 100 000 Old_ageオフライン-0
199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Always-0

SMARTエラーログバージョン:1
エラーは記録されません

これについての私の解釈は、不良セクタや、いずれかのドライブがアクティブに故障しているという他の兆候はなかったということです。

ただし、高いRaw_Read_Error_RateとSeek_Error_Rateは、ドライブが死んでいることを示すものとして指摘されています。


1
ここに説明があります(再投稿するには長すぎますので、リンクをたどってください):lime-technology.com/wiki/Understanding_SMART_Reportsリンクがダウンした場合、いくつかの重要な引用:「これは、現在のエラー率の指標です低レベルの物理セクター読み取り操作。通常の操作では、常に少数のエラーがあります[...]ドライブに問題はありません。」「RAW_VALUE番号を完全に無視してください。生の値を報告するのはSeagateだけです。これは、生の読み取りエラーの数のようですが、完全に無視する必要があります。」
コンラッドガジェウスキ

回答:


7

私の経験では、シーゲイトにはこれら2つのSMART属性の奇妙な数字があります。シーゲイトを診断するとき、私はそれらを無視し、再配置セクター数のような他のフィールドをより詳しく見る傾向があります。もちろん、疑わしい場合はドライブを交換してください。ただし、新品のシーゲイトでさえ、これらの属性の数が多くなります。


58

Seagateディスク(およびおそらくWDの古いディスク)の場合、Seek_Error_RateおよびRaw_Read_Error_Rateは48ビットの数値で、最上位の16ビットはエラーカウントで、下位32ビットは操作の数です。

% python
>>> 200009354607 & 0xFFFFFFFF
2440858991
>>> (200009354607 & 0xFFFF00000000) >> 32
46

したがって、ディスクは2440858991シークを実行し、そのうち46が失敗しました。Seagateドライブに関する私の経験では、エラー数が1000を超えると失敗する傾向があります。YMMV。


7
これについては、私が最初に質問を提起したときにその情報があったことを望みます。
gview 14年

1
これは非常に便利です。パニックから私を救った。
ハルサファー

誰かがこの分離で48ビットの数字であることを確認するためのリンクを提供できますか?この数字を確認したい
iuridiniz

9

「シークエラー率」と「生の読み取りエラー率」RAW_VALUESは、Seagateのサポート以外の人にとっては実質的に意味がありません。他の人が指摘したように、「再割り当てされたセクター数」などのパラメーターの生の値やドライブのエラーログのエントリは、障害の可能性が高いことを示す可能性が高くなります。

ただし、ゲージとして読み取ることを目的としたVALUE、WORST、およびTHRESH列の解釈されたデータを確認できます。

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH
  7 Seek_Error_Rate         0x000f   077   060   030

現在、シークエラー率は「77%良好」と見なされており、「30%良好」に達するとSMARTによって問題として報告されます。かつては「60%良好」という低さでしたが、その後は魔法のように回復しました。解釈された値は内部的にドライブのSMARTロジックによって計算され、正確な計算はメーカーによって公開される場合とされない場合があり、通常はユーザーが微調整することはできません。

個人的には、エラーログエントリを含むドライブを「失敗」と見なし、エラーが発生したらすぐに交換を求めます。しかし、全体として、SMARTデータは、Google発行し研究論文が明らかにしたように、障害予測のかなり弱い指標であることが判明しました。


4

私はこの議論が少し古いことに気付きましたが、2セントを追加したいと思います。スマート情報は、事前障害の非常に良い指標であることがわかりました。スマートしきい値が作動したら、ドライブを交換します。それがそれらのしきい値の目的です。

ほとんどの場合、不良セクターが見られます。これは、ドライブが故障し始めている確実な兆候です。SMARTは何度も助けてくれました。ソフトウェアRAID 1を使用していますが、故障したドライブを単に交換してアレイを再構築するだけなので、非常に役立ちます。

また、毎週短いテストと長いセルフテストを実行しています。

smartctl -t short /dev/sda
smartctl -t long /dev/sda 

または、/ etc / smartd.confを追加して、エラーがある場合にメールで通知する

/dev/sda -s L/../../3/22 -I 194 -m someemail@somedomain
/dev/sdb -s L/../../7/22 -I 194 -m someemail@somedomain

ログウォッチをインストールし、ルートをメールアドレスにリダイレクトし、ログウォッチから毎日のメールを確認してください。SMARTDのトリップフラグはそこに表示されますが、だれも定期的に監視していない場合は役に立ちません。


1

はい、これらのフィールドは悪いように見えますが、smartctrlでデータを読んだ場合、smartctrlで報告された情報を信用しません(私のテストマシンには、かなり前に死んでいるはずのドライブがあります)。 high iowaitとドライブは3歳です。ドライブを変更するにはこれで十分です。


1
さまざまな理由により、ハードウェアへの投資を最大化する必要があります。iowaitは、ばかげた負荷と、ボックスのセットアップ時に行ったいくつかの設定ミスに関係していました。
Gビュー

0

この投稿でネクロマンシーを犯してすみませんが、私の経験では、Seagateドライブの「Raw Read Error Rate」フィールドと「Hardware ECC Recovered」フィールドは文字通りあらゆる場所に行き、その兆候の範囲で絶えず増加します'プロセスを再び続行するには、ゼロに戻って循環します。私はSeagate ST9750420ASを持っていますが、これは初日からその問題を抱えていましたが、3500時間以上の使用を経てもかなりの効果を発揮します。

あなたのケースで実行している場合、それらのフィールドは安全に無視できると思います。2つのフィールドが同じ数を報告し、常に同期していることを確認してください。そうでない場合...まあ...それは実際には問題を意味するかもしれません。


0

この回答の計算を自動化するには、オンラインJavaScript計算機を使用します。

https://yksi.ml/

これにより次のことがわかります。

  • 操作の総数
  • 失敗した操作の数

この計算機は、シーゲイトのものに有効です。

  • エラー率を求める
  • 生の読み取りエラー率
  • ハードウェアECCが回復しました

正規化(0〜100の値)の計算の詳細については、この記事を参照してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.