2013年4月16日火曜日

Zabbixのパフォーマンスチューニングについて

Zabbixのチューニングで一番影響が大きいのは、DBMSのチューニングです。
CentOSなどのデフォルトの設定では、サーバに搭載(用意)されたメモリを有効に活用できる設定にはなっていません。

例えば、MySQLを利用する場合は、innodb_buffer_pool_sizeなどの調整が必要です。

他にも色々と設定項目がありますので、以下に添付するURLにあるスライドなどをご確認ください。

ご参考:
 「Zabbixのパフォーマンスチューニング&インストール時の注意点」
  http://www.slideshare.net/KodaiTerashima/zabbix-12061530

2013年4月9日火曜日

古い情報を参照しないようにしましょう

某サイトのログを確認させてもらっていたら、5年以上の昔の情報
を参照している方がいらっしゃるようです。

OSSの場合、1年程度しかもたない場合も多いので、常に新しい情報
にアクセスするようにすることを強くお勧めします。

あと、yum-updatesdなどで更新情報を自動的に最新に更新してはい
るようですが、その内容を確認されていますか?
404エラーとかでたまま放置しているサイトもあるようです。

こちらもログやその内容を確認し、ちゃんと新しい情報に更新する
ようにしましょう。

2013年3月1日金曜日

Zabbix公式パッケージ公開開始

Zabbixの開発元であるZabbix SIAから、公式パッケージが公開されました。
# オフィシャルパッケージって書いた方がいいのかな?

RedHat 5/6、CentOS 5/6、Debian 6、Ubuntu 10.04用が公開されたようです。
ダウンロードはこちらから。 → http://www.zabbix.com/jp/download.php

RedHatやCentOSならば、zabbix-releaseパッケージをインストールすれば、yumが利用できます。
例えば、RedHat 6またはCentOS 6で、2.0系を利用するなら、

 zabbix-release-2.0-1.el6.noarch.rpm

をインストールしてください。
あとは、yumコマンドでインストールできます。

例えば、MySQL用の一式をインストールするなら、

 # yum install zabbix-agent zabbix-get zabbix-sender zabbix-server-mysql zabbix-web-mysql zabbix-java-gateway zabbix-web-japanese

といった感じです。

注意点としては、パッケージ構成がZABBIX-JPのパッケージと若干異なります。
具体的には、zabbix_getとzabbix_senderが、ZABBIX-JPのパッケージでは、zabbix-agentのパッケージに含まれていましたが、それぞれ別パッケージとして分割されています。

あと、グラフやマップで日本語を利用できるようにするには、zabbix-web-japaneseというパッケージもインストールしてください。
ログイン時にデフォルトでは英語になってますが、ログイン後、profileメニューでLanguageとしてJapaneseを選択すれば、メニューなども日本語になります。

あと、パッケージをインストール後、

 /etc/httpd/conf.d/zabbix.conf

のPHPのtimezone設定を、

 php_value date.timezone Asia/Tokyo

と設定しておくと、Webのインストールウィザードを開いたときの警告を出さないようにできます。
設定変更後、Apacheの再起動を忘れずに。
# あ、日本以外なら自分のtimezoneに合わせてくださいね。

DebianとUbuntuも同様にリポジトリを追加して簡単にインストールできるようになったはずですが、詳細な手順は未確認です。

2012年9月27日木曜日

CentOS 6.3にZenoss Core 4.2.0をインストールしてみる

自動スクリプト利用版です。
インストールマニュアルに載っている方法を利用します。

1.CentOS 6.3(x86_64)のインストール

 ベースとかでCentOS 6.3をインストールして、postfixがインス
 トールされていると、依存関係でmysql-libsがインストールされ
 てしまっていて、自動インストールでインストールするMySQL 5.5
 のライブラリと競合してしまうのでアンインストール。

  # rpm -e --nodeps mysql-libs

2.自動インストーラのダウンロードと実行

  # wget --no-check-certificate https://raw.github.com/zenoss/core-autodeploy/master/core-autodeploy-4.2.sh
  # chmod +x core-autodeploy-4.2.sh
  # ./core-autodeploy-4.2.sh
  ※ 基本的にこのスクリプトの中身の順序で実行すれば手動でも可

