GNU/Linux >> Linux の 問題 >  >> Linux

LinuxコマンドラインからのI/Oレポート

ここEnableSysadminでの私の投稿をフォローしている場合は、私が以前にストレージサポートエンジニアとして働いていたことをご存知でしょう。その役割での私の多くのタスクの1つは、お客様が本番環境から専用のバックアップストレージアレイにバックアップを複製できるようにすることでした。多くの場合、本番環境からストレージへのデータ転送の速度について、お客様から連絡がありました。

さて、あなたがこれまでに支援に携わったことがあるなら、あなたは症状の多くの原因があり得ることを知っています。ただし、システムのスループットは、大量のデータ転送に大きな影響を与える可能性があります。すべてが順調である場合、私たちは何時間も話している、そうでない場合は...私は単一の複製ジョブが数ヶ月かかるのを見てきました。

Linuxには、あらゆる種類の問題に役立つツールが満載されていることを私たちは知っています。入出力の監視には、iostatを使用します 指図。 iostat sysstatの一部です パッケージであり、デフォルトですべてのディストリビューションにロードされるわけではありません。

インストールとベースラン

ここではRedHatEnterprise Linux 8を使用しており、以下のインストール出力を含めています。

[Red Hat Enterprise Linuxを試してみませんか?今すぐ無料でダウンロードしてください。 ]

:コマンドはインストール後に自動的に実行されます。

[root@rhel ~]# iostat
bash: iostat: command not found...
Install package 'sysstat' to provide command 'iostat'? [N/y] y
    
    
 * Waiting in queue... 
The following packages have to be installed:
lm_sensors-libs-3.4.0-21.20180522git70f7e08.el8.x86_64    Lm_sensors core libraries
sysstat-11.7.3-2.el8.x86_64    Collection of performance monitoring tools for Linux
Proceed with changes? [N/y] y
    
    
 * Waiting in queue... 
 * Waiting for authentication... 
 * Waiting in queue... 
 * Downloading packages... 
 * Requesting data... 
 * Testing changes... 
 * Installing packages... 
Linux 4.18.0-193.1.2.el8_2.x86_64 (rhel.test)     06/17/2020     _x86_64_    (4 CPU)
    
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           2.17    0.05    4.09    0.65    0.00   83.03
    
Device             tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda             206.70      8014.01      1411.92    1224862     215798
sdc               0.69        20.39         0.00       3116          0
sdb               0.69        20.39         0.00       3116          0
dm-0            215.54      7917.78      1449.15    1210154     221488
dm-1              0.64        14.52         0.00       2220          0

オプションなしで基本コマンドを実行する場合は、iostat CPU使用率情報を表示します。また、システム上の各パーティションのI/O統計も表示されます。出力には、合計と、読み取り操作と書き込み操作の両方の1秒あたりの値が含まれます。また、 tpsにも注意してください フィールドは、1秒あたりの転送数の総数です。 特定のデバイスに発行されます。

実際のアプリケーションは次のとおりです。使用されているハードウェアがわかっている場合は、そのハードウェアがどのパラメーター内で動作する必要があるかがわかります。この知識をiostatの出力と組み合わせると 、それに応じてシステムに変更を加えることができます。

インターバル実行

トラブルシューティングまたはデータ収集フェーズで、特定の間隔でレポートを実行すると便利です。これを行うには、最後に間隔(秒単位)を指定してコマンドを実行します。

[root@rhel ~]# iostat -m 10
Linux 4.18.0-193.1.2.el8_2.x86_64 (rhel.test)     06/17/2020     _x86_64_    (4 CPU)
    
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.94    0.05    0.35    0.04    0.00   98.62
    
Device             tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sda              12.18         0.44         0.12       1212        323
sdc               0.04         0.00         0.00          3          0
sdb               0.04         0.00         0.00          3          0
dm-0             12.79         0.43         0.12       1197        329
dm-1              0.04         0.00         0.00          2          0
    
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.24    0.00    0.15    0.00    0.00   99.61
    
Device             tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sda               0.00         0.00         0.00          0          0
sdc               0.00         0.00         0.00          0          0
sdb               0.00         0.00         0.00          0          0
dm-0              0.00         0.00         0.00          0          0
dm-1              0.00         0.00         0.00          0          0
    
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.20    0.00    0.18    0.00    0.00   99.62
    
