CentOS 6.4搭建zabbix

时间:2023-03-09 17:01:40
CentOS 6.4搭建zabbix

系统环境:CentOS 6.4 64bit

Zabbix版本:zabbix 2.2.3

前提条件:已安装好LNMP环境

一、服务端:

1、  下载zabbix安装包zabbix-2.2.3.tar.gz并解压

2、  安装zabbix所需组件

yum install -y curl curl-devel net-snmp net-snmp-devel perl-DBI

3、  创建用户账号

Useradd -s /sbin/nologin zabbix

4、  创建zabbix数据库

#mysql -p`cat /data/save/mysql`

mysql>create database zabbix;

mysql>grant all on zabbix.* to zabbix@localhost identified by ' kogzabbix031';

mysql>use zabbix;

mysql>source /root/zabbix-2.2.3/database/mysql/schema.sql

mysql>source /root/zabbix-2.2.3/database/mysql/images.sql

mysql>source /root/zabbix-2.2.3/database/mysql/data.sql

mysql>exit

5、  编译安装zabbix,如果是客户端安装则选--enable-agent就行了

cd zabbix-2.2.3

./configure –enable-server –enable-agent –with-mysql –with-net-snmp –with-libcurl

make install

6、  编辑配置文件

cp zabbix_server.conf zabbix_server.conf.bak

cat > zabbix_server.conf <<EOF

LogFile=/var/log/zabbix_server.log           #定义日志目录文件

DebugLevel=3                                                 #定义记录日志登记

DBHost=localhost                                          #zabbix数据库主机

DBName=zabbix                                             #zabbix数据库名称

DBUser=zabbix                                                        #zabbix数据库用户名

DBPassword=kogzabbix031                        #zabbix数据库密码

StartPollers=30                                                        #轮询的初始值(0-1000)

StartIPMIPollers=4                                        #IPMI轮询的初始值(0-1000)

StartPollersUnreachable=30                       #轮询不可达的主机数(包括IPMI 0-1000)

StartTrappers=8                                             #捕获的初始值(0-1000)

StartPingers=4                                                #ping的初始值(0-1000)

StartDiscoverers=0                                        #自动发现的初始值(0-250)

CacheUpdateFrequency=300                      #缓存更新的频率

StartDBSyncers=8                                          #数据库同步时间

TrendCacheSize=128M                                 #总趋势缓存大小

LogSlowQueries=1000                                  #日志慢查询设定

FpingLocation=/usr/local/sbin/fping        #fping命令位置,这里得先安装了fping才行

EOF

cat > zabbix_agentd.conf <<EOF

LogFile=/var/log/zabbix_agentd.log

Server=127.0.0.1

ServerActive=127.0.0.1

Hostname=121.201.0.165_ZabbixServer

EOF

touch /var/log/zabbix_server.log

touch /var/log/zabbix_agentd.log

chmod 777 /var/log/zabbix_*

7、启动服务(server、agent)

cp /root/zabbix-2.2.3/misc/init.d/tru64/zabbix_server /etc/init.d/

cp /root/zabbix-2.2.3/misc/init.d/tru64/zabbix_agentd /etc/init.d/

chmod 755 /etc/init.d/zabbix_*

在此两文件头部#!/bin/bash下面添加两行:

#chkconfig: 35 95 95

#description:zabbix Agent server

设置开机启动

chkconfig –add zabbix_server

chkconfig –add zabbix_agentd

启动服务

/etc/init.d/zabbix_server start

/etc/init.d/zabbix_agentd start

查看是否成功启动

ps aux|grep zabbix

netstat –nltp|grep 10050

netstat –nltp|grep 10051

8、  添加端口进防火墙允许客户端可以访问(貌似对自动注册主机有用)

-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 10050 -j ACCEPT

-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 10051 -j ACCEPT

重启防火墙

/etc/init.d/iptables restart

9、  配置zabbix的web界面(nginx)

先把zabbix自带的web文件放到web目录下

/bin/cp -r /root/zabbix-2.2.3/frontends/php /usr/local/webserver/zabbix

然后建立nginx配置文件

cat /usr/local/webserver/nginx/conf/vhost/zabbix.conf <<EOF

server

