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

iftopを使用したオンデマンドのLinuxインターフェース分析

誰がすべての帯域幅を使い果たしているのか、何で使用しているのかを知る必要がある状況に陥ったことがありますか?私は確かに持っています。その質問に答えるのに役立つツールを紹介したいと思います。サポート管理者として働いていたとき、インターフェイスでボトルネックになっているレプリケーションジョブを実行しようとしていることに日常的に気づきました。インターフェイスと関連するハードウェアは、10Gb以上にプッシュすることができました。しかし、私はその約3Gbしか見ませんでした。それで、特に専用インターフェースで、誰がすべての帯域幅を使い果たしているのかという疑問が生じます。または、別の問題が発生していますか?

最良のトラブルシューティング手法は、多くの潜在的な結果の1つを排除するために実行する迅速で簡単な手順です。 iftopと入力します 。

それは何をしますか?

topやhtopと同じように、iftop コマンドは、システムのリソース使用量に使用されます。具体的には、アクティブなイーサネットインターフェイスの帯域幅を監視します。上記の状況に適用すると、iftopを実行できます。 コマンドを使用して、データレプリケーションインターフェイス全体で実際に帯域幅を使用しているものを確認します。これは、インターフェイス自体のトラブルシューティングを行って結論に達するまでにかかる時間を考慮すると、非常に効率的です。問題はありません。インターフェースでのアクティビティが多すぎるだけです。

この実用的なツールをインストールして使用するプロセスを見てみましょう。

インストール

iftopをインストールする前に ツールには、いくつかの前提条件パッケージが必要です。 libpcapをインストールする必要があります (これは、インターフェースデータをリアルタイムでキャプチャするために使用されます)、およびlibncurses (端末から独立したテキストベースのインターフェイスを構築するために使用されるAPI)。このツールのデモには、Fedora32VMを使用しています。別のOSを使用している場合、インストールは若干異なります。インストールするには:

    [tcarrigan@client ~]$ sudo yum -y install libpcap-devel ncurses ncurses-devel
    [sudo] password for tcarrigan: 
    Fedora 32 openh264 (From Cisco) - x86_64                      4.8 kB/s | 989  B     00:00    
    Fedora 32 openh264 (From Cisco) - x86_64                      3.3 kB/s | 2.5 kB     00:00    
    Fedora Modular 32 - x86_64                                     28 kB/s |  15 kB     00:00    
    Fedora Modular 32 - x86_64 - Updates                           38 kB/s | 7.6 kB     00:00    
    Fedora Modular 32 - x86_64 - Updates                          189 kB/s | 1.0 MB     00:05    
    Fedora 32 - x86_64 - Updates                                   46 kB/s |  10 kB     00:00    
    Fedora 32 - x86_64 - Updates                                  221 kB/s |  12 MB     00:54    
    Fedora 32 - x86_64                                             40 kB/s |  15 kB     00:00    
    Package ncurses-6.1-15.20191109.fc32.x86_64 is already installed.
    Dependencies resolved.
    ==============================================================================================
     Package                  Architecture   Version                         Repository      Size
    ==============================================================================================
    Installing:
     libpcap-devel            x86_64         14:1.9.1-3.fc32                 fedora         136 k
     ncurses-devel            x86_64         6.1-15.20191109.fc32            fedora         503 k
    Installing dependencies:
     ncurses-c++-libs         x86_64         6.1-15.20191109.fc32            fedora          39 k
    
    Transaction Summary
    ==============================================================================================
    Install  3 Packages
    
    Total download size: 678 k
    Installed size: 1.2 M
    Downloading Packages:
    (1/3): ncurses-c++-libs-6.1-15.20191109.fc32.x86_64.rpm        55 kB/s |  39 kB     00:00    
    (2/3): libpcap-devel-1.9.1-3.fc32.x86_64.rpm                  159 kB/s | 136 kB     00:00    
    (3/3): ncurses-devel-6.1-15.20191109.fc32.x86_64.rpm          174 kB/s | 503 kB     00:02    
    ----------------------------------------------------------------------------------------------
    Total                                                         181 kB/s | 678 kB     00:03     
    Running transaction check
    Transaction check succeeded.
    Running transaction test
    Transaction test succeeded.
    Running transaction
      Preparing        :                                                                      1/1 
      Installing       : ncurses-c++-libs-6.1-15.20191109.fc32.x86_64                         1/3 
      Installing       : ncurses-devel-6.1-15.20191109.fc32.x86_64                            2/3 
      Installing       : libpcap-devel-14:1.9.1-3.fc32.x86_64                                 3/3 
      Running scriptlet: libpcap-devel-14:1.9.1-3.fc32.x86_64                                 3/3 
      Verifying        : libpcap-devel-14:1.9.1-3.fc32.x86_64                                 1/3 
      Verifying        : ncurses-c++-libs-6.1-15.20191109.fc32.x86_64                         2/3 
      Verifying        : ncurses-devel-6.1-15.20191109.fc32.x86_64                            3/3 
    
    Installed:
      libpcap-devel-14:1.9.1-3.fc32.x86_64         ncurses-c++-libs-6.1-15.20191109.fc32.x86_64   
      ncurses-devel-6.1-15.20191109.fc32.x86_64   
    
    Complete!

