CentOS 5.8 x64でcactiを設定

タックス

皆さんは、サーバのリソース管理に何を使っていますか?
私は数年前からずっとcacti(カクタイ)を使ってみたいと思いつつ、今日までMRTGを使用していました。
しかし、そろそろcactiが良いのではないかと思いましたので、手順をご紹介したいと思います。

  • 前提条件

  • epelリポジトリが導入されており、Apache、PHP、MySQLがインストールされていることが前提です。
    また、MySQLはwingリポジトリのmysql55をインストールする手順ですが、標準のmysqlやmysql51を使用してもかまいません。
    その他、Apache 2.4系を前提に記載しますが、2.2系の方も問題の無い設定ファイルを提示しています。
    PHPはtimezoneの設定を行わないと、うまく動作しませんので注意が必要です。

  • 必要なパッケージのインストール

  • # yum -y install net-snmp cacti
    ※ その他 rrdtoolやphp-snmp等がインストールされる。
    ※ cacti 0.8.8aがインストールされる前提で以下手順を記載します。(2012/9/21現在)

  • snmpの設定

  • # vi /etc/snmp/snmpd.conf
    com2sec local localhost private
    com2sec mynetwork 192.168.1.0/24 public

    group MyRWGroup v1 local
    group MyRWGroup v2c local
    group MyROGroup v1 mynetwork
    group MyROGroup v2c mynetwork

    view all included .1 80

    access MyRWGroup "" any noauth exact all all none
    access MyROGroup "" any noauth exact all none none

    disk / 10000

    pass .1.3.6.1.4.1.4413.4.1 /usr/bin/ucd5820stat
    MRTGを設定している場合は、特に変更しなくても良いはずです。

  • snmpの自動起動設定

  • # chkconfig snmpd on

  • snmpの起動

  • # service snmpd start

  • mysql55の自動起動設定

  • # chkconfig mysqld on

  • mysql55の起動

  • # service mysqld start

  • mysql55の設定

  • # mysql -u root -p
    Enter password: 初めての場合は空

    mysql> create database cacti;

    mysql> grant all privileges on cacti.* to cactiuser@localhost identified by 'パスワード';

    mysql> exit

    # mysql -u cactiuser -p cacti < /usr/share/doc/cacti-0.8.8a/cacti.sql
    Enter password: パスワード

  • cactiの設定

  • # vi /etc/cacti/db.php
    $database_type = "mysql";
    $database_default = "cacti";
    $database_hostname = "localhost";
    $database_username = "cacti";
    $database_password = "パスワード";
    $database_port = "3306";

  • Apacheの設定(BASIC認証の設定)

  • # vi /etc/httpd/conf.d/cacti.conf
    #
    # Cacti: An rrd based graphing tool
    #

    # Change the following ACLs to open up Cacti to other network devices.
    # For example:
    # On httpd 2.4, change "Require host localhost" to "Require all granted".
    # On httpd 2.2, change "Allow from localhost" to "Allow from all".

    Alias /cacti /usr/share/cacti

    <Directory /usr/share/cacti/>
    <IfModule mod_authz_core.c>
    # httpd 2.4
    #Require host localhost

    Options None
    SSLRequireSSL
    AuthType Basic
    AuthName "Login"
    AuthUserFile "/var/www/.htpasswd"
    Require valid-user
    php_flag magic_quotes_gpc on
    php_flag track_vars on
    </IfModule>
    <IfModule !mod_authz_core.c>
    # httpd 2.2
    Order deny,allow
    Deny from all
    Allow from localhost
    </IfModule>
    </Directory>

    <Directory /usr/share/cacti/install>
    # mod_security overrides.
    # Uncomment these if you use mod_security.
    # allow POST of application/x-www-form-urlencoded during install
    #SecRuleRemoveById 960010
    # permit the specification of the rrdtool paths during install
    #SecRuleRemoveById 900011
    </Directory>


    # These sections marked "Require all denied" (or "Deny from all")
    # should not be modified.
    # These are in place in order to harden Cacti.
    <Directory /usr/share/cacti/log>
    <IfModule mod_authz_core.c>
    Require all denied
    </IfModule>
    <IfModule !mod_authz_core.c>
    Order deny,allow
    Deny from all
    </IfModule>
    </Directory>
    <Directory /usr/share/cacti/rra>
    <IfModule mod_authz_core.c>
    Require all denied
    </IfModule>
    <IfModule !mod_authz_core.c>
    Order deny,allow
    Deny from all
    </IfModule>
    </Directory>

    # htpasswd -c /var/www/.htpasswd ユーザー名

  • Apacheの再起動

  • # service httpd restart

  • cactiの初期設定

  • https://サーバ名/cacti/にアクセス。

    cacti_01.png
    「Next >>」をクリック

    cacti_02.png
    「Next >>」をクリック

    cacti_03.png
    「Finish」をクリック

    cacti_04.png
    User Name「admin」、Password「admin」を入力し「Login」をクリック

    cacti_05.png
    任意のパスワードをPassword、Confirmに入力し「Save」をクリック

    cacti_06.png
    「console」タブ

    「Devices」

    「SNMP Version」で「Version 2」を選択

    「SNMP Community」に「public」を入力

    「save」ボタン

  • ネットワークトラフィックグラフ追加

  • 「console」タブ

    「Devices」

    「Localhost」

    「Associated Data Queries Add Data Query」で「SNMP - Interface Statistics」を選択

    「add」ボタン

    「New Graphs」

    「Data Query [SNMP - Interface Statistics]」の「Name (IF-MIB)」をチェック

    「create」ボタン

  • ディスク使用状況グラフ追加

  • 「console」タブ

    「New Graphs」

    「Data Query [Unix - Get Mounted Partitions]」の「Mount Point」をチェック

    「create」ボタン

  • 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」ボタン

  • cronの設定

  • # vi /etc/cron.d/cacti
    MAILTO=""
    */5 * * * * cacti /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1

    # service crond restart

  • 公開用グラフの設定

  • # mkdir /var/www/cactihtml
    # chown cacti. /var/www/cactihtml/

    # vi /etc/httpd/conf.d/cactihtml.conf
    # Change the following ACLs to open up Cacti to other network devices.
    # For example:
    # On httpd 2.4, change "Require host localhost" to "Require all granted".
    # On httpd 2.2, change "Allow from localhost" to "Allow from all".

    Alias /cactihtml /var/www/cactihtml

    <Directory /var/www/cactihtml/>
    <IfModule mod_authz_core.c>
    # httpd 2.4
    Require all granted
    </IfModule>
    <IfModule !mod_authz_core.c>
    # httpd 2.2
    Order allow,deny
    Allow from all
    </IfModule>
    </Directory>

    # service httpd reload

    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」ボタン

  • Disk I/Oのグラフを設定

  • ここからテンプレートをダウンロードする。

    # tar xvzf diskio087d.tar.gz
    # mv disk_io.xml /usr/share/cacti/resources/snmp_queries/

    cacti087d_data_query_snmp_-_get_disk_io.xmlを、cactiのImport Templatesでインポート。

    「console」タブ

    「Devices」

    「Localhost」

    「Assosiated Data Query」に「SNMP - Get Disk IO」を追加

    「New Graphs」

    「Data Query [SNMP - Get Disk IO]」の該当する「Description」をチェック

    「create」ボタン

  • cactiの日本語化

  • 日本語化したい人のみ、ここからバージョンにあったファイルをダウンロードし、/usr/share/cactiに上書きして下さい。
    この場合、勝手にyum updateでアップグレードすると英語版に戻ってしまいますので、yum.confでcactiのアップグレードを除外するように設定した方が良いと思います。

    その他、いろいろなグラフを作成することができますので、それぞれで調べてみて下さい。
    以下、参考リンクです。

    Wikipedia(Linux)
    Wikipedia(CentOS)
    Cacti
    Cactiの日本語化

関連記事


FC2Blog Rankingblogram投票ボタンとれまが人気ブログランキングブログランキング・にほんブログ村へ
くる天 人気ブログランキングにほんブログ村 IT技術ブログ CentOSへ

テーマ : Linux
ジャンル : コンピュータ

コメントの投稿

非公開コメント

プロフィール

WING☆

Author:WING☆


カレンダー
04 | 2017/05 | 06
- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 - - -
最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
カウンター
お問い合わせ

名前:
メール:
件名:
本文:

WING☆からのお知らせ
  • CentOS 7設定集
  •    └wingリポジトリ(el7)

  • CentOS 6 x64設定集
  •    └wingリポジトリ(el6)

  • CentOS 5 x64設定集
  •    └wingリポジトリ(el5)



    My Yahoo!に追加

    FC2ブログランキング



    リンク
    ブロとも一覧
    Virtualization & Sever Maniax
    RSSリンクの表示
    QRコード
    QRコード
    ブロとも申請フォーム

    この人とブロともになる