{

listen       80;

server_name  zabbix.kog.com;

index index.html index.htm index.php;

root  /usr/local/webserver/;

#autoindex on;

charset utf-8;

location ~.*\.(swf|xml|mp3|png|jpg|gif|data)$ {

expires       max;

}

location ~.*\.(css|js|mx)$ {

expires       96h;

}

location ~ /.svn/ {

deny all;

}

#expires off;

access_log off;

#access_log  /var/log/zabbix.log  ;

location ~ .*\.php$

{

include fcgi.conf;

fastcgi_pass  127.0.0.1:10080;

fastcgi_index index.php;

expires off;

#access_log off;

access_log  /var/log/zabbix.log;

}

}

EOF

重载nginx配置文件

/root/nginx_reload

10、做host然后访问zabbix的web界面

http://zabbix.kog.com/zabbix/index.php

按照提示一步一步进行配置

根据提示下一步。

这里检测php配置,如果没达到要求的后面则红色提示失败,修改/etc/php.ini即可,修改完后/etc/init.d/php-fpm reload,然后重试则全部提示正常,再然后下一步。

这里输入zabbix数据库的信息,按照建立数据库时的信息填写即可,然后点击测试连接,没问题则提示正常。

输入zabbix的主机、端口和名称。

检查是否全部正常。

如提示找不到zabbix.conf.php文件,点击下载,然后上传到/usr/local/webserver/zabbix/conf目录重试即可。

点击完成即可进入zabbix界面。

至此,zabbix客户端配置完成。

二、客户端:

groupadd zabbix

useradd -g zabbix zabbix

/bin/rm -rf zabbix-2.2.3

tar xvf zabbix-2.2.3.tar.gz

cd zabbix-2.2.3

./configure --enable-agent

make install

mv /usr/local/etc/{zabbix_agentd.conf,zabbix_agentd.conf.bak}

cat > /usr/local/etc/zabbix_agentd.conf<< "EOF"

LogFile=/var/log/zabbix_agentd.log

Server= 121.201.0.165                       #zabbix服务端IP

ServerActive= 121.201.0.165           #zabbix服务端IP

Hostname= 121.201.0.177_OutTest            ##此处的Hostname显示为zabbix自动注册的主机名称,不能带中文,否则重启zabbix_agentd报错

EOF

touch /var/log/zabbix_agentd.log

chmod 777 /var/log/zabbix_agentd.log

cp zabbix-2.2.3/misc/init.d/fedora/core5/zabbix_agentd /etc/init.d/

chmod a+x /etc/init.d/zabbix_agentd

/etc/init.d/zabbix_agentd start

echo "/etc/init.d/zabbix_agentd start" >>/etc/rc.local

客户端要允许服务端进行访问:

-A RH-Firewall-1-INPUT -s 121.201.0.165 -m state --state NEW -j ACCEPT

/etc/init.d/iptables restart

三、Web界面设置

1、更改系统为中文

右上角ProfileàUseràLanguage选Chinese(zh_CN),点击Save保存

此时页面已经变成了中文,但是图形的中文却变成了方框或乱码

解决方法:

从window里上传simkai.ttf此文件到zabbix字体库目录下/usr/local/webserver/zabbix/fonts/

修改配置文件

vim /usr/local/webserver/zabbix/include/defines.inc.php

将DejaVuSans全部替换成simkai

:%s/DejaVuSans/simkai/g

保存退出刷新页面,如果还是不行,建议多尝试其它字体。

2、设置zabbix自动添加主机

配置à动作à事件源(自动注册)à创建动作

点击存档后如下所示,记得启用此动作(观察右边状态)

过一会,则可以看到安装了zabbix_agentd的主机自动添加主机列表中

配置à主机:

主机自动添加上来后可以手动修改一下名称。

3、添加ICMP Ping图形

zabbix使用的是fping,所以需要安装fping

tar xvf fping.tar.gz

cd fping-2.4b2_to/

./configure

make install

chmod u+s /usr/local/sbin/fping

修改/usr/local/etc/zabbix_server.conf添加fping的位置信息

FpingLocation=/usr/local/sbin/fping

找到zabbix自带的模版Template ICMP Ping

选择Graphs-Create Graph

存档后如没问题过一会就出图了