Cacti連携

Cactiについて

  • CactiはPHP/MySQLを利用したRRDTool用のフロントエンドプログラムです。
  • Webブラウザ上からRRDToolの設定を簡単にできるようにしたものです。
  • 詳しくは以下のサイトを参照ください。
  • http://www.cacti.net/

概要

HinemosとCactiを連携させる方法を記述します。
Hinemosの性能管理機能で収集した実績データや、監視管理機能のイベント数をCactiに取り込み表示可能にするものです。

  • 仕様
    • Cactiの「Data Input Methods」機能を利用し、Hinemosから値を取得するスクリプトを実行する。
      • リソース値取得
        • Hinemosの性能管理の実績収集にて蓄積したリソース値を取得。
      • イベント数取得
        • Hinemosの監視管理の未確認イベント数を取得。
    • テンプレートとして、以下の項目の「Data Templates」、「Graph Templates」を用意。
      • CPU Usage
      • Memory Usage
      • Load Average
      • Events
      • Events - All
  • 動作確認バージョン
    Hinemos2.3.1
    2.4.0
    Cacti0.8.7b
    rrdtool1.2.23
  • 動作確認環境
    • CentOSに含まれているものを使用。
      CentOS4.5
      PHP4.3.9-3.22.4
      php-mysql4.3.9-3.22.4
      Perl5.8.5-36
      perl-DBI1.40-8
      perl-DBD-Pg1.31-6
      mysql4.1.20-2
      postgresql-libs7.4.16-1

CPU Usage

  • Hinemosの実績収集のCPU使用率(System、User、Nice、IOWait、Total)を表示する。
    • Plugin Error: attach file not found: cacti-cpu.PNG

Memory Usage

  • Hinemosの実績収集のメモリ使用率(Physical、Swap、Total)を表示する。
    • Plugin Error: attach file not found: cacti-mem.PNG

Load Average

  • Hinemosの実績収集のロードアベレージ(1分平均、5分平均、15分平均)を表示する。
    • Plugin Error: attach file not found: cacti-load.PNG

Events

  • Hinemosの監視管理の未確認イベント発生数(Info、Warning、Unknown、Critical)を表示します。
    • Plugin Error: attach file not found: cacti-event.PNG

Events - All

  • Hinemosの監視管理のイベント発生数(Info、Warning、Unknown、Critical)を表示します。

使用方法

前提条件

  • Cactiが稼働している。
  • Hinemosが稼働している。
  • Perlがインストールされている。
  • Perl-DBI及びPerl-DBD-Pgがインストールされている。
  • Cactiの設定につきましては、Cactiのドキュメントを参照下さい。

(1) スクリプトの配置、テンプレートのインポート

  1. cacti-hinemos_1.0.zipをダウンロードし、適当なディレクトリで解凍する。
    • 解凍後のディレクトリ
      • scripts/
        • hinemos_event.pl
        • hinemos_resource.pl
      • template/
        • cacti_graph_template_hinemos_-_cpu_usage.xml
        • cacti_graph_template_hinemos_-_load_average.xml
        • cacti_graph_template_hinemos_-_memory_usage.xml
        • cacti_graph_template_hinemos_-_events.xml
        • cacti_graph_template_hinemos_-_events_-_all.xml
  2. scripts/ディレクトリ配下のスクリプトファイルを、「(cacti_path)/scripts/」にコピーする。
  3. CactiのConsoleメニューの「Import Templates」画面にて、template/ディレクトリ配下のテンプレートファイルを全てインポートする。
    • 「Import RRA Settings」はディフォルトのままでOK。
  4. 正常にインポートされれば完了。

(2) Hinemosの実績収集の設定

  1. Cacti取り込み用のリソース値の実績収集を開始する。
    • 実績収集設定値として以下の項目にチェックする。
      1. 「CPU Usage」を使用する場合
        • CPU使用率
          • CPU使用率(ユーザ)
          • CPU使用率(システム)
          • CPU使用率(Niceプロセス)
          • CPU使用率(入出力待機)
      2. 「Memory Usage」を使用する場合
        • メモリ使用率
          • メモリ使用率(スワップ)
          • メモリ使用率(実メモリ)
      3. 「Load Average」を使用する場合
        • ロードアベレージ1分平均
        • ロードアベレージ5分平均
        • ロードアベレージ15分平均
      • 例)全て使用する場合
        • cacti-01.PNG

(3) CPU Usage、Memory Usage、Load Average の設定

  1. CactiのConsoleメニューのDevice画面にて、Hinemosにて実績収集しているDeviceを選択する。
    • Deviceの登録方法はCactiのドキュメントを参照ください。
  2. Devicesの編集画面の「Associated Graph Templates」に、以下の項目を追加する。
    • Hinemos - CPU Usage
    • Hinemos - Load Average
    • Hinemos - Memory Usage
  3. CactiのConsoleメニューのNew Graphs を選択し、先程選択したDeviceをHostコンボボックスにて選択する。
  4. 「Graph Templates」にて、以下の項目のチェックボックスをチェックし、「create」をクリックする。
    • Create: Hinemos - CPU Usage
    • Create: Hinemos - Load Average
    • Create: Hinemos - Memory Usage
  5. 以下の入力欄が表示される。
    • 「Create Graph from 'Hinemos - CPU Usage'」
    • 「Create Graph from 'Hinemos - Load Average'」
    • 「Create Graph from 'Hinemos - Memory Usage'」
  6. 入力欄に以下の内容を入力し、「create」をクリックする。
    • 3つの入力欄には同じ内容を入力。
      項目内容設定値
      HostHinemosマネージャのIP
      PortHinemosマネージャのPostgreSQLのポート番号24001
      User IDHinemosマネージャのPostgreSQLのユーザIDhinemos
      PasswordHinemosマネージャのPostgreSQLのパスワード
      Collect ID(2)にて指定した収集IDcacti
      Facility IDHinemos上でDeviceに該当するファシリティID
  7. 一定時間経過後、Cactiのgraphsメニューにてグラフが表示されればOKです。

(4) Event の設定

  1. CactiのConsoleメニューのDevice画面にて、HinemosマネージャをDeviceとして登録する。
    • Deviceの登録方法はCactiのドキュメントを参照ください。
  2. Devicesの編集画面の「Associated Graph Templates」に、以下の項目を追加する。
    • Hinemos - Event
    • Hinemos - Event - All
  3. CactiのConsoleメニューのNew Graphs を選択し、HinemosマネージャのDeviceをHostコンボボックスにて選択する。
  4. 「Graph Templates」にて、以下の項目のチェックボックスをチェックし、「create」をクリックする。
    • Create: Hinemos - Event
    • Create: Hinemos - Event - All
  5. 以下の入力欄が表示される。
    • 「Create Graph from 'Hinemos - Event'」
    • 「Create Graph from 'Hinemos - Event - All'」
  6. 入力欄に以下の内容を入力し、「create」をクリックする。
    項目内容設定値
    HostHinemosマネージャのIP
    PortHinemosマネージャのPostgreSQLのポート番号24001
    User IDHinemosマネージャのPostgreSQLのユーザIDhinemos
    PasswordHinemosマネージャのPostgreSQLのパスワード
  7. 一定時間経過後、Cactiのgraphsメニューにてグラフが表示されればOKです。

今後の予定

  • Cactiへの連携可能項目の拡大。
    • 対応予定項目
      • ディスク
      • ネットワーク
      • ファイルシステム