3.MySQL-shared-compatのインストール

 アンインストールしてしまったmysql-libsの代わりに、インスト
 ールされたMySQLのバージョンに合わせてダウンロードしてイン
 ストールする

  # yum localinstall MySQL-shared-compat-5.5.27-1.el6.x86_64.rpm

4.初期設定

  ウェブブラウザで、

   http://IPアドレス:8080/

  にアクセス。
  adminのパスワードと自分のアカウント作成を実施。
  その後、すぐに監視対象を追加しないなら追加やディスカバリ
  はスキップして初期設定終了。

5.net-snmpの設定

  デフォルトで監視対象に登録されるlocalhostが、SNMPでサー
  バの情報を取得するよう設定されているが、net-snmpのデフォ
  ルト設定では、監視に必要な情報が取得できないので、取得で
  きるように、/etc/snmp/snmpd.confを修正する。

  セキュリティを気にしないなら、最後に、

   view systemview included .1

  と一行書く。
  ※ 本当は必要なところからのみアクセスできるようにすること。

6.OS毎再起動

  Web画面から再度SNMPの値の再取得を強制的に行わせる方法が
  みつからなかったのでOS毎再起動を実施。


手順もれがあるかもしれないので、あったら後で修正します。

2012年9月26日水曜日

PHP 5.4でZabbixが文字化け?

Twitterでつぶやいていた人がいらっしゃったので確認してみた。

自分でPHPをconfigureからやってもいいのですが、他人に詳細を説
明するのが面倒なので、標準で5.4が利用できるFedora 17を選択。
Zabbixのバージョンは、2.0.2を利用。

----------
結論:
----------
 全く問題なくメニューやグラフにも日本語が表示できる。

----------
障害原因の予測:
----------
・必要なPHPのライブラリがインストールされていない。

 MySQLを利用しているなら、

  # yum install php-bcmath php-gd php-mbstring php-xml php-common php-pdo php-mysql

 とインストールしておけばOK。
 独自にPHPをconfigureから実施したのであれば、何らかの引数が
 不足していると思われる。

・日本語表示可能なフォントが配置及び設定されていない。

 ZabbixのPHPファイル群を配置したfontsディレクトリに、日本語
 が表示可能なTureTypeフォントを配置して、

  include/defines.inc.php

 内の「ZBX_GRAPH_FONT_NAME」「ZBX_FONT_NAME」に配置したフォ
 ントの拡張子を除いた文字列を設定する。

 Fedora 17なら、vlgothic-p-fontsというパッケージに含まれる
 「/usr/share/fonts/vlgothic/VL-PGothic-Regular.ttf」を利用
 して、先ほどの変数には「VL-PGothic-Regular」を指定するとい
 い感じに表示してくれる。

2012年8月24日金曜日

Pandora FMS 4.0.2をCentOS 5.8にインストールしてみる

ちょっと前にバージョン4.0.2をリリースしたPandora FMSさんが、

 古いメニューやスタイルなんて忘れちゃってよ、
  4.0.2は綺麗になったんだぜ。

とつぶやかれていたので、久しぶりにインストールしてみた。

本家はここね。→
 http://pandorafms.com/
で、ドキュメントも一応ある。→
 http://pandorafms.com/pandora/doc/en

個人的には、RHEL系で試すことにしているので、以下のURLからRPM
をダウンロードしてチャレンジ。
http://sourceforge.net/projects/pandora/files/Pandora%20FMS%204.0.2/Final/RHEL_CentOS%20%28RPM%29/

今回は、CentOS 5.8にインストールしてみた。

先ほど紹介したドキュメントリンクページから日本語のマニュアル
をダウンロードしてみましたが、あちこち古い情報のままで更新さ
れていないし、ドキュメントの構成が「すぐに試してみよう」とい
う人にはまったく適さない構成や内容なのでお勧めしません。

とりあえずインストールして動かしてみたいというだけなら、以下
の手順を参照してもらったほうが良いと「私は」思います。

さて、インストールを開始するとして、いくつかの依存パッケージ
は、OS標準のリポジトリにはありません。
マニュアルには、「contribution/toolsにて提供しています。」と
書いてありますが、contribution以下にtoolsはありません。
実際にあるのは以下のURLです。
http://sourceforge.net/projects/pandora/files/Tools%20and%20dependencies%20%28All%20versions%29/RPM%20CentOS%2C%20RHEL/

ドキュメント作成して、再確認してないでしょ。
>Pandora FMSのマニュアル作成者さん