Device             tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sda               0.50         0.00         0.00          0          0
sdc               0.00         0.00         0.00          0          0
sdb               0.00         0.00         0.00          0          0
dm-0              0.50         0.00         0.00          0          0
dm-1              0.00         0.00         0.00          0          0

上記の出力は30秒の実行からのものです。

Ctrl + Cを使用する必要があります 実行を終了します。

読みやすい

出力をクリーンアップして消化しやすくするには、次のオプションを使用します。

-m 出力をメガバイトに変更します。これは少し読みやすく、通常は顧客や管理者にとってより理解しやすいものです。

[root@rhel ~]# iostat -m
Linux 4.18.0-193.1.2.el8_2.x86_64 (rhel.test)     06/17/2020     _x86_64_    (4 CPU)
    
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.51    0.09    0.55    0.07    0.00   97.77
    
Device             tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sda              22.23         0.81         0.21       1211        322
sdc               0.07         0.00         0.00          3          0
sdb               0.07         0.00         0.00          3          0
dm-0             23.34         0.80         0.22       1197        328
dm-1              0.07         0.00         0.00          2          0

-p フォーカスする特定のデバイスを指定できます。このオプションを-mと組み合わせることができます 特にデバイスとそのパーティションに関する見栄えが良く、きちんと表示されます。

[root@rhel ~]# iostat -m -p sda
Linux 4.18.0-193.1.2.el8_2.x86_64 (rhel.test)     06/17/2020     _x86_64_    (4 CPU)
    
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.19    0.07    0.45    0.06    0.00   98.24
    
Device             tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sda              17.27         0.63         0.17       1211        322
sda2             16.83         0.62         0.17       1202        320
sda1              0.10         0.00         0.00          7          2

高度な統計

デフォルト値で必要な情報が得られない場合は、-xを使用できます。 拡張統計を表示するためのフラグ:

[root@rhel ~]# iostat -m -p sda -x 
Linux 4.18.0-193.1.2.el8_2.x86_64 (rhel.test)     06/17/2020     _x86_64_    (4 CPU)
    
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.06    0.06    0.40    0.05    0.00   98.43
    
Device            r/s     w/s     rMB/s     wMB/s   rrqm/s   wrqm/s  %rrqm  %wrqm r_await w_await aqu-sz rareq-sz wareq-sz  svctm  %util
sda             12.20    2.83      0.54      0.14     0.02     0.92   0.16  24.64    0.55    0.50   0.00    45.58    52.37   0.46   0.69
sda2            12.10    2.54      0.54      0.14     0.02     0.92   0.16  26.64    0.55    0.47   0.00    45.60    57.88   0.47   0.68
sda1             0.08    0.01      0.00      0.00     0.00     0.00   0.00  23.53    0.44    1.00   0.00    43.00   161.08   0.57   0.00

ここで注意を払うべきオプションのいくつかは次のとおりです:

  • avgqu-sz-デバイスに発行されたリクエストの平均キュー長
  • 待機-デバイスに発行されたI/Oリクエストが処理されるまでの平均時間(ミリ秒)
  • r_await-読み取りリクエストが処理される平均時間(ミリ秒)
  • w_await-書き込みリクエストが処理される平均時間(ミリ秒)

他にも値がありますが、注意が必要な値です。

シャットダウン

この記事では、iostatの使用を開始するために必要なほぼすべてについて説明します。 。他に質問がある場合、またはオプションの詳細な説明が必要な場合は、manページまたはお好みの検索エンジンを確認してください。その他のLinuxのヒントとコツについては、EnableSysadminに注目してください。

[無料のオンラインコース:Red HatEnterpriseLinuxの技術概要。 ]


Linux
  1. コマンドラインからリモートでLinuxワークスペースを構成する

  2. Linuxコマンドラインに関する8つのヒント

  3. Linuxコマンドラインからソフトウェアをインストールする方法

  1. LinuxコマンドラインからのGoogleドライブの使用

  2. コマンドラインからのLinuxサーバーの移行

  3. Linux コマンド ラインの基本 – コマンド ラインからのコマンドの実行

  1. Linux コマンドラインからの SHA-256 ハッシュの生成

  2. Linux コマンド出力の最初の行を省略する

  3. Linux コマンドラインからフォルダーをコピーするにはどうすればよいですか?