サーバー監視システム構築(RRDtool+Cacti)

最終更新日: 2017.05.27

<<トップページ <<新着情報 <<逆引き集 <<リンク集 <<サイト内検索 <<メルマガ <<Scientific Linuxで自宅サーバー構築 <<Fedoraで自宅サーバー構築

■概要

次世代版MRTGRRDtoolを利用してサーバー監視システムを構築する。
ここでは、RRDtoolのフロントエンドとしてCactiを利用し、Webインタフェースでグラフの管理ができるようにする。

サンプル(当サイトのグラフ)

Apache+PHPMySQLが必要


■Net-SNMPインストール

データ収集に必要なNet-SNMPをインストールする。
[root@centos ~]# yum -y install net-snmp ← Net-SNMPインストール

■Net-SNMP設定

[root@centos ~]# vi /etc/snmp/snmpd.conf ← Net-SNMP設定ファイル編集
#       sec.name  source          community
#com2sec notConfigUser  default       public ← コメントアウト
com2sec local localhost private ← 追加
com2sec mynetwork 192.168.1.0/24 public ← 追加(ネットワークアドレスは各自の環境に合わせること)

#       groupName      securityModel securityName
#group   notConfigGroup v1c           notConfigUser ← コメントアウト
#group   notConfigGroup v2c           notConfigUser ← コメントアウト
group MyROGroup v1 local ← 追加
group MyROGroup v2c local ← 追加
group MyROGroup v1 mynetwork ← 追加
group MyROGroup v2c mynetwork ← 追加

# Make at least  snmpwalk -v 1 localhost -c public system fast again.
#       name           incl/excl     subtree         mask(optional)
#view    systemview    included   .1.3.6.1.2.1.1 ← コメントアウト
#view    systemview    included   .1.3.6.1.2.1.25.1.1 ← コメントアウト
view all included .1 80 ← 追加

# Finally, grant the group read-only access to the systemview view.

#       group          context sec.model sec.level prefix read   write  notif
#access  notConfigGroup ""      any       noauth    exact  systemview none none ← コメントアウト
access MyROGroup "" any noauth exact all none none ← 追加
access MyRWGroup "" any noauth exact all all none ← 追加

# Check the / partition and make sure it contains at least 10 megs.

#disk / 10000
disk / 10000 ← 追加(ディスク使用率表示用設定)

■Net-SNMP起動

[root@centos ~]# systemctl start snmpd ← Net-SNMP起動※CentOS7の場合
[root@centos ~]# /etc/rc.d/init.d/snmpd start ← Net-SNMP起動※CentOS6の場合

[root@centos ~]# systemctl enable snmpd ← Net-SNMP自動起動設定※CentOS7の場合
[root@centos ~]# chkconfig snmpd on ← Net-SNMP自動起動設定※CentOS6の場合

■RRDtoolインストール

EPELリポジトリ導入(EPEL)を参照してEPELリポジトリを導入する

[root@centos ~]# yum -y install rrdtool ← RRDtoolインストール

■Cactiインストール

[root@centos ~]# yum -y install cacti ← Cactiインストール

■Cacti設定

(1)Cacti用MySQLデータベース作成
[root@centos ~]# mysql -u root -p ← MySQLへrootでログイン
Enter password:  ← MySQLのrootパスワード応答
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 297
Server version: 5.0.37 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> create database cacti; ← Cacti用データベース作成
Query OK, 1 row affected (0.00 sec)

mysql> grant all privileges on cacti.* to cactiuser@localhost identified by '任意のパスワード'; ← Cacti用データベースアクセスユーザー登録
Query OK, 0 rows affected (0.06 sec)

mysql> exit ← MySQLからログアウト
Bye

[root@centos ~]# mysql -u cactiuser -p cacti < /usr/share/doc/cacti-*/cacti.sql ← Cacti用データベース初期化
Enter password: ← Cacti用データベースアクセスユーザーのパスワード応答

