システム構築

サーバー構築のデージーネットTOP > システム構築 > 監視サーバ構築 > Cactiによる運用監視サーバ

構築事例:Cactiによる運用監視サーバ

Open Smart Design

運用管理のために、ネットワーク機器の負荷や利用状況を可視化して管理できるよう、Cactiを利用した監視サーバを提案しました。これまでお客様がCactiを導入されており、同様に運用できるようにCactiを利用しました。さらにCactiのsyslogプラグインを導入することでログ管理が容易になることから、syslogサーバとCactiを同居させるシステムとしました。

導入企業業種
通信業(愛知県)
ユーザー規模
4000ユーザ(対象機器:200台)
利用OS
Linux(CentOS6)
導入月
2014年1月頃
お客様が悩まれていた課題
既存のCactiサーバが老朽化している
Cactiの新しいバージョンの運用に不安がある
仮想サーバに監視を導入した経験がない

デージーネットが提案した「Cactiによる運用監視サーバ」

解決ポイント

Cactiが監視する対象から取得できる情報を徹底的に調査

仮想サーバ(VMware ESXi)のCactiによる監視方法を徹底的に調査

標準的なCactiの監視テンプレートに含まれないVMware ESXi(以下ESXi)を監視したいとの御要望がありました。そのため、Cacti導入前には、VMware社が公開している情報やNetSNMP付属のツールを利用して、ESXiから取得できる情報を調査しました。必要に応じて、複数の情報をもとにお客様の希望するデータのグラフをCactiで作成するための加工なども行いました。

Cactiを利用した運用監視サーバ

グラフ作成のための運用手順書を提供

Cactiによる監視対象は社内システムを部分的に更新するたびに増減します。運用上そのすべてを外部委託するとコストが増加します。そのため、典型的な監視対象のグラフを作成するための運用手順書のみを提供し、実際のグラフ作成はお客様自身で行っていただくようにしました。

Cactiにsyslogプラグインを導入しログ管理機能を追加

Cactiサーバにsyslogサーバを同居させました。Cactiで利用できるsyslogプラグインを導入してログの検索、解析を容易に行えるようにしました。ネットワーク機器の種類によっては非常に多くのログを出力するものもあります。そのため、通常の運用で解析する種類のログに絞ってCactiと連携させることで監視サーバのパフォーマンス向上を図りました。

導入後の結果

Cactiサーバを一新し、仮想サーバを監視することができました。当初、Cactiの新しいバージョンでの運用を不安に感じられていました。しかし、Cacti導入直後から、お客様自身の手で監視対象のグラフを次々と作成するなど、すぐに活用していただくことができました。



利用OSS

Cactiとは

Cactiとは、ネットワーク監視、グラフ生成のソフトウェアです。Cactiをインストールし導入することで、サーバのネットワークトラフィック、CPU使用率、空きメモリ量、ディスク使用率などを監視し、グラフ化することができます。また、Cacti のプラグインをインストールすることで機能拡張も可能です。

CactiはraXnetにより開発され、オープンソースソフトウェアとして公開されています。OSSなので、誰でもインストールし利用することが可能です。

Cactiの特徴

  • 統計情報のグラフ化

    Cactiはネットワーク機器からSNMPプロトコルで統計情報を取得しグラフ化できます。LinuxサーバやWindowsも、SNMPエージェントを入れることで情報を取得することができます。

  • Cactiはウェブインタフェースを通して設定変更が可能です。
    CactiはMRTGの代替ツールで、MRTGがテキストファイルで設定やデータ管理するのに対し、Cactiはデータの保存にRRDToolを使用しています。Cactiでは、WEBインタフェースから設定変更ができます。

  • Cactiはツリー構造での管理が可能です。

    Cactiにより作成されるたくさんのグラフをネットワーク機器の機種や用途などで分類し、ツリー構造で管理することができます。

  • Cactiではユーザによって権限を設定する事ができます。

    例えば、Cacti監視サーバの管理者ユーザには設定変更などすべての権限を持たせ、Cacti一般ユーザーはグラフを見る権限のみ与えるといった設定ができます。

  • 多様なCactiのプラグイン

    Cactiには様々なプラグインがリリースされています。それにより、Cacti機能の拡張を行うことができます。

デージーネットとCacti

デージーネットでは、Cactiを使った監視サーバの構築サービスを実施しています。Cactiの他にもOSSの監視ソフトウェアとして、Zabbix、Nagiosなどのソフトウェアも扱っています。CactiはSNMPを使用し、監視ターゲットの統計情報を取得しグラフ化することができます。そのため、特に、MRTGからの移行、リソース監視、グラフの作成などの機能が重要視される場合には、Cactiを推奨しています。