前提条件のパッケージをインストールしたら、実際のiftopをインストールできます。 ツール:

    [root@client ~]# dnf install iftop
    Last metadata expiration check: 0:01:45 ago on Thu 08 Oct 2020 06:22:52 PM EDT.
    Package iftop-1.0-0.23.pre4.fc32.x86_64 is already installed.
    Dependencies resolved.
    Nothing to do.
    Complete!

[読者も気に入りました:11のLinuxコマンドなしでは生きていけません]

基本的な使用法

必要なパッケージをすべてインストールしたら、iftopを実行します 提示された出力と情報の感触をつかむため。オプションがない場合は、iftop デフォルトのインターフェース(ほとんどの場合eth0)に対して実行されます。

デフォルトのコマンドを実行するには:

[root@client ~]# iftop

左から右に、次の点に注意してください。

  • 解決されたホスト名(ソースまたは宛先、矢印で示されています)
  • 平均データ転送速度(2、10、40秒間隔)

出力の下部に、TX(転送済み)RX(受信済み)TOTAL伝送速度が表示されます。累積合計と平均、およびピーク数の数値もあります。

具体的に

このツールは強力ですが、忙しい環境では多くの情報を投げかける可能性があります。この問題を回避するために、特定のオプションを使用して、表示される出力をフィルタリングします。上記のシナリオでは、使用しようとした特定のレプリケーションインターフェイスに関する分析のみを確認したいと思います。特定のインターフェースを確認するために、-iを追加します。 オプション。

[tcarrigan@client ~] $ sudo iftop -i enp0s3

ここでは、以前と同じ情報が表示されます。ただし、これはインターフェースenp0s3のみを対象としています。 。

IP情報を表示する場合は、-nを使用します ホスト名の解決を無効にするフラグ。

[tcarrigan@client ~] $ sudo iftop -n

上のスクリーンショットから、IPアドレスが表示されていることがわかります。これは、ホスト名が混乱する可能性がある大規模な環境でのトラブルシューティングのはるかに簡単な方法です。

提示された情報を実際にダイヤルインするために利用できる他のさまざまなオプションがあります。次のリストは、man iftopを実行することで見つけることができるmanページから直接取得されます。 。

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

概要

ここまで進んだら、iftopが提供するユーティリティを見たことでしょう。 および対象となる使用法のオプション。使用されている帯域幅と、それがどこに行き来するのかを把握する必要がある場合は、iftop 強力な資産になる可能性があります。利用可能なオプションの膨大な配列を使用して、必要なだけ具体的に出力をフィルタリングできるため、これをsysadminツールベルトに保持するのは簡単です。


Linux
  1. aptによるLinuxパッケージ管理

  2. rdiff-backupの新機能

  3. IFTOP ガイド:Linux でネットワーク インターフェイス帯域幅の使用状況を表示する

  1. xtermを使い続ける理由

  2. LinuxでのJQコマンドと例

  3. Linuxでhostapdと同時にRTL8188CUS APおよびクライアントモード?

  1. Ardourを使用してLinuxで音楽を作成する

  2. LinuxでAudacityを使用してオーディオを編集する

  3. Flatpakを使用してLinuxにアプリをインストールする