運用管理

ここでは、Cacti が稼動するサーバの運用管理について記述します。

Cacti の監視

Cacti の稼動監視には下記の項目を監視する必要があります。

  • サーバ
    • 死活監視

サーバ自体の死活監視。監視サーバから ping などで実施。

    • ハードウェア監視

ハードウェア故障の監視。監視方法はハードウェアの実装次第。

    • リソース監視
      • Disk 使用率

パーティションの使用量を監視。閾値を設けて監視を行う。

      • CPU 使用率

CPU 使用率も閾値監視。

  • MySQL
    • プロセス監視
    • 稼動確認
  • HTTP(Apache)
    • プロセス監視
    • 稼動確認
  • cacti
    • cron
    • log

バックアップ

バックアップの対象として考えるべきものは下記の通りです。
要件により頻度が異なると思われますが、rra ファイルと MySQL のデータのバックアップが取れていれば復元は可能です。


cacti/ 以下のファイル群ですが、rra/, log/ は更新頻度が高いため別途バックアップし
てもよいと思います。

    • Config ファイル


下記のファイルには mysql のユーザ名とパスワードが記載されているので、バックアッ
プ対象です。
include/config.php
include/global.php

    • rra ファイル


データが蓄積されている RRD Tool のファイルです。通常 cacti/rra 以下にあります。

    • log ファイル


Cacti の出力する log ファイルです。通常 cacti/log 以下にあります。

    • MySQL データベース


MySQL 内に蓄積された設定情報です。通常 cacti というデータベースをバックアップします。
例:# mysqldump -u cactiuser -p -l --add-drop-table cacti > mysql.cacti


下記の二つのディレクトリには、独自に作成・配置したスクリプトXML ファイルがあ
るため、このディレクトリもバックアップ対象となります。
resource/
scripts/


プラグインを利用している場合は下記のディレクトリもバックアップ対象です。
plugins/

  • ファイルバックアップ


バックアップが必要なファイルどディレクトリは下記の通りです。
cacti/include/config.php
cacti/include/global.php
cacti/log/
cacti/rra/
cacti/resource/
cacti/scripts/
cacti/plugins/

  • データベースバックアップ


MySQL のデータベースはいくつかの方法でバックアップ可能です。
mysqldump には様々なオプションがあるので、必要に応じてオプションを追加してください。
<例>
# mysqldump -u cactiuser -p -l --add-drop-table cacti > mysql.cacti

リストア

  • データベースのリストア

MySQL をリストアする場合は、dump ファイルからのリストアを実施してください。

  • その他ファイルのリストア

その他のファイルに関しては、取得したバックアップをそのまま元に戻すだけです。

アップグレード

Cacti のアップグレードを行う際の手順を記載します。バージョンがあがるにつれて変わる部分があると思われますので、注意してください。

  • Requirement の確認

ApacheMySQL, RRDTool のバージョンがサポートされているか確認してください。
Cacti0.8.7 では下記の通りです。


# RRDTool 1.0.49 or 1.2.x or greater
# MySQL 4.1.x or 5.x or greater
# PHP 4.3.6 or greater, 5.x greater highly recommended for advanced features
# A Web Server e.g. Apache or IIS

  • MySQL のバックアップ


# mysqldump -u cactiuser -p -l --add-drop-table cacti > mysql.cacti

  • 新しいバージョンの取得

下記のページより新しいバージョンの Cacti を取得します。
http://www.cacti.net/index.php
プラグインを利用している場合はプラグインアーキテクチャもダウンロードします。
http://cactiusers.org/index.php

ダウンロードした cacti のファイルを適当な作業用ディレクトリで解凍し、プラグインアーキテクチャを適用します。


tar -zxvf cacti-X.X.X.tar.gz
tar -zxvf cacti-plugin-arch.tar.gz
パッチファイルと sql ファイルをコピー

cd cacti-plugin-arch
cp cacti-plugin-X.X.X-PA-vX.X.diff ../cacti-X.X.X
cp pa.sql ../cacti-X.X.X
パッチ適用

cd ../cacti-X.X.X
patch -p1 -N < cacti-plugin-0.8.7b-PA-v2.1.diff
sql ファイル適用(必要な場合のみ)

mysql -u XXX -p cacti < pa.sql

  1. 既存ファイルのコピー(rra ディレクトリ以外)

下記の既存 cacti のファイルを新しい cactiディレクトリ内にコピー


cacti/resource/
cacti/scripts/
cacti/plugins/

新旧 cacti のオーナーとパーミションをあわせておく

ここまで終わったら後は、rra と log ディレクトリのみなので、cacti のポーリングが終わったところを見計らって rra と log ディレクトリをコピーする。
※ここでもオーナーとパーミションに注意する。

新旧 cactiディレクトリを入れ替え

Web からアクセスすると、バージョンアップスクリプトが実行される

  • 動作確認

Web GUI 上から動作確認をして作業完了。
グラフが更新されていない場合は、log を確認する。

SPINE のアップグレード

こちらは新しい rpm ファイルをダウンロードし、アップグレードすればOKです。