はじめに
ネットワーク不具合調査の時に活躍するtcpdump
コマンド、便利ですよね。しかしコマンドを実行して標準出力に結果を流した場合、使い方によっては物凄い勢いで結果が画面に流れていくため、「もしかしてこれってサーバへの負荷が凄いのでは」と心配になることがあります。
サーバ負荷は環境によって異なりますが、今回は簡単に試したかったのでZabbixサーバ上でtcpdumpを流しながら自分自身の負荷を測定することにしました。
環境
IDCFクラウド Light.S1 (1CPU、メモリ1GB)
CentOS 7.4 + Zabbix 3.4.6 + MariaDB 5.5.56 + Apache 2.4.6
実験方法
ノートPCからZabbixサーバにSSHログインをし、Zabbixサーバ上で自分自身のリソースを取得した状態で、tcpdump -i any
を実施します。
キャプチャパケットが画面に表示される、SSH通信に載せて結果がノートPCに送信される、そのSSHパケットが画面に表示される、……でループして画面が凄い速さで流れます。
結果
Load average
1分平均で0.1未満から最大0.4程度に。ちょっと増えましたがまだまだ余裕です。
CPU使用率
idle timeが98%から85.5%へ。13%ほど使用率が増えました。見ての通り余裕です。
メモリ使用率
若干使っているかな? という感じです。ほぼ誤差ですね。
おわりに
結論としては、CPUに若干の負荷がかかる程度でした。
ログが凄い勢いで流れますが、極端に怖がる必要はなさそうです。
環境によって結果は異なると思いますので、実際に使う時はサーバの負荷を見ながらやりましょう。