手当たり次第に書くんだ

飽きっぽいのは本能

CentOS 5 Cacti モニタリングサーバー構築 – RRDtool と SNMP 監視

CentOS 5 で Cacti を使った監視サーバーを構築する時の基本を確認します。Cacti は SNMP などで取得した値を RRDtool に保存し、グラフとして見せる古典的な監視ツールです。現在の新規監視基盤としては別の選択肢が多いですが、古い環境の監視履歴を読む時には仕組みを理解しておく価値があります。

Cacti の構成要素

Cacti は単体で魔法のように監視するツールではありません。Web、DB、RRDtool、SNMP、cron によるポーラーが組み合わさって動きます。

  • Apache / PHP による Web 画面
  • MySQL による設定情報の保存
  • RRDtool による時系列データ保存
  • Net-SNMP による監視値取得
  • cron による poller 実行

このため、画面が表示されない問題、グラフが空になる問題、値が古い問題は、原因がそれぞれ違います。Cacti を見る時は構成要素を分解して確認します。

パッケージとサービス確認

rpm -qa | egrep -i "cacti|rrd|snmp|mysql|httpd|php"
service httpd status
service mysqld status
service snmpd status
which rrdtool

Cacti 本体だけでなく、Apache、MySQL、RRDtool、SNMP が揃っているかを確認します。古い環境では、パッケージ管理外の手動配置が混ざっている場合もあります。

データベースと設定ファイル

Cacti は設定情報を MySQL に保存します。接続情報は Cacti の設定ファイルに書かれているため、移行時には Web ファイルだけでなくデータベースも対象になります。

grep -R "database_" /var/www/cacti/include/config.php 2>/dev/null
mysql -u root -p -e "SHOW DATABASES;"
mysql -u root -p cacti -e "SHOW TABLES;"

Cacti の移行では、RRD ファイル、MySQL データベース、設定ファイル、cron 設定をセットで扱います。どれか一つだけを移しても監視履歴やグラフが復元できないことがあります。

poller と RRD 更新確認

グラフが更新されない場合は、cron で poller が実行されているか、RRD ファイルの更新時刻が進んでいるかを確認します。

cat /etc/cron.d/cacti
grep cacti /var/log/cron
find /var/lib/cacti/rra -name "*.rrd" -mtime -1 2>/dev/null
php /var/www/cacti/poller.php

手動で poller を実行するとエラーが見える場合があります。ただし、本番環境では実行ユーザーや権限が cron と違うと結果も変わるため、cron の実行ユーザーも確認します。

SNMP 取得確認

Cacti のグラフが空の場合、監視対象から値を取れていないだけのこともあります。Cacti 画面の前に、監視サーバーから直接 snmpwalk を実行して確認します。

snmpwalk -v2c -c public 192.168.1.10 sysName.0
snmpwalk -v2c -c public 192.168.1.10 ifDescr

SNMPv2c の community 名は暗号化されません。広いネットワークに SNMP を晒して community 名で守る、という設計は弱いです。監視用ネットワークや ACL で送信元を制御することが前提になります。

まとめ

CentOS 5 の Cacti は、Apache、PHP、MySQL、RRDtool、SNMP、cron が組み合わさった監視基盤です。グラフだけを見るのではなく、値の取得、保存、描画、ポーラー実行を分けて確認すると、古い監視環境の状態を読み解きやすくなります。

関連する記事

参考書籍

参考書籍
参考書籍
ストーリーで覚える Linux CLI 入門

古い Linux サーバーの記事を読み直す時にも、コマンドライン操作の考え方を確認しやすい参考書籍です。

Amazon で見る
このリンクは Amazon アソシエイトリンクです。
CentOS 5 Cacti モニタリングサーバー構築 – RRDtool と SNMP 監視

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る