狠狠撸

狠狠撸Share a Scribd company logo
窜补产产颈虫入门
2015/10 改定(初版:2014/12)
株式会社セブンメディア
野田 健夫
2Zabbixとは
? Zabbixとは、サーバー、ネットワーク、アプリケーションを監視す
るためのオープンソースソフトウェア。
? 小規模から大規模まで対応できるよう設計されている(大規模な場合、
データをバッファするZabbix Proxyという中継サーバーを作る)。
? Zabbixの主な機能:
? サーバやネットワークの状態をデータ化し、監視する機能。
? 収集したデータをもとにグラフ化を行うグラフィカル表示機能。
? 収集したデータに閾値を設定し、管理者に通知を行う障害検知/通知機能。
3Zabbix システム基本構成例
Zabbix server
DB server
cZabbix agent SNMP agentZabbix sender
※SNMPに対応するために
は、サーバーコンパイル時
に--with-net-snmp を指定
する必要があります。
※パッシブチェックとアク
ティブチェックがある。通
常、パッシブのZabbixエー
ジェントをよくつかう。 ※アイテムをzabbixト
ラッパーとして設定。
4必要環境(Zabbixサーバー)
?ディスク空き容量: 10MB以上
?搭載メモリ: 64MB以上
?MySQL (3.22以上)、PostgreSQL (7.0.2
以上)、SQLite、Oracle、DB2のいずれか
?管理ツールはPHP 5.x 以上で動作。
5サーバー上の障害検知フロー
データ
収集項目
アイテム
トリガー アクション
データ
検知閾値
トリガーに対して
メディア処理
メディア
メール?
SMS連携設定
ホスト
ウェブ
ページアクセス
テンプレート ユーザー
6よく使うZabbix監視テンプレート
Zabbix Agent
Template OS Linux 基本チェック項目(※Template App Zabbix Agentを含む)
Template App Zabbix Server zabbix サーバーの状態監視
Template App HTTP Service HTTP サービス監視
Template App SMTP Service STMP サービス監視
Template App SSH Service SSH サービス監視
Template App MySQL Service MySQL サービス監視
SNMP Agent
Template SNMP Disks
Template SNMP Interfaces
Template SNMP Processors
7拡張テンプレート(1)
?Apache Status モジュール監視
https://github.com/zabbix-jp/plugins/tree/master/monitoring/apache
分当たりのアクセス 転送量
8拡張テンプレート(2)
?MySQL監視
http://time-complexity.blogspot.jp/2014/02/zabbix-mysql-monitoring.html
クエリI/O
転送速度
9拡張テンプレート(3)
?独自監視の追加方法
zabbix_agentd.conf のIncludeで設定したフォルダ内に以下の
ような内容の設定ファイルを追加する。
#!/bin/sh
mycnf_path=/etc/zabbix/my.cnf
output_path=/etc/zabbix/externalscripts/service_status.result
echo_basic_sql() {
cat <<'EOF'
select count(*) as '#User_Total' from users where status=1 and deleted_at is null?G
select count(*) as '#Group_Total' from groups where status=1 and deleted_at is null?G
EOF
}
if [ ! -f $output_path ]
then
echo_basic_sql | /usr/local/mysql/bin/mysql --defaults-extra-file=$mycnf_path hogedb | sed -e "s/[#:]//g" | grep -v '*' > $output_path
elif [ `find $output_path -type f -mmin -3 | wc -l` == "0" ]
then
echo_basic_sql | /usr/local/mysql/bin/mysql --defaults-extra-file=$mycnf_path hogedb | sed -e "s/[#:]//g" | grep -v '*' > $output_path
fi
cat $output_path
UserParameter=hoge.status[*],/etc/zabbix/externalscripts/service_status.sh | grep -w $1 | awk '{print $$2}'
(1)対応するアイテム
(2) hoge.statusに対応するキー[スペース]値を改行区切りで出力するスクリプト処理
(1) (2)
10設定Tips
? デフォルトTimeoutは3秒。長め設定しないとデータが収集されず歯抜けに
なるケースがあるので注意。最低でも30秒程度に調整。
? グラフは、テンプレートで作成すると積算グラフなど複雑なものを作れる。
? SMTP監視がうまくいかないときは以下のような設定変更を行うとよい。
? アイテムの値を取得できるかどうか以下のコマンドでチェックできる。
? Zabbixサーバーが落ちた場合の検知は別で行う必要あり。
? メンテナンス時は、アラートオフになるよう条件設定するとよい。
? 主なテンプレートのヒストリ(詳細データ)保持期間が7日となっているた
め、必要に応じてより長い期間(3ヵ月、1年など)に増やしておくとよい。
net.tcp.service[smtp]
↓
net.tcp.service[tcp,localhost,25]
zabbix_get -s 監視対象(エージェント導入済)サーバIP -p 監視対象サーバのエージェント起動ポート番号 -k キーの値

More Related Content

窜补产产颈虫入门