--------------------------------
1.各種パッケージのインストール
--------------------------------

さて、各パッケージをダウンロード後、インストール開始。
今回は、とりあえず1台の中にサーバとエージェントとコンソール
を入れてしまうので、以下の通り。

 # yum localinstall --nogpgcheck pandorafms_console-4.0.2-1.noarch.rpm
 # yum localinstall --nogpgcheck wmic-4.0.0SVN-2.1.el5.centos.noarch.rpm
 # yum localinstall --nogpgcheck pandorafms_server-4.0.2-1.noarch.rpm
 # yum localinstall --nogpgcheck pandorafms_agent_unix-4.0.2-1.noarch.rpm
 # yum install graphviz-gd

※RPMの依存関係に書かれていませんが極力CentOS標準のパッケージ
 を利用する場合には「graphviz-gd」のインストールが必須。

----------------------
2.DBMS(MySQL)の準備
----------------------

そして、今回はDBもローカルに入れてしまうので、mysql-serverも
インストール。

 # yum install mysql-server

マニュアルには記載が見当たりませんでしたが、一応、以下の設定
を追加して、mysqldを起動。

/etc/my.cnf
-----
character-set-server=utf8
skip-character-set-client-handshake
-----

 # service mysqld start

rootのパスワードとか余計なアカウント消すとかやっておくことを
お勧め。(mysql_secure_installationを使うとか。)

---------------------
3.セットアップ開始
---------------------

Apacheを起動後、ブラウザで以下のURLにアクセス。

 http://IPアドレス/pandora_console/install.php

MySQLを選択して、MySQLのrootアカウントやそのパスワード、利用
するデータベースサーバに対する接続情報やデータベース名などを
入力してセットアップを進める。
最後に、

 Established privileges for user pandora.
 A new random password has been generated: hogehoge

とPandora FMS用に作成されたデータベースのアカウントのパスワ
ードが表示されるのでメモしておくこと。
そのパスワードで、/etc/pandora/pandora_server.confのdbpassの
ところのパスワードを書き換えます。

 # vi /etc/pandora/pandora_server.conf

あと、今回は、ローカルのサーバのエージェントを監視するので、
ローカルから監視できるようlocalに変更してしまいます。

 # vi /etc/pandora/pandora_agent.conf

transfer_mode tentacle

transfer_mode local

セットアップが終了したら、install.phpは不要なので、削除もし
くは名前の変更をしておきます。

 # cd /var/www/html/pandora_console
 # mv install.php install.php.bak

------------------
4.サービスの開始
------------------

 # service pandora_server start
 # service pandora_agent_daemon start

------------------------------
5.管理コンソールへのアクセス
------------------------------

ここまで設定できれば、あとは以下のURLにブラウザでアクセス。

 http://172.21.21.45/pandora_console/

デフォルトの管理者のIDとパスワードは、
 admin
 pandora
です

日本語表示にしたい場合は、画面左上の[admin]をクリックして、
Languageで「日本語」を選択してください。
あと、システム管理 -> 設定で、タイムゾーンを「Asia/Tokyo」に
しておきます。

こんな感じ。

2012年8月20日月曜日

net-snmpの拡張

SNMPを利用して独自のアプリケーションのメトリクスを収集しよう
とする場合に、net-snmpを利用しているのであれば、net-snmpを拡
張して対応できます。

拡張する方法としては、

 ・net-snmpに組み込む
 ・net-snmpの設定で外部スクリプトを呼び出して
  値を取得できるようにする

方法が考えられるのですが、それぞれの実装方法に関しては、以下
のURLなどをご参照ください。


net-snmpについて(独自監視項目の追加) - 前編
http://codezine.jp/article/detail/2938
net-snmpについて(独自監視項目の追加) - 後編
http://codezine.jp/article/detail/2991

18.5.5. Net-SNMP の拡張
https://access.redhat.com/knowledge/docs/ja-JP/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/sect-System_Monitoring_Tools-Net-SNMP-Extending.html

Linux と net-snmp の実装
http://www.wit-systems.co.jp/Linux_net-snmp001.htm
NET-SNMP 導入メモ
http://homepage3.nifty.com/myhometown/snmp.htm

第5回 図解で知るSNMP――MIB情報のすべて (1/8)
http://www.itmedia.co.jp/enterprise/articles/0705/21/news015.html