デージーネットのCactiカスタマイズ

  • Cactiサーバの冗長化

    Cactiサーバを冗長化し、ハードウェア障害があったときにも監視が継続できるような構成をとることができます。非常に重要なシステムを監視する場合にCactiサーバ冗長化を推奨しています。

  • Cactiのプラグインを利用した閾値監視/メール通知機能

    プラグインを導入し機能拡張を行っています。例えば、ネットワーク機器の統計情報が閾値を超えた場合に管理者へメール通知する機能を追加することができます。

  • 大規模なシステムに対応 Cacti分散構成

    通常、1台のCactiサーバで監視できる監視対象の数は数百台程度です。それ以上の対象を監視する場合には、情報収集を行うpollerを高速なものに置き換えるなどの対処を行っています。また、さらに大規模な場合や監視対象のロケーションが複数に分かれている場合には、Cactiを分散構成にします。Cactiの分散構成では、pollerのみをCacti本体とは別に配置します。pollerを増やすことで、Cactiのシステム全体で監視できる対象を増やすことができます。

  • Cactiの保守

    残念ながら、Cactiでは商用サポートが利用できません。しかし、デージーネットでは、導入後の支援としてOpen Smart Assistanceを提供しています。Open Smart Assitanceは、障害が発生した時に、リモートから障害原因の解析サービスを受けることができるサービスです。バグなどがあった場合には、デージーネットがコミュニティーに連絡し、対応を促しています。
    また、Open Smart Assitanceのクーポンサービスを活用し、新たな監視対象を追加する方法の問い合わせなどにも対応しています。

    Cactiのインストールと設定方法

    Cactiは、EPELレポジトリからパッケージで入手することができます。そのため、このパッケージを使えば、CentOS6、CentOS7には簡単にインストールを行なうことができます。

    Cactiのインストール手順

    1.あらかじめ、必要なパッケージをインストールします。MySQL(MariaDB)、httpd、snmpd、などが必要になります。
    2.MySQL(MariaDB)、httpd、snmpdを起動しておきます。
    3.EPELのレポジトリのrpmをダウンロードして、インストールします。

    • CentOS7の場合
      • # wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-9.noarch.rpm [Enter]
        # rpm -ivh epel-release-7-9.noarch.rpm [Enter]
        

        4.cactiをインストールします。phpなど必要なパッケージも一緒にインストールされます。

        # yum install cacti [Enter]
        

        5.MySQL(MariaDB)にデータベースを作成します。

        # mysql -u root[Enter]
        Enter password: *********
        MariaDB> CREATE DATABASE cacti; [Enter]
        Query OK, 1 row affected (0.00 sec)
        MariaDB> GRANT ALL ON cacti.* TO cacti@localhost IDENTIFIED BY ''; [Enter]
        Query OK, 0 rows affected (0.00 sec)
        MariaDB> FLUSH privileges; [Enter]
        Query OK, 0 rows affected (0.00 sec)
        MariaDB> quit; [Enter]
        Bye
        

        6. MySQL(MariaDB)に初期データを登録します。

        # mysql -u cacti -p cacti < /usr/share/doc/cacti-1.1.2/cacti.sql [Enter]
        Enter password: ******* [Enter]
        

        7. /etc/cacti/db.phpに、データベースの設定を登録します。

        /etc/cacti/db.phpの設定例

        $database_type = mysql;
        $database_default = cacti;
        $database_hostname = localhost;
        $database_username = cacti;
        $database_password = ;
        $database_port = 3306;
        $database_ssl = false;
        

        監視対象の登録

        Cactiでは、監視対象を登録する時には、登録してあるテンプレートを選択して使います。標準で用意されているテンプレートも多くあります。例えば、Linuxテンプレートを使えば、CPU、ロードアベレージ、メモリ、ディスク使用率などの情報を取得することができます。Windowsテンプレートも用意されています。その他、様々なネットワークデバイスやセキュリティ機器のテンプレートが公開されています。

        テンプレートは、自作することもできます。そのため、大量に同じような設定を行なう場合には、専用のテンプレートを作成することで、監視対象登録を効率よく行なうことができます。CactiのテンプレートはWEBインタフェースから、インポート/エクスポートすることもできます。

        なお、1台のcactiで管理できるデバイスには限界があります。そのため、多くのデバイスを監視するためには、チューニングや処理の分散が必要になります。

        Cactiの日本語化

        Cactiを日本語に対応するには、日本語化ファイルをダウンロードし、Cactiをインストールした環境に上書きする方法があります。

        Cactiに関するご参考資料

Cactiによる運用監視サーバの関連ページ

監視サーバ構築の事例一覧

様々な事例を集めたモデルプラン(費用例付き)をお送りしています。

代表的な事例を集めた「モデルプラン」をお送りしています。費用の例も記載しておりますので、価格感も知って頂ける資料となっております。
ご希望の方は、下記よりお申し込みください。

モデルプランをご希望の方

各種費用についてのお問い合わせ

コンサルティング費用、設計費用、構築費用、運用費用、保守費用など、各種費用についてのお見積もりは以下のフォームよりお気軽にお問合せ下さい。

unboundやPowerDNSを使用したDNSサーバのモデルプランをご希望の方

Cactiによる運用監視サーバの先頭へ