(2)Cacti設定
[root@centos ~]# vi /usr/share/cacti/include/config.php ← Cactiデータベース設定ファイル編集
$database_password = "cactiuser";
↓
$database_password = "パスワード"; ← Cacti用データベースアクセスユーザーのパスワードを指定

(3)Apache設定
[root@centos ~]# vi /etc/httpd/conf.d/cacti.conf ← Cacti用Apache設定ファイル編集
<Directory /usr/share/cacti/>
        <IfModule mod_authz_core.c>
                # httpd 2.4
                Require host localhost
                Require ip 192.168.1.0/24 ← 追加(内部ネットワークからのアクセスを許可)
        </IfModule>
        <IfModule !mod_authz_core.c>
                # httpd 2.2
                Order deny,allow
                Deny from all
                Allow from localhost
                Allow from 192.168.1.0/24 ← 追加(内部ネットワークからのアクセスを許可)
        </IfModulev
</Directory>

[root@centos ~]# systemctl reload httpd ← Apache設定反映※CentOS7の場合
[root@centos ~]# /etc/rc.d/init.d/httpd reload ← Apache設定反映※CentOS6の場合



(4)Cacti初期設定
Webブラウザからhttp://サーバー名/cacti/へアクセスする。



Next



New InstallのままNext



各種コマンドへのパスが[FOUND]と表示されていることを確認してFinish



User Nameにadmin、Passwordにadminと入力してLogin



Passwordに任意の管理者パスワード、confirmに同じパスワードを入力してSave



Devices⇒Localhost
SNMP VersionでVersion 1を選択
SNMP Communityにprivateと入力
save

(5)ネットワークトラフィックグラフ追加
consoleタブ
Devices⇒Localhost⇒Associated Data QueriesのAdd Data Query:でSNMP - Interface Statisticsを選択してadd
New Graphs⇒Data Query [SNMP - Interface Statistics]-任意のName (IF-MIB)(例:eth0)をチェックしてcreate

(6)ディスク使用状況グラフ追加
consoleタブ
New Graphs⇒Data Query [Unix - Get Mounted Partitions]-任意のMount Pointをチェックしてcreate

(7)CPU使用率グラフ追加
consoleタブ
Devices⇒Localhost⇒Associated Graph TemplatesのAdd Graph Template:でucd/net - CPU Usageを選択してadd
New Graphs⇒Graph TemplatesのCreate: ucd/net - CPU Usageをチェックしてcreate

(8)不要グラフ削除
consoleタブ
Graph Management
削除したいグラフ(例:Localhost - Logged in Users )をチェック
Choose an action:でDeleteを選択してgo

■Cacti確認

約10分後graphsタブをクリックしてグラフが表示されることを確認。

■HTML作成

公開用にグラフをHTML化する。

(1)Apache設定
[root@centos ~]# mkdir /var/www/cactihtml ← HTML作成先ディレクトリ作成

[root@centos ~]# chown cacti:cacti /var/www/cactihtml/ ← HTML作成先ディレクトリ所有者変更

[root@centos ~]# echo Alias /cactihtml /var/www/cactihtml > /etc/httpd/conf.d/cactihtml.conf ← Apache設定ファイル作成

[root@centos ~]# systemctl reload httpd ← Apache設定反映※CentOS7の場合
[root@centos ~]# /etc/rc.d/init.d/httpd reload ← Apache設定反映※CentOS6の場合

(2)Cacti設定
Webブラウザからhttp://サーバー名/cacti/へアクセスする。

consoleタブ
Settings
Graph Export
Export MethodでClassic(local path)を選択
Export Directory (both local and ftp)に/var/www/cactihtmlと入力
Export timingでClassic(export every x times)を選択
save

■HTML確認

約10分後Webブラウザからhttp://サーバー名/cactihtml/へアクセスしてグラフが表示されることを確認。






▲このページのトップへ戻る

LPIロゴ Copyright© 2005-2017 fallenangels, All rights reserved.
ご自由にリンクしてください(連絡は不要です)
本ページへのご意見・ご要望、誤字・脱字・リンク切れ等のご連絡はこちらからお願いします