「Cacti」の版間の差分

提供: fukudat.net
ナビゲーションに移動検索に移動
37行目: 37行目:
 
$ sudo systemctl enable snmpd
 
$ sudo systemctl enable snmpd
 
</pre>
 
</pre>
 +
 +
=== Cacti UI での設定 ===
 +
 +
https://localhost/cacti にアクセス。user = admin でログインして、パスワードを設定。
 +
 +
Device → localhost を開き、
 +
* SNMP Version = Version 1
 +
* SNMP Community = private
 +
と入力し、Save ボタンを押す。
 +
 +
=== システム監視グラフの追加 ===
 +
 +
==== Network Traffic Graph の追加 ====
 +
 +
Device → localhost → Associated Data Query の Add Data Query で "SNMP - Interface Statistics" を選択して Add
 +
 +
New Graphs → Data Query "SNMP - Interface Statistics" セクションに network interface (lo, eth0 など) がリストされているはずなので、チェックして Create
  
 
== 任意のデータの時系列グラフ化 ==
 
== 任意のデータの時系列グラフ化 ==

2020年5月23日 (土) 06:18時点における版

Cacti は、データロギングツール RRDtool (Round-Robin Data tool) のGUIフロントエンド。

fukudat.net (Ubuntu 16.04) にインストールして、家庭内アプリケーションの運用管理に利用中。外部からはアクセスできないように設定されている。

Install

シンプルに apt-get

$ sudo apt-get update
$ sudo apt-get install cacti

MySQL, PHP7 など必要なパッケージも自動的にインストールされる。

インストール中に configuration が走り、apache2、mysql の設定が行われる。

Configure

http://fukudat.net/cacti にアクセスして、User = admin でログイン。パスワードを設定する。

画面左下の User Management をクリック。guest ユーザを選んで Delete + GO で guest ユーザを削除。

ssh でサーバーにログインして、/usr/share/cacti/sites に .htaccess ファイルを作り、アクセス可能なユーザの設定を行う(気休め)。

最初から、Memory Usage, Load Average, Logged In Users, Processes のグラフが記録されている。Graph タブを選択すると表示される。

SNMP の設定

/etc/snmp/snmpd.conf を編集して、1行追加。

rocommunity private localhost

snmpd を起動し、今後は自動で起動するように設定。

$ sudo systemctl start snmpd
$ sudo systemctl enable snmpd

Cacti UI での設定

https://localhost/cacti にアクセス。user = admin でログインして、パスワードを設定。

Device → localhost を開き、

  • SNMP Version = Version 1
  • SNMP Community = private

と入力し、Save ボタンを押す。

システム監視グラフの追加

Network Traffic Graph の追加

Device → localhost → Associated Data Query の Add Data Query で "SNMP - Interface Statistics" を選択して Add

New Graphs → Data Query "SNMP - Interface Statistics" セクションに network interface (lo, eth0 など) がリストされているはずなので、チェックして Create

任意のデータの時系列グラフ化

データ収集

その時刻の最新の情報を出力するコマンドを作成する。例えば、/usr/local/bin/cacti-temperature という温度を測定するコマンドを考える。

$ cacti-temperature "device-name"

を実行すると、"device-name" で指定したデバイスが測った温度と湿度が以下の形式で stdout に出力されるものとする。

t:温度 h:湿度

Cacti UI での設定

Data Input Method の作成

Cacti にadminでログインし、サイドメニューから、"Data Input Method" を選択。

右上の "Add" をクリック。"Name" に分かりやすい名前(例: temperature)を入力。 "Input Type"には Script/Command を選ぶ。 "Input String"にはコマンド名 (例: /usr/local/bin/cacti-temperature) を入力。 "Create" をクリックして新しい Data Input Method を作成する。

Data Fieldの定義

引き続き、このコマンドが入出力するフィールドを定義する。

  • Input Fields 行の右端の "Add" ボタンを押す。
  • "Friendly Name" には分かりやすいフィールド名(例: device name)を入力。
  • "Create" をクリックして新しい Data Input Field を作成する。
  • 次に、Output Field 行の右端の "Add" ボタンを押す。
  • "Field" にはコマンドが出力するタグの値 (例: t とか h) を入力。
  • "Friendly Name" には分かりやすい名前 (例: temperature とか relative humidity) を入力。
  • "Create" をクリックして新しい Data Output Field を作成する。

Data Sourceの定義

次にこれまで定義した Data Input Method を使って、Data Source を定義する。

  • 左のサイドメニューから、"Data Sources" を選択。
  • 右上の "Add" ボタンを押す。
  • "Template", "Host" は共に None を選択。
  • "Name" に Data Source の名前を入力 (例: temperature-デバイス名)
  • "Data Source Path" はブランク。
  • "Data Input Method" には先ほど作成した Data Input Method (例: temperature) を選択。
  • "Internal Data Source Name" には、この Data Source 内で unique な名前をつける (例: temperature-デバイス名)