【Ubuntu】Glancesを用いたブラウザによるリソース監視

サーバー

「リソース監視をサーバーにログインせずに簡単に行いたい」
「GlancesをWebモードで起動して、ブラウザでリソースを監視したい」

このような場合には、この記事の内容が参考となります。
この記事では、ブラウザによるリソース監視の方法を解説しています。

本記事の内容

  • ブラウザによるリソース監視とは?
  • ブラウザによるリソース監視のために必要なモノ
  • ブラウザによるリソース監視の動作確認
  • ブラウザによるリソース監視のセキュリティ対策

それでは、上記に沿って解説していきます。

ブラウザによるリソース監視とは?

最初に、リソース監視を定義しておきます。
ここで言うリソース監視とは、CPUやメモリなどの利用率を監視することです。

例えば、Glancesというツールを利用すれば以下を監視することが可能になります。

  • CPU
  • Memory
  • Load
  • Process list
  • Network interface
  • Disk I/O
  • IRQ / Raid
  • Sensors
  • Filesystem (and folders)
  • Docker
  • Monitor
  • Alert
  • System info
  • Uptime
  • Quicklook (CPU, MEM, LOAD)

イメージとしては、以下の画面です。

この画面は、Glancesをターミナル上で起動させています。
Linuxユーザーであれば、topコマンドと同じようなモノだと考えればよいでしょう。
それのパワーアップ版が、Glanceということです。

Glanceを使えば、このようなリソース監視をブラウザでも可能になります。
通常は、ターミナルを起動してコマンドでチマチマするのが基本です。

その際、各サーバーにSSHでアクセスする必要があります。
ログインできたら、コマンドをチマチマという感じです。

しかし、そんな面倒なことをする必要がありません。
Chromeなどのブラウザで簡単に確認できるのです。

また、スマホでも確認できるように、レスポンシブ対応となっています。

以上、ブラウザによるリソース監視について説明しました。
次は、ブラウザによるリソース監視のために必要なモノを説明します。

ブラウザによるリソース監視のために必要なモノ

実現方法は、一つに限りません。
今回は、極力簡単に実現できる方法を説明します。

そのためには、Pythonが動くことが前提となります。
インストールするのは、次の2つのライブラリだけです。

  • Glances
  • Bottle

Glancesは、上記ですでに取り上げています。
Glancesのインストール方法を含めての詳細は、次の記事をご覧ください。

そして、Bottleというライブラリが必要になります。
Bottleについては、次の記事で解説しています。

上記の記事を参考にして、これらを用意します。
この時点でインストール済みのパッケージは、以下のようになります。

$ pip list
Package    Version
---------- -------
bottle     0.12.19
defusedxml 0.7.1
future     0.18.2
Glances    3.2.5
packaging  21.3
pip        22.1.1
psutil     5.9.1
pyparsing  3.0.9
setuptools 62.3.2
wheel      0.36.2

以上、ブラウザによるリソース監視のために必要なモノを説明しました。
次は、ブラウザによるリソース監視の動作確認を説明します。

ブラウザによるリソース監視の動作確認

まず、ターミナル上で次のコマンドを実行します。

glances -w

上記を実行すると、次のように表示されます。

$ glances -w 
Glances Web User Interface started on http://0.0.0.0:61208/

「http://0.0.0.0:61208/」でリソース監視のWebアプリが公開されたことがわかります。
このURLにブラウザでアクセスすると、次のような画面が確認できます。

ただし、ポート61208を閉じていたらアクセスはできません。
そのため、閉じている場合はポート61208を開放しましょう。

Ubuntuであれば、次のコマンドで開放できます。

sudo ufw allow 61208

ここで一つ気になることがありませんか?
仮にサーバーを外部公開した場合、誰でもこの画面を見ることができるのです。

それでは、セキュリティがガバガバ過ぎます。
そのような場合には、認証を設けることができます。

以上、ブラウザによるリソース監視の動作確認
次は、ブラウザによるリソース監視のセキュリティ対策を説明します。

ブラウザによるリソース監視のセキュリティ対策

具体的に表現すると、GlancesのWebモードに認証を設定します。
これにより、セキュリティのレベルを上げることができます。

認証を設けるには、次のオプションを付けて起動させます。

glances -w --password -u ユーザー名

「-u ユーザー名」は省略できます。
省略した場合は、「glances」というユーザー名になります。

実際に実行した結果は、以下。

$ glances -w --password -u monitor
Define the Glances webserver password (monitor username): 
Password (confirm): 
Do you want to save the password? [Yes/No]: Yes
Glances Web User Interface started on http://0.0.0.0:61208/

パスワードは、同じモノを2度入力する必要があります。
パスワードを保存するなら、「Yes」を入力します。

「Yes」を選んだ場合は、以下の場所にファイルが作成されます。
「~/.config/glances」

$ ls ~/.config/glances
monitor.pwd

「ユーザー名.pwd」でファイルが作成されているのです。
その中身は、ハッシュ化されたパスワードが記入されています。

では、ブラウザでアクセスしてみます。
そうすると、次のような認証画面が表示されます。

設定したユーザー名とパスワードを入力します。
認証が通れば、リソース監視の画面が表示されます。

以上、ブラウザによるリソース監視のセキュリティ対策を説明しました。

タイトルとURLをコピーしました