PHPプログラマーの松永です。
htopを使用し、メモリ使用率やCPU使用率など現在のシステム状況を表示し確認してみました。サーバープロセス管理の1手段として参考になれば幸いです。
htopはtopの強化版にあたり、topよりもグラフィカルな表示やプロセスの優先度を変更したりすることが出来ます。
バージョン2.0以降からはLinux, FreeBSD, OpenBSD and Mac OS Xに対応しているようです。
目次
環境
CentOS6.9
VirtualBoxとVagrantを使用し、CentOSを立てています。
htopのインストール
インストールはyum
のみで完了いたします。
sudo yum install htop
使用方法
top
と同じでhtop
と打つのみで起動いたします。
htop
topとhtopの表示比較
左がtop、右がhtopの表示です。
見栄えからして既に見やすいところが気に入っています。
メモリ、CPU、スワップの確認
メモリ、CPU、スワップの使用率は画面上部で確認することができます。
赤、緑、青、黄の4色があり、色が示すところは下記になっています。
CPU
- 青:優先度低
- 緑:使用量
- 赤:カーネル使用量
メモリ
- 緑:使用量
- 青:バッファ量
- 黄:キャッシュ量
スワップ
- 赤:使用量
メモリのキャッシュ削除時の挙動
試しにメモリのキャッシュを削除してみます。
sudo su
echo 3 > /proc/sys/vm/drop_caches
わずかではありますが、黄の部分が減少していることがわかります。
htopもtopと同様にリアルタイムで情報が更新されます。
プロセスの確認
プロセスは画面下部で確認することができます。
画面下部は通常のtopコマンドと同じように、プロセスがリスト表示されています。
上記キャプチャはメモリ使用量順でソートしています。
ソートなどの操作方法は、helpが便利です。
htopが起動している状態でh
またはF1
を押下するとhelpが開きます。
色々な表示
画面最下部のF1
やF2
などを使用すると色々な表示にすることがきます。
便利機能
十字キー
topでは、スクロールすることができず、表示できるプロセス数が画面に左右されていましたが、htopでは十字キーを使用し、画面に表示されていないプロセスまで確認することができます。
ユーザーごとのプロセス表示
u
を押下するとユーザー一覧が表示され、選択ユーザーが実行しているプロセスのみを表示することができます。
下記キャプチャはu
を押下した状態の表示です。
下記キャプチャはユーザーを選択した状態の表示です。
ユーザーの選択は十字キーを使用します。
例として自分を選択してみました。
zshを使用し、tmuxからhtopを使用しているということがわかります。
まとめ
htopを使用し、topがグラフィカルになったことでプロセス確認/監視作業のハードルを下げることができました。
全サーバーでhtopが使用できるわけではありませんが、自分自身も含め、topに苦手意識のある方は是非使ってみてください。