Zabbix 2.0 †
Ubuntu 12.04.3 LTSにagentインストール †
# 通常のリポジトリにはv1.8しか無かったため、別リポジトリを追加
sudo wget http://repo.zabbix.com/zabbix/2.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_2.0-1precise_all.deb
sudo dpkg -i zabbix-release_2.0-1precise_all.deb
sudo aptitude update
# agentのインストール
sudo aptitude install zabbix-agent
sudo sysv-rc-conf zabbix-agent on
# 設定
sudo vim /etc/zabbix/zabbix_agentd.conf
----
Server=192.168.1.10
ListenIP=192.168.1.20
ServerActive=192.168.1.10
Hostname=ubuntu.example.com
----
sudo service zabbix-agent restart
# ポート開放(LANの場合)
sudo ufw allow proto tcp from 192.168.1.0/24 to any port 10050
Windowsにagentをインストール †
- SNMPで済む場合はエージェントインストールせずに済む分、SNMPの方が簡単
- Homepage of Zabbix からWindows向けagentをダウンロード。例:zabbix_agents_2.0.10.win.zip
- zabbix_agents_2.0.10.win.zip を展開し、以下にc:\zabbixにリネーム
- 空ファイル c:\zabbix\zabbix_agentd.userparams.conf を作成
- 設定変更: C:\zabbix\conf\zabbix_agentd.win.conf をコピーして C:\zabbix\zabbix_agentd.conf を編集
Timeout=10
LogFile=c:\zabbix\zabbix_agentd.log
EnableRemoteCommands=1
LogRemoteCommands=1
Server=192.168.1.10
ListenIP=192.168.1.20
ServerActive=192.168.1.10
Hostname=win.example.com
Include=c:\zabbix\zabbix_agentd.userparams.conf
- サービスとしてインストール
cd C:\zabbix\bin\win64
zabbix_agentd.exe --config C:\zabbix\zabbix_agentd.conf --install
zabbix_agentd.exe --config C:\zabbix\zabbix_agentd.conf --start
- アンインストールする場合
cd C:\zabbix\bin\win64
zabbix_agentd.exe --config C:\zabbix\zabbix_agentd.conf --stop
zabbix_agentd.exe --config C:\zabbix\zabbix_agentd.conf --uninstall
- Zabbix server上のホストにテンプレート追加
Zabbix2.0サーバインストール †
※新規インストールする場合は、EPELではなく、Zabbix Official Repository を使った方が3.0へのバージョンアップもできて良い。
- 2012-5-31にZabbix2.0のRPMパッケージが公開されたが、まだyumから全てインストールできる状態ではない
- CentOS5.6 x86_64 t1.micro : ami-5a02fc33 811118151095/suz-lab_ebs_centos-core-x86_64-5.6.2 rootでログイン
- MySQL版
- ※Amazon Linux AMIではrpmパッケージの細かいバージョンが合わず失敗
- 開放ポート:10050/tcp
- rpmでサーバとエージェントのインストール
sudo su -
cd /tmp
# SELinuxは無効
vi /etc/sysconfig/selinux
----
SELINUX=disabled
----
reboot
# yum
yum -y install wget vim-enhanced expect ntp mailx postfix
yum -y install mysql-server curl net-snmp unixODBC OpenIPMI-libs httpd php php-bcmath php-gd php-mbstring php-mysql php-xml
# MTAをpostfixに変更
alternatives --config mta
# 必要パッケージをダウンロード
wget -q http://www.kodai74.net/packages/non-supported/rhel/5/x86_64/fping-2.4b2-16.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/non-supported/rhel/5/x86_64/iksemel-1.4-2.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/non-supported/rhel/5/x86_64/libssh2-1.4.0-2.el5.x86_64.rpm
rpm -ivh \
fping-2.4b2-*.rpm \
iksemel-1.4-2.*.rpm \
libssh2-1.4.0-*.rpm
# zabbix本体やagentをダウンロード
# CentOS 5.xの場合
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-agent-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-server-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-server-mysql-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-web-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-web-mysql-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-web-japanese-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-get-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-sender-2.0.1-1.el5.x86_64.rpm
#サーバとエージェント両方をインストールする場合
rpm -ivh \
zabbix-2.0.*.rpm \
zabbix-agent-2.0.*.rpm \
zabbix-server-2.0.*.rpm \
zabbix-server-mysql-2.0.*.rpm \
zabbix-web-2.0.*.rpm \
zabbix-web-mysql-2.0.*.rpm \
zabbix-web-japanese-2.0.*.rpm \
zabbix-get-2.0.*.rpm \
zabbix-sender-2.0.*.rpm
#エージェントだけをインストールする場合
rpm -ivh \
zabbix-2.0.1-1.*.rpm \
zabbix-agent-2.0.1-1.*.rpm
chkconfig httpd on
chkconfig mysqld on
# ポートを開放する
vi /etc/sysconfig/iptables
----
# apache
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
# zabbix-server
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 10051 -j ACCEPT
----
service iptables restart
# 時計を日本に
yes | cp -f /usr/share/zoneinfo/Japan /etc/localtime
cat > /etc/sysconfig/clock << 'EOS'
ZONE="Asia/Tokyo"
UTC=false
ARC=fals10
EOS
ntpdate ntp.nict.jp; hwclock --systohc;
# apache 文字化け防止と、ディレクトリインデックスを止める
vi /etc/httpd/conf/httpd.conf
----
#AddDefaultCharset UTF-8
<Directory "/var/www/html">
Options -Indexes FollowSymLinks
----
# php utf-8を使用可能に
vi /etc/php.ini
----
max_execution_time = 300
memory_limit = 128M
post_max_size = 16M
upload_max_filesize = 2M
max_input_time = 300
date.timezone = "Asia/Tokyo"
output_handler = mb_output_handler
auto_detect_line_endings = Off
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = pass
mbstring.http_output = pass
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none;
----
service httpd restart
# DB作成
vi /etc/my.cnf
----
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
skip-character-set-client-handshakecharacter-set-server=utf8
default-storage-engine=InnoDB
innodb_log_file_size=128M
innodb_data_file_path=ibdata1:1G
innodb_file_per_table=1
innodb_file_format=Barracuda
innodb_stats_on_metadata=0
#メモリに余裕がある場合は増やす
innodb_buffer_pool_size=8M
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[mysql]
default-character-set=utf8
prompt="\u@\h[\d]> "
auto-rehash
[client]
default-character-set=utf8
[mysqldump]
default-character-set=utf8
max_allowed_packet=16M
----
service mysqld restart
mkpasswd -s 0 > ~/.mysql-zabbix
cat ~/.mysql-zabbix
DBパスワード
echo "DELETE FROM mysql.user WHERE user='';" | mysql -u root -p$(cat ~/.mysql-root) mysql
echo "grant SELECT,INSERT,DELETE,UPDATE,CREATE,DROP,FILE,ALTER,INDEX,CREATE ROUTINE,CREATE VIEW,LOCK TABLES ON *.* TO 'zabbix'@'%' IDENTIFIED BY '$(cat ~/.mysql-zabbix)';FLUSH PRIVILEGES;" | mysql -u root -p$(cat ~/.mysql-root) mysql
echo "CREATE DATABASE zabbix CHARACTER SET utf8;" | mysql -u root -p$(cat ~/.mysql-root) mysql
# 接続テスト
mysql -u zabbix -p$(cat ~/.mysql-zabbix) zabbix
# DBインストール
mysql -u zabbix -p$(cat ~/.mysql-zabbix) zabbix < /usr/share/doc/zabbix-server-mysql-2.0.1/create/schema.sql
mysql -u zabbix -p$(cat ~/.mysql-zabbix) zabbix < /usr/share/doc/zabbix-server-mysql-2.0.1/create/images.sql
mysql -u zabbix -p$(cat ~/.mysql-zabbix) zabbix < /usr/share/doc/zabbix-server-mysql-2.0.1/create/data.sql
# Serverの設定
vim /etc/zabbix/zabbix_server.conf
----
DBPassword=****
----
# Webインターフェースの設定
vim /etc/httpd/conf.d/zabbix.conf
----
# 追加
php_value date.timezone Asia/Tokyo
----
service httpd restart
#エージェントの設定
vi /etc/zabbix/zabbix_agentd.conf
----
LogFileSize=0
Server=127.0.0.1
Hostname=Zabbix server
ServerActive=127.0.0.1
ListenIP=127.0.0.1
----
service zabbix-agent restart
service zabbix-server restart
chkconfig zabbix-server on
chkconfig zabbix-agent on
- 管理画面:http://www.example.com/zabbix にブラウザでアクセス
- Webインストーラの手順を勧めるshow create table zabbix.valuemaps;
- Web画面にログイン
- Username: admin
- Password: zabbix
- 日本語に変更。右上の「Profile」> Language:Japanese(ja_JP) , パスワードを変更, 更新:300秒 にして Save
- ローカルホストの監視。設定 > ホスト > zabbix server > 無効をクリックして有効に変更
- 監視データの確認。監視データ > 最新データ
- 監視データ > グラフ でグラフの表示
- 設定ファイル
- Server:/etc/zabbix/zabbix_server.conf
- Agent:/etc/zabbix/zabbix_agentd.conf
- 右上のセレクトボックスで「ユーザ」に切り替え
- エイリアス「Admin」がデフォルトユーザなのでパスワードを変更しておく
- 右上の「ユーザの追加」で追加可能
- 「権限」タブで「ユーザ」「管理者」「特権管理者」と選択ができる
- 保存
- 管理 > メディアタイプ > Email
- SMTPサーバー: localhost
- SMTP helo: localhost
- 送信元メールアドレス: zabbix@localhost
- PHPのプリコンパイルをキャッシュして高速化。いずれか一つで良い
- APC を使う場合。apacheの子プロセス毎に apc.shm_size を確保しようとする。物理メモリを超えないように注意
yum install php-pecl-apc --enablerepo=epel
vim /etc/php.d/apc.ini
----
apc.shm_size=32M
----
service httpd restart
- php-eaccelerator を使う場合。(PHP 5.3.3, php-eaccelerator.x86_64 1:0.9.6.1-1.el6 環境だと Segmentation fault)
yum install php-eaccelerator --enablerepo=epel
vim /etc/php.d/eaccelerator.ini
----
eaccelerator.shm_size = "32"
----
service httpd restart
Zabbix2.0エージェントの追加 †
※新規インストールする場合は、EPELではなく、Zabbix Official Repository を使った方が3.0へのバージョンアップもできて良い。
- 2.0でzabbix_agentd.conf から次のオプションが廃止になった ServerPort、DisableActive、DisablePassive
- zabbix-agentなしでも、ping, ポート監視等はできる
- Template App Agentless(FTP, HTTP, HTTPS, ICMP, IMAP, LDAP, NNTP, NTP, POP3, SMTP, SSH, Telnet)等
- zabbix-agentをインストールするとリソース監視ができる(要:10050/tcpポート開放)
- Template OS Linux, Template OS Mac OS X, Template OS Windows等
- yumでインストールする場合
- Zabbix SIA
wget http://repo.zabbix.com/zabbix/2.0/rhel/6/x86_64/zabbix-release-2.0-1.el6.noarch.rpm
rpm -ivh http://repo.zabbix.com/zabbix/2.0/rhel/6/x86_64/zabbix-release-2.0-1.el6.noarch.rpm
yum install zabbix-agent --enablerepo=zabbix
- epel
yum install zabbix20-agent --enablerepo=epel
- 何故か設定ファイルオプション -c が無くてzabbixサーバから通信できないで修正(zabbix20-agent-2.0.9-2.el6.x86_64)
vim /etc/rc.d/init.d/zabbix-agent
----
daemon --user zabbix $exec -c /etc/zabbix/zabbix_agentd.conf
----
- エージェント側の設定
- CentOS5.8 x86_64にエージェントだけ追加し、Zabbix serverで監視する
sudo su -
cd /tmp
# SELinuxは無効
vi /etc/sysconfig/selinux
----
SELINUX=disabled
----
reboot
# zabbix 10050/tcp ポートを開放する
vi /etc/sysconfig/iptables
----
# zabbix-agent
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT
----
service iptables restart
# 最低限zabbix, zabbix-agentが有れば良い。デバッグ用にzabbix-get, zabbix-senderがあると便利
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-agent-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-get-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-sender-2.0.1-1.el5.x86_64.rpm
rpm -ivh \
zabbix-2.0.*.rpm \
zabbix-agent-2.0.*.rpm \
zabbix-get-2.0.*.rpm \
zabbix-sender-2.0.*.rpm
vi /etc/zabbix/zabbix_agentd.conf
----
LogFileSize=0
Server=zabbixサーバのアドレスに修正
Hostname=agentのホスト名に変更
# 省略可:NICが複数ある場 + 合などエージェントがListenするIPを指定
#ListenIP=192.168.1.10
# zabbix-serverが1時間落ちてもデータロストしないようにAgentのバッファサイズを拡張
BufferSize=65535
----
service zabbix-agent restart
chkconfig zabbix-agent on
- 設定
- [ホスト]タブ > ホストの作成
- ホスト名:zabbix_agentnod.confのHostnameと会わせた方が良い
- 表示名:適当
- グループ:「Zabbix servers」を外し、新規か「Linux servers」を追加
- エージェントのインタフェース
- IPアドレス:エージェントのIPアドレス(DNSがあれば空)
- DNS名:あれば設定
- 保存
- [テンプレート]タブ > 追加
- グループ:Templates
- チェック「Template OS Linux」
- 保存
アップデート †
- マイナーバージョンアップ時(1.8 > 1.8.1等)は基本はバイナリ更新だけで良い
- メジャーバージョンアップ(1.8 > 2.0等)はDBスキーマの更新も必要。2.2からzabbix-server更新時に自動的に更新されるようになった
- 1.8 => 2.0の場合、2.0のデフォルトの値はインポートされないため、手動でインポートや設定を行う必要がある。(2.0はdiscoveryがデフォルトで設定されているので、新規でインストールしたい)
serverバージョンアップ †
- zabbix停止
service zabbix-server stop
service zabbix-agent stop
- 最新バージョンの取得
- yumでバージョンアップ
yum update zabbix-server \
zabbix-agent \
zabbix-server-mysql \
zabbix-web-japanese \
zabbix-web \
zabbix \
zabbix-web-mysql \
zabbix-get \
zabbix-sernder
- rpmから
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-agent-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-get-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-server-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-server-mysql-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-web-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-web-japanese-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-web-mysql-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-sender-2.0.1-1.el5.x86_64.rpm
rpm -Uvh zabbix-2.0.*.rpm \
zabbix-agent-2.0.*.rpm \
zabbix-get-2.0.*.rpm \
zabbix-server-2.0.*.rpm \
zabbix-server-mysql-2.0.*.rpm \
zabbix-web-2.0.*.rpm \
zabbix-web-japanese-2.0.*.rpm \
zabbix-web-mysql-2.0.*.rpm \
zabbix-sender-2.0.*.rpm
- 1.8から2.0などのメジャーバージョンアップの場合のデータベースのアップデート
/usr/share/doc/zabbix-server-mysql-2.0.1/upgrades/dbpatches/2.0/mysql/upgrade
- DB削除、ユーザ追加してからのmysql完全リストア
mysql -u root -e 'drop database zabbix;'
mysql -u root -e
グラフ でグラフの表示
- 設定ファイル
- Server:/etc/zabbix/zabbix_server.conf
- Agent:/etc/zabbix/zabbix_agentd.conf
server/agentのマイナーアップデート †
agentバージョンアップ †
- 最新バージョンの取得
- yumでバージョンアップ
yum update zabbix-agent \
zabbix
- zabbix-agent 2.0.0 > 2.0.1へバージョンアップ
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-agent-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-get-2.0.1-1.el5.x86_64.rpm
wget -q http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/5/x86_64/zabbix-sender-2.0.1-1.el5.x86_64.rpm
rpm -Uvh \
zabbix-2.0.*.rpm \
zabbix-agent-2.0.*.rpm \
zabbix-get-2.0.*.rpm \
zabbix-sender-2.0.*.rpm
- zabbix再開
service zabbix-agent restart
- エラー:"vfs.partitions.discovery": duplicate key
アクティブチェックの追加 †
- zabbix-agentからzabbix-serverへリクエストを投げるアクティブチェックの方法
- 記事