Zabbix + Iostat:ディスクサブシステムの監視

Zabbix + Iostat:ディスクサブシステムの監視。

画像

なんで?

ディスクサブシステムはサーバーの重要なサブシステムの1つであり、コンテンツの配信速度やデータベースの応答速度など、ディスクサブシステムの負荷レベルに依存することが非常に多くあります。 これは主にメールまたはファイルサーバー、データベースサーバーに適用されます。 一般に、ディスクパフォ​​ーマンスインジケータを監視する必要があります。 ディスクサブシステムのパフォーマンスグラフに基づいて、コックが突っ込む前に容量を増やす必要があるかどうかを判断できます。 はい。開発者の作業がワークロードのレベルに影響を与えるため、リリースごとに一見するだけで役立ちます。



カットの下で、監視と設定方法について。



依存関係:

監視は、zabbixエージェントと2つのユーティリティ:awkおよびiostat(sysstatパッケージ)を介して実装されます。 デフォルトでawkにディストリビューションが付属している場合は、 sysstatパッケージとともにiostatをインストールする必要があります (ここではSebastien Godardと同僚に感謝します)。



既知の制限:

監視には、バージョン9.1.2以降のsysstatが必要です。 「iostatの拡張統計にr_awaitおよびw_awaitフィールドを追加」という非常に重要な変更があります。 そのため、CentOSなど、一部のディストリビューションでは、sysstatのわずかに「安定した」バージョンであり、機能が少ないバージョンでは注意が必要です。

zabbixのバージョン(2.0または2.2)から開始する場合、質問は基本的なものではなく、両方のバージョンで機能します。 1.8では機能しません。 低レベル検出を使用しました。



機会 (実用性が低下するため、純粋に主観的):



一般に、ご覧のとおり、iostatにあるすべてのメトリックはここから入手できます(このユーティリティに不慣れな方は、man iostatを調べることを強くお勧めします)。



利用可能なチャート:

グラフはデバイスごとに描画され、LLDは正規表現「(xvd | sd | hd | vd)[az]」に該当するデバイスを検出するため、ドライブの名前が異なる場合は、適切な変更を簡単に加えることができます。 このような規則は、他のパーティション、LVMボリューム、MDRAIDアレイなどの親になるデバイスを検出するために行われます。 一般的に、収集しすぎないようにします。 少し気が散るので、グラフのリスト:



アナログと違い:

zabbiksには、同様の監視用のボックスオプションがあります。これらはキーvfs.dev.readおよびvfs.dev.writeです。 それらは優れており、うまく機能しますが、iostatよりも情報量が少なくなります。 たとえば、iostatには遅延や使用率などのメトリックがあります。

Michael Nomanからも同様のテンプレートがありますが、私の意見では、違いは1つだけです。古いバージョンのiostatに焦点を合わせています。



入手先:

したがって、監視は、エージェントの構成ファイル、データを収集/受信するための2つのスクリプト、およびWebインターフェースのテンプレートで構成されます。 これらはすべてGithubのリポジトリで利用できるため、利用可能な任意の方法(git clone、wget、curlなど)で監視対象のマシンにダウンロードし、次の項目に進みます。



設定方法:



これですべての準備が整ったので、エージェントを起動して監視サーバーに移動し、コマンドを実行します(agent_ipを置き換えることを忘れないでください)。

# zabbix_get -s agent_ip -k iostat.discovery
      
      





したがって、監視サーバーからiostat.confが読み込まれて情報を提供することを確認すると同時に、LLDが機能していることを確認します。 応答は、検出されたデバイスの名前を含むJSONを返します。 答えが得られなかった場合、何かが間違っていました。



また、zabbixサーバーがエージェント(iostat.collect)による一部のアイテムの実行を待たないという点もあります。 これを行うには、タイムアウト値を増やします。



Webインターフェースの構成方法:

これで、iostat-disk-utilization-template.xmlテンプレートが残ります。 Webインターフェースを介して、テンプレートセクションにインポートし、ホストに割り当てます。 ここではすべてが簡単です。 約1時間待機するようになりました。この時間はLLDルールで設定されます(構成可能)。 または、Iostatセクションで、監視対象のホストの最新データを確認できます。 値が表示されたら、グラフセクションに移動して最初のデータを見ることができます。



最後に、localhost))))からのグラフの上位3つのスクリーンショット:

最新データの直接データ:

画像



応答性チャート(遅延):

画像



廃棄スケジュールとIOPS:

画像



それだけです、ご清聴ありがとうございました。

まあ、伝統によれば、この機会を利用して、私はセルゲイ・フェドロフ(アレクシーヴィッチ)に敬意を表します:)



All Articles