Linuxで総読み込みと総書き込みIOPSを取得するには?

Linuxで総読み込みと総書き込みIOPSを取得するには?

コマンドラインを使用するか、プログラムでLinuxで個別に読み取り/書き込みIOPSを取得する方法は?sysstatパッケージをインストールしました。

sysstatpackageコマンドを使用して個別に計算する方法を教えてください。

または、ファイルシステムを使用して計算できますか?

前任者: /procまたは/sys/dev

答え1

iostatsysstatパッケージの一部であり、IOPS全体を表示したり、必要に応じて読み取り/書き込みで区切って表示する機能があります。

iostatデバイス情報ページのみを表示するには-dフラグを使用して実行し、詳細情報(別々の読み取り/書き込み統計)を表示するには-xフラグを使用して実行します。情報を希望するデバイスを指定するには、コマンドラインに後ろに追加するだけです。

出力を理解するには、実行してiostat -dx要約を見てください。また、これを使用してiostat -dx 1継続的に更新された出力を表示することもできます。これは、トラブルシューティングやリアルタイム監視に役立ちます。

を使用すると、awkフィールド4は以下を提供します。読み取り/秒、フィールド 5 は以下を提供します。書き込み/秒

読書/秒:

iostat -dx <your disk name> | grep <your disk name> | awk '{ print $4; }'

1秒あたりの書き込みのみ可能:

iostat -dx <your disk name> | grep <your disk name> | awk '{ print $5; }'

読み取り/秒と書き込み/秒はスラッシュで区切られます。

iostat -dx <your disk name> | grep <your disk name> | awk '{ print $4"/"$5; }'

フルIOPS(ほとんどの人が言う内容):

iostat -d <your disk name> | grep <your disk name> | awk '{ print $2; }'

たとえば、私のホームドライブ/ dev / sdaを使用して最後のコマンドを実行することは次のとおりです。

dan@daneel ~ $ iostat -dx sda | grep sda | awk '{ print $4"/"$5; }' 15.59/2.70

お願いします。いいえまた、実行するにはルートが必要なので、権限のないユーザーにも役立ちます。

要約:sdaIOPS全体にのみ興味がある場合は、次のコマンドを使用して次のような結果を得ることができますsda

iostat -d sda | grep sda | awk '{ print $2; }'

IOPSを追加する場合みんなデバイスでは awk を再利用できます。

iostat -d | tail -n +4 | head -n -1 | awk '{s+=$2} END {print s}'

これにより、次のような出力が生成されます。

dan@daneel ~ $ iostat -d | tail -n +4 | head -n -1 | awk '{s+=$2} END {print s}' 18.88

関連情報