Linux 環境では、システム パフォーマンスを評価し、ストレージ サブシステムを最適化するために、ストレージ/ディスク I/O パフォーマンスを理解することが重要です。ストレージ/ディスク I/O パフォーマンスをテストすることで、ディスクの読み取りおよび書き込み速度、遅延、スループットなどの指標を決定できます。この記事では、Linux マシンでストレージ/ディスク I/O パフォーマンスをテストするために一般的に使用されるいくつかの方法を紹介します。
方法 1:dd
コマンドを使用する
dd
コマンドはファイルやデータをコピーするための一般的なツールであり、ストレージ/ディスク I/O パフォーマンスのテストにも使用できます。dd
コマンドを使用してストレージ/ディスク I/O パフォーマンスをテストする手順は次のとおりです。
-
ターミナル ウィンドウを開きます。
-
次のコマンドを実行して、ディスクの書き込みパフォーマンスをテストします。
dd if=/dev/zero of=testfile bs=1G count=1 oflag=direct
このコマンドは、testfile
という名前の 1GB ファイルを作成し、そこにゼロ値のデータを書き込みます。パラメーターを使用するとoflag=direct
、オペレーティング システムのキャッシュをバイパスし、ディスクの書き込みパフォーマンスを直接テストできます。
-
コマンドの実行が完了するまで待ちます。完了すると、
dd
コマンドは書き込まれたデータの量、かかった時間、書き込み速度などの情報を表示します。 -
次に、次のコマンドを実行して、ディスクの読み取りパフォーマンスをテストできます。
dd if=testfile of=/dev/null bs=1G count=1 iflag=direct
このコマンドは、以前に作成したファイルからデータを読み取り、デバイスtestfile
に転送します。/dev/null
また、iflag=direct
パラメーターを使用して、直接読み取りパフォーマンス テストのためにオペレーティング システムのキャッシュをバイパスします。
- コマンドの実行が完了するまで待ちます。完了すると、
dd
コマンドは読み取られたデータの量、かかった時間、読み取られた速度などの情報を表示します。
dd
コマンドの出力を分析することで、ディスクの書き込みおよび読み取りのパフォーマンス インジケーターを取得できます。
方法 2:fio
ツールを使用する
fio
これは、さまざまな種類の I/O 負荷をシミュレートし、詳細なパフォーマンス統計を提供できる強力なストレージ パフォーマンス テスト ツールです。fio
ツールを使用してストレージ/ディスク I/O パフォーマンスをテストする手順は次のとおりです。
-
ターミナル ウィンドウを開きます。
-
ツールをインストールします
fio
。yum
これらのツールは、や などのパッケージ マネージャーを使用してapt
インストールできますfio
。たとえば、CentOS では、次のコマンドを実行してインストールできます。
sudo yum install fio
インストールが完了したら、次のテスト手順に進むことができます。
fio
構成ファイル (例: )を作成しio_test.fio
、テキスト エディタで開きます。
vi io_test.fio
- 開いたファイルに以下を追加して、テストのパラメーターとロード タイプを定義します。
[global]
ioengine=libaio
direct=1
runtime=60
time_based
[job]
filename=/path/to/testfile
bs=4k
size=1G
rw=randread
numjobs=1
上記の構成では、ニーズに応じて調整できます。filename
テストで使用されるファイル パス、bs
ブロック サイズ、size
テスト データのサイズ、rw
読み取りおよび書き込みモード (ここではランダム読み取りに設定されています)、およびnumjobs
同時ジョブの数を示します。
-
ファイルを保存して閉じます。
-
次のコマンドを実行して
fio
テストを実行します。
fio io_test.fio
fio
テストは構成ファイルに対して実行され、テストの完了後に詳細なパフォーマンス統計が表示されます。
fio
テスト結果のスループット、IOPS、遅延指標を分析することで、ディスクの読み取りおよび書き込みパフォーマンスを理解できます。
方法 3:bonnie++
ツールを使用する
bonnie++
これは、スループット、ファイル操作速度、ファイル システムの同時実行パフォーマンスやその他の指標をテストできる、もう 1 つの人気のあるストレージ パフォーマンス テスト ツールです。bonnie++
ツールを使用してストレージ/ディスク I/O パフォーマンスをテストする手順は次のとおりです。
-
ターミナル ウィンドウを開きます。
-
ツールをインストールします
bonnie++
。yum
や などのパッケージ マネージャーを使用してapt
インストールできますbonnie++
。たとえば、CentOS では、次のコマンドを実行してインストールできます。
sudo yum install bonnie++
- テスト ディレクトリを作成し、次のように入力します。
mkdir bonnie_test && cd bonnie_test
- 次のコマンドを実行して
bonnie++
テストを実行します。
bonnie++
bonnie++
テストは現在のディレクトリで実行され、ファイルの書き込み速度、ファイルの読み取り速度、ランダム ファイルの作成速度など、さまざまなパフォーマンス指標が表示されます。
テスト結果を分析することでbonnie++
、ディスク I/O パフォーマンスに関する詳細な情報を取得できます。
結論は
ストレージ/ディスク I/O パフォーマンスをテストすることで、Linux マシンのディスク読み取りおよび書き込み速度、遅延、スループットなどの重要な指標を理解できます。この記事では、ストレージ/ディスク I/O パフォーマンス テストのためのdd
コマンド、fio
ツール、およびツールの使用方法について説明します。bonnie++
単純なテストであっても、より複雑な負荷テストであっても、これらの方法は、システムのストレージ パフォーマンスを評価し、ストレージ サブシステムを最適化するのに役立ちます。
ストレージ/ディスク I/O パフォーマンス テストを行うときは、常に注意して次の点に従うようにしてください。
- データの損失や破損を防ぐために、パフォーマンス テストを実行する前に、テスト対象のディスクに重要なデータが保存されていないことを確認してください。
- テストがニーズと環境に適していることを確認するために、テスト ツールとテスト パラメーターを慎重に選択してください。
- テスト中は、過負荷状態を避けるために、システム リソースの使用状況、特に CPU、メモリ、ディスクの使用状況を監視します。
- 複数のテストを実行し、平均を計算して、より正確なパフォーマンス指標を取得します。
- より複雑な負荷テストの場合は、専門的なパフォーマンス テスト ツールと方法を使用して、実際のワークロードとシナリオをシミュレートできます。
テスト方法を合理的に選択し、テスト結果を正しく解釈することで、Linux マシンのストレージ/ディスク I/O パフォーマンスを深く理解し、必要に応じて最適化および調整できます。