Linuxでサーバーリソースを監視するために「Collectd」と「Collectd-Web」をインストールおよび構成する方法

Collectd-webは、Round-Robin Database Toolに基づくWebフロントエンド監視ツールであり、Linuxシステム上のCollectdサービスによって収集されたデータを解釈し、グラフィカルに出力します。

Collectdサービスは、デフォルトの構成ファイルに多くのプラグインが用意されており、ソフトウェアパッケージをインストールすると、一部はデフォルトで有効になっています。

Collectd-web CGIスクリプトは、Apache CGIゲートウェイで簡単に実行でき、Apacheウェブサーバー側での最小限の設定が必要です。

ただし、生成された統計情報を持つグラフィカルWebインターフェースは、メインのGitリポジトリに事前にインストールされているPython CGIHTTPServerスクリプトによるスタンドアロンのWebサーバーでも実行できます。

このチュートリアルでは、RHEL/CentOS/FedoraおよびUbuntu/DebianベースのシステムにCollectdサービスとCollectd-webインタフェースをインストールする手順と、サービスを実行しCollectdサービスのプラグインを有効にするために必要な最小限の設定について説明します。

次のcollectdシリーズの記事も参照してください。

Part 1: Install and Configure ‘Collectd’ and ‘Collectd-Web’ to Monitor Linux Resources

Step 1: – Collectdサービスのインストール

1. 基本的に、Collectd デーモンのタスクは、それが実行されているシステムのデータ統計を収集して保存することです。Collectd パッケージは、次のコマンドを発行してデフォルトのDebianベースのディストリビューションリポジトリからダウンロードしてインストールできます:

Ubuntu/Debianの場合
# apt-get install collectd			[On Debian based Systems]
Install Collectd on Debian/Ubuntu
RHEL/CentOS 6.x/5.xの場合

CentOS/Fedoraなどの古いRedHatベースのシステムでは、まずシステムにepelリポジトリを有効にする必要があり、その後、epelリポジトリからcollectdパッケージをインストールできます。

# yum install collectd
RHEL/CentOS 7.xの場合

RHEL/CentOS 7.xの最新バージョンでは、以下に示すようにデフォルトのyumリポジトリからepelリポジトリをインストールして有効にできます。

# yum install epel-release
# yum install collectd
Install Collectd on CentOS/RHEL/Fedora

注意:Fedoraユーザーの場合、サードパーティのリポジトリを有効にする必要はありません。デフォルトのyumリポジトリからcollectdパッケージを取得するために単純にyumを使用してください。

2. パッケージをシステムにインストールしたら、以下のコマンドを実行してサービスを開始してください。

# service collectd start			[On Debian based Systems]
# service collectd start                        [On RHEL/CentOS 6.x/5.x Systems]
# systemctl start collectd.service              [On RHEL/CentOS 7.x Systems]

ステップ2:Collectd-Webと依存関係のインストール

3. Collectd-web Gitリポジトリをインポートする前に、まずGitソフトウェアパッケージと以下の必要な依存関係がマシンにインストールされていることを確認する必要があります:

----------------- On Debian / Ubuntu systems -----------------
# apt-get install git
# apt-get install librrds-perl libjson-perl libhtml-parser-perl
Install Git on Debian/Ubuntu
----------------- On RedHat/CentOS/Fedora based systems -----------------
# yum install git
# yum install rrdtool rrdtool-devel rrdtool-perl perl-HTML-Parser perl-JSON
Install Git and Dependencies

ステップ3:Collectd-Web GitリポジトリのインポートとスタンドアロンPythonサーバーの変更

4.次のステップで、GitプロジェクトをインポートしたいLinuxツリーヒエラルキーからシステムパスを選択して変更します(/usr/local/パスを使用できます)。次に、次のコマンドを実行してCollectd-web gitリポジトリをクローンします。

# cd /usr/local/
# git clone https://github.com/httpdss/collectd-web.git
Git Clone Collectd-Web

5. Gitリポジトリがシステムにインポートされたら、collectd-webディレクトリに移動してその内容をリストアップし、次のステップで変更されるPythonサーバースクリプト(runserver.py)を特定します。また、次のCGIスクリプトに実行権限を追加します:graphdefs.cgi

# cd collectd-web/
# ls
# chmod +x cgi-bin/graphdefs.cgi
Set Execute Permission

6. Collectd-webスタンドアロンPythonサーバースクリプトはデフォルトでループバックアドレス(127.0.0.1)でのみ実行およびバインドされるように構成されています。

リモートブラウザからCollectd-webインターフェースにアクセスするには、runserver.pyスクリプトを編集し、127.0.1.1 IPアドレスを0.0.0.0に変更して、すべてのネットワークインターフェースIPアドレスにバインドする必要があります。

特定のインターフェースにのみバインドしたい場合は、そのインターフェースIPアドレスを使用します(ネットワークインターフェースアドレスがDHCPサーバーによって動的に割り当てられる場合、このオプションを使用することはお勧めしません)。最終的なrunserver.pyスクリプトがどのように見えるかの抜粋として、以下のスクリーンショットを使用してください。

# nano runserver.py
Configure Collect-web

使用するネットワークポートが8888以外の場合は、PORT変数の値を変更してください。

ステップ4:Python CGIスタンドアロンサーバーを実行し、Collectd-webインターフェースを閲覧します

7. スタンドアロンのPythonサーバースクリプトのIPアドレスバインディングを変更した後、次のコマンドを発行してバックグラウンドでサーバーを起動します:

# ./runserver.py &

オプションとして、代替手法としてPythonインタプリターを呼び出してサーバーを起動することもできます:

# python runserver.py &
Start Collect-Web Server

Source:
https://www.tecmint.com/install-collectd-and-collectd-web-to-monitor-server-resources-in-linux/