web-dev-qa-db-ja.com

スマートロングテスト-ビジー状態のサーバーのパフォーマンスへの影響は何ですか?

RAID1セットアップでビジーなサーバーがあります。アプリケーション(PHPで実行)は、データベース(MariaDB)に対して非常に読み取り/書き込みが集中します。

Cronジョブは毎日smartctlショートテストを実行し、smartctl -Hmdadm -Dの出力をチェックします。

時々長いテストを実行したいのですが、パフォーマンスへの影響が心配です。完了するまでに数時間かかる場合があることを読みました。実行中にサーバーのパフォーマンスが低下する場合、ユーザーは5時間以上影響を受けます。

だから、ここにいくつかの質問があります:

1)長いスマートテストは通常​​、ユーザーにとって重要なパフォーマンスに影響を与えますか?

2)RAID 1を使用していて短いテストを行っているので、長いテストはまだ必要ですか?

3)サーバーのパフォーマンスに問題が発生していることがわかった場合、長いテストを停止する方法はありますか?

2
Nuno
  1. 場合によります。 (ムハハハ)何に?アプリケーションがディスクを使用する量と、アプリケーションが利用できるキャッシュの量。ここには魔法はありません。ドライブがテストされている場合、そうでない場合と同じ最大速度と低遅延でサービスを提供することはできません。ただし、最小遅延要件がテストの影響よりも小さい場合は、アプリケーションへの影響という点で洗浄になります。
  2. おそらくそうではありません。大企業のストレージ会社(EMC、IBM、NetAppなど)は、M(ean) T(ime) B(etween) F(ailures)、ドライブのファームウェアが問題を報告するのを待つだけではありません。短いテストでは、最初に失敗する可能性のあるすべてのものをテストします。長いテストは、短いテストと同じテストを実行しますが、時間制限はありません。すべてのドライブに障害が発生すると想定しますが、保証期間が終了すると、ドライブの可能性が高くなります。
  3. はい、ドライブがオフライン収集の中止(または「一時停止」)をサポートしていることを条件とします。

'smartctl(8)'のマニュアルページから:

       -X, --abort
              Aborts  non-captive  SMART  Self  Tests.  Note that this command
              will abort the Offline Immediate Test routine only if your  disk
              has the "Abort Offline collection upon new command" capability.

(「新しいコマンドでオフライン収集を一時停止」が表示された場合も中止できると思います。マニュアルページを更新する必要があると思います。)その機能は次の方法で確認できます。

smartctl -x <device>
1
Jesse Adelman