云计算平台(监控篇)-Zabbix Server
一、 服务端环境准备
Zabbix Server需要运行在Linux系统上,这里以CentOS作为部署环境。
Root用户安装必须的包,建议配置好yum,通过yum彩电安装下列包,解决包的依赖关系。
LAMP环境
#yum -y install mysql-server httpd php
其他需要用到的包:
#yum install mysql-server
#yum -y install mysql-devel gcc net-snmp-devel curl-devel perl-DBI php-gd php-mysql php-bcmath php-mbstring php-xml
下载最新的Zabbix安装包(官网:http://www.zabbix.com)(在官方网上目前最新的是1.9.4)到本地,解压
#tar zxvf zabbix-1.8.5.tar.gz
增加zabbix用户和组
#groupadd zabbix
#useradd –g zabbix –m zabbix
二、 数据库准备
启动MySQL数据库:
#service mysqld start
修改MySQL root用户密码(默认密码为空)
#mysqladmin –u root –p password root
测试能否正常登陆数据库
#mysql –uroot –proot
创建Zabbix数据库
Mysql> create database zabbix character set utf8;
导入数据库sql脚本
#cd zabbix-1.8.5
# mysql –u root –p zabbix < database/mysql/schema.sql
# mysql –u root –p zabbix < database/mysql/data.sql
# mysql –u root –p zabbix < database/mysql/images_mysql.sql
三、 编译安装
配置编译,prefix是安装后程序目录
# ./configure --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy --prefix=/usr/local/zabbix
# make
# make install
四、 配置文件及web前端文件修改
添加服务端口,添加后如下
# grep zabbix /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
添加配置文件
# mkdir -p /etc/zabbix
# cp ./misc/conf/* /etc/zabbix
# chown -R zabbix:zabbix /etc/zabbix
修改Server配置文件
基本不用修改,用默认配置即可,只需修改一项DBPassword=密码
# vi /etc/zabbix/zabbix_server.conf
修改Agentd配置文件,更改HOST NAME 为本机的hostname就好了
#vi /etc/zabbix/zabbix_agentd.conf
添加web前端php文件
# cd frontends/
# cp -rf php /var/www/html/
# cd /var/www/html
# mv php zabbix
# chown -R zabbix:zabbix zabbix
五、 web前端安装配置
修改php相关参数
# vi /etc/php.ini 找到如下几项,改成下面的值,前面有;号的要删掉
max_execution_time = 300
max_input_time=300
date.timezone = Asia/Shanghai
post_max_size = 32M
memory_limit = 128M
mbstring.func_overload = 2
重启apache
#service httpd restart
在本地浏览器上访问Zabbis Serve地址开始web前端配置,http://ServerIP/zabbix
按提示一步步next,其中Step 3 Check of pre-requisites 必须全部项目OK后才能继续配置,如有提示fail,去server上检查是否安装这个包或配置是否按上述更改。
Step 4 填入Zabbix Server 登陆mysql的用户和密码
Step 7 按提示下载配置文件到Server的/var/www/html/zabbix/conf下,名字一定要是zabbix.conf.php ,在修改时可能出现权限不够的问题,chmod 777 zabbix.conf.php即可.
Step 8 访问web管理界面是可能出现zabbix server no running的情况。
首先查看getsebool –a|grep httpd ,是否httpd_can_network_connect为off,如果为off,需修改为on,修改方法如下:
/usr/sbin/setsebool -P httpd_can_network_connect=1
/usr/sbin/getsebool -a |grep httpd_can_network_connect
修改完成后,刷新一下页面即可。
六、zabbix Agent端安装与部署
相对于Server端的安装与配置,Agent端这方便许多,本人在网上找一个脚本并加以修改,基本可以一键安装。脚本如下:
cd /tmp
groupadd zabbix
useradd -g zabbix zabbix
wget http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.0.3/zabbix-2.0.3.tar.gz
tar vxzf zabbix-2.0.3.tar.gz
rm -f zabbix-2.0.3.tar.gz
cd zabbix-2.0.3
./configure --enable-agent
make install
zabbix_agentd
cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
chkconfig zabbix_agentd on
sed -i "s/Hostname=Zabbix server/Hostname=Centos196/" /usr/local/etc/zabbix_agentd.conf
sed -i "s/Server=127.0.0.1/Server=168.160.200.193/" /usr/local/etc/zabbix_agentd.conf
sed -i "s/# ListenPort=10050/ListenPort=10050/" /usr/local/etc/zabbix_agentd.conf
sed -i "s/# ListenIP=0.0.0.0/ListenIP=168.160.200.196/" /usr/local/etc/zabbix_agentd.conf
/etc/init.d/zabbix_agentd restart
注意三处有标识的方法
Setp1 Hostname此处的Hostname注意与zabbix管理中的Hostname一样
Setp2 Server即Zabbix服务器端的IP
Setp3 Listenip 即 本机IP
我们在配置完zabbix服务器端与客户端后可以通过netstat –an|grep 10050或10051分别查看到Server监控的10051端口和Agent端监控的10050端口
七、Zabbix界面管理篇
Setp1 Discovery配置
Discovery用于自动发现Agent节点,当Agent启动后,Zabbix管理节点可以通过Discovery定义发现节点。
Configuration->Discovery->Create discovery rlue
分别设置Name,IPaddress,time,type等属性即可。
Setp2 创建Hosts