运维监控篇(0)_Zabbix Server安装

前言

以下Zabbix Server安装采用的是LAMP环境,当然可以用LNMP环境了。Zabbix Server 和Zabbix Agent用的C,WEB前端使用的PHP。

安装依赖包

yum源内没有的所需的rpm包时得想办法补齐,不然可能后面编译会出错。

1
$ yum install make mysql-server httpd php mysql-devel gcc net-snmp-devel curl-devel perl-DBI php-gd php-mysql php-bcmath php-mbstring php-xml unixODBC-devel OpenIPMI-devel libxml2-devel
添加用户

添加用户zabbix,创建zabbix用户时会默认创建zabbix组并将zabbix默认加入了zabbix组。由于zabbix的安全机制在其启动时会默认切换到zabbix用户运行。

1
$ useradd zabbix -s /sbin/nologin
数据库

启动mysqld服务

1
2
3
$ service mysqld start 
$ mysqladmin –u root password 'password'
$ mysql –u root –p

Zabbix下载地址 http://www.zabbix.com/download.php
创建zabbix数据库并导入数据

1
2
mysql>create database zabbix character set utf8 collate utf8_bin; 
mysql>grant all on zabbix.* to zabbix@localhost identified by 'zabbix';
1
2
3
4
$ cd /root/zabbix-2.2.6/database/mysql 
$ mysql -uzabbix -pzabbix zabbix< schema.sql
$ mysql -uzabbix -pzabbix zabbix< images.sql
$ mysql -uzabbix -pzabbix zabbix< data.sql
编译安装Zabbix Server
1
2
3
4
5
6
7
8
9
10
$ ./configure --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi --with-unixodbc --prefix=/usr/local/zabbix
$ make install

编译出错解决方法
Not found mysqlclient library 安装mysql-devel
LIBXML2 library not found 安装libxml2-devel
Curl library not found 安装 curl-devel
cannot use unixODBC library 安装unixODBC-devel
Invalid Net-SNMP directory - unable to found net-snmp-config 安装net-snmp-devel
Invalid OPENIPMI directory - unable to find ipmiif.h 安装OpenIPMI-devel
端口设置

添加端口(rhel系统已经自带,centos当然也带了)

1
2
3
4
5
vim /etc/services 
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper
httpd服务设置

修改配置文件,httpd服务修改/etc/httpd/conf/httpd.conf

1
DirectoryIndex index.html index.html.var index.php
zabbix设置

zabbix服务
修改/usr/local/zabbix/etc/zabbix_server.conf参数:

1
2
3
DBName=zabbix 
DBUser=zabbix
DBPassword=zabbix

zabbix启动脚本

1
2
3
4
5
6
7
8
9
$ cp misc/init.d/fedora/core5/zabbix_server /etc/init.d/
$ cp misc/init.d/fedora/core5/zabbix_agentd /etc/init.d/
$ chmod 700 /etc/init.d/zabbix_*
$ vim /etc/init.d/zabbix_server
修改ZABBIX_BIN="/usr/local/sbin/zabbix_server"
为ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_server"
$ vim /etc/init.d/zabbix_agentd
修改ZABBIX_BIN="/usr/local/sbin/zabbix_agentd"
为ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_agentd"

启动服务并设置开机启动

1
2
3
4
$ /etc/init.d/zabbix_server start 
$ /etc/init.d/zabbix_agentd start
$ chkconfig zabbix_server on
$ chkconfig zabbix_agentd on

修改php相关参数

1
2
3
4
5
6
7
$ vi /etc/php.ini 找到如下几项,改成下面的值,前面有;号的要删掉 
max_execution_time = 300
max_input_time = 300
date.timezone = PRC
post_max_size = 32M
重启httpd使php配置生效
$ /etc/init.d/httpd restart

配置zabbix的WEB页面

1
2
3
4
$ cd zabbix-2.0.6
$ cd frontends/
$ cp -rf php/* /var/www/html/
$ chown -R apache.apache /var/www/html/

由于zabbix使用fping替代了ping作为icmp的工具,所以还要安装fping

1
$ yum install fping

访问http://IP/index.php 来安装Zabbix Server的WEB管理端,根据提示进行。
改成中文显示
首先看看配置文件中的中文选项有没有开启(汗!)

1
2
3
$ vim ./include/locales.inc.php 
false改成true
'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => false),

然后就可以将语言设置成中文了(有的版本中文翻译的不是太好,建议用英文)
zabbixserver01
zabbixserver02
保存就好了,如果字体不好看的话,将字体文件拷贝到一下目录

1
2
3
4
$ pwd /var/www/html/fonts 
$ ls
DejaVuSans.ttf msyh.ttf
$

更改配置文件使用自定义字体(或者直接将字体文件重命名为默认的DejaVuSans.ttf也行,就不用进行下一步了)

1
2
3
$ vim ./include/defines.inc.php 
define('ZBX_GRAPH_FONT_NAME', 'msyh'); // font file name
define('ZBX_FONT_NAME', 'msyh');

默认用户名/密码Admin/zabbix到此server端安装完成

----------------本文结束 感谢阅读----------------