zabbix服务端客户端部署

Posted 腐种发芽

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zabbix服务端客户端部署相关的知识,希望对你有一定的参考价值。

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
       zabbixzabbix server与可选组件zabbix agent两部分组成。
       zabbix server可以通过SNMPzabbix agentping,端口监视等方法提供对远程服务器/网络状态的监视。
       zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。

 

zabbix的主要特点:
          - 安装与配置简单,学习成本低 
          - 支持多语言(包括中文)
          - 免费开源
          - 自动发现服务器与网络设备
          - 分布式监视以及WEB集中管理功能
          - 可以无agent监视
          - 用户安全认证和柔软的授权方式
          - 通过WEB界面设置或查看监视结果
          - email等通知功能
         等等

 

Zabbix主要功能:
         - CPU负荷
         - 内存使用
         - 磁盘使用
         - 网络状况
         - 端口监视
         - 日志监视

 

 

服务器端:

准备篇:

一、Web环境:nginx+mysql+php

CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14

http://www.osyunwei.com/archives/7891.html

二、zabbix软件包下载

zabbix-2.2.6

http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.6/zabbix-2.2.6.tar.gz

上传zabbix-2.2.6.tar.gz到服务器/usr/local/src目录下面

安装篇

一、创建、导入zabbix数据库

cd /usr/local/src #进入软件包下载目录

tar zxvf zabbix-2.2.6.tar.gz #解压

cd /usr/local/src/zabbix-2.2.6/database/mysql #进入mysql数据库创建脚本目录

ls #列出文件,可以看到有schema.sql、images.sql、data.sql这三个文件

mysql -u root -p #输入密码,进入MySQL控制台

create database zabbix character set utf8; #创建数据库zabbix,并且数据库编码使用utf8

insert into mysql.user(Host,User,Password) values(‘localhost‘,‘zabbix‘,password(‘123456‘)); #新建账户zabbix,密码123456

flush privileges; #刷新系统授权表

grant all on zabbix.* to ‘zabbix‘@‘127.0.0.1‘ identified by ‘123456‘ with grant option; #允许账户zabbix能从本机连接到数据库zabbix

flush privileges; #再次刷新系统授权表

use zabbix #进入数据库

source /usr/local/src/zabbix-2.2.6/database/mysql/schema.sql #导入脚本文件到zabbix数据库

source /usr/local/src/zabbix-2.2.6/database/mysql/images.sql #导入脚本文件到zabbix数据库

source /usr/local/src/zabbix-2.2.6/database/mysql/data.sql #导入脚本文件到zabbix数据库

注意:请按照以上顺序进行导入,否则会出错。

exit #退出

或者这样导入

mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-2.2.6/database/mysql/schema.sql

mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-2.2.6/database/mysql/images.sql

mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-2.2.6/database/mysql/data.sql

cd /usr/lib64/mysql #32位系统为/usr/lib/mysql,注意系统版本同,文件版本可能不一样,这里是16.0.0

ln -s libmysqlclient.so.16.0.0 libmysqlclient.so #添加软连接

ln -s libmysqlclient_r.so.16.0.0 libmysqlclient_r.so #添加软连接

二、安装zabbix

1、添加用户:

groupadd zabbix #创建用户组zabbix

useradd zabbix -g zabbix -s /bin/false #创建用户zabbix,并且把用户zabbix加入到用户组zabbix中

2、安装依赖包 #CentOS使用yum命令安装

yum install net-snmp-devel curl curl-devel mysql-devel

备注:以上软件包如果在安装Web环境LAMP或者LNMP时已经安装过,此步骤可忽略

3、安装zabbix

ln -s /usr/local/lib/libiconv.so.2 /usr/lib/libiconv.so.2 #添加软连接

/sbin/ldconfig #使配置立即生效

cd /usr/local/src/zabbix-2.2.6 #进入安装目录

./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-net-snmp --with-libcurl --enable-proxy --with-mysql=/usr/bin/mysql_config #配置

make #编译

make install #安装

ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/ #添加系统软连接

ln -s /usr/local/zabbix/bin/* /usr/local/bin/ #添加系统软连接

说明:find / -name mysql_config 查找位置,如果没有mysql_config,需要安装yum install mysql-devel

4、添加zabbix服务对应的端口

vi /etc/services #编辑,在最后添加以下代码

# Zabbix

zabbix-agent 10050/tcp # Zabbix Agent

zabbix-agent 10050/udp # Zabbix Agent

zabbix-trapper 10051/tcp # Zabbix Trapper

zabbix-trapper 10051/udp # Zabbix Trapper

:wq! #保存退出

5、修改zabbix配置文件

cd /usr/local/zabbix/etc

vi /usr/local/zabbix/etc/zabbix_server.conf

DBName=zabbix #数据库名称

DBUser=zabbix #数据库用户名

DBPassword=123456 #数据库密码

ListenIP=127.0.0.1 #数据库ip地址

AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts #zabbix运行脚本存放目录

:wq! #保存退出

vi /usr/local/zabbix/etc/zabbix_agentd.conf

Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/

UnsafeUserParameters=1 #启用自定义key

:wq! #保存退出

6、添加开机启动脚本

cp /usr/local/src/zabbix-2.2.6/misc/init.d/fedora/core/zabbix_server /etc/rc.d/init.d/zabbix_server #服务端

cp /usr/local/src/zabbix-2.2.6/misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd #客户端

chmod +x /etc/rc.d/init.d/zabbix_server #添加脚本执行权限

chmod +x /etc/rc.d/init.d/zabbix_agentd #添加脚本执行权限

chkconfig zabbix_server on #添加开机启动

chkconfig zabbix_agentd on #添加开机启动

7、修改zabbix开机启动脚本中的zabbix安装目录

vi /etc/rc.d/init.d/zabbix_server #编辑服务端配置文件

BASEDIR=/usr/local/zabbix/ #zabbix安装目录

:wq! #保存退出

vi /etc/rc.d/init.d/zabbix_agentd #编辑客户端配置文件

BASEDIR=/usr/local/zabbix/ #zabbix安装目录

:wq! #保存退出

三、配置web站点

cd /usr/local/src/zabbix-2.2.6

cp -r /usr/local/src/zabbix-2.2.6/frontends/php /usr/local/nginx/html/zabbix

chown www.www -R /usr/local/nginx/html/zabbix

备注:/usr/local/nginx/html为Nginx默认站点目录 www为Nginx运行账户

service zabbix_server start #启动zabbix服务端

service zabbix_agentd start #启动zabbix客户端

四、修改php配置文件参数

1、vi /etc/php.ini #编辑修改

post_max_size =16M

max_execution_time =300

max_input_time =300

:wq! #保存退出

2、vi /usr/local/php/etc/php-fpm.conf #编辑修改

request_terminate_timeout = 300

:wq! #保存退出

service php-fpm reload #重启php-fpm

五、安装web

在浏览器中打开:

http://192.168.21.127/zabbix/setup.php

技术分享图片

系统运维  www.osyunwei.com  温馨提醒:qihang01原创内容?版权所有,转载请注明出处及原文链

Next

技术分享图片

检查系统环境设置,必须全部都为ok,才能继续

Next

技术分享图片

配置MySQL数据库信息

Database:MySQL

Database host:127.0.0.1

Database port:use default port

Database name:zabbix

User:zabbix

Password:123456

技术分享图片

Test connection   #测试数据库连接是否正常,显示ok表示通过

Next

技术分享图片

系统运维  www.osyunwei.com  温馨提醒:qihang01原创内容?版权所有,转载请注明出处及原文链

Next  默认

技术分享图片

Next

技术分享图片

Finish  安装完成

六、更改zabbix默认语言为简体中文、替换监控图像上系统默认的中文字体

1、修改系统配置文件,让web页面支持简体中文显示

vi /usr/local/nginx/html/zabbix/include/locales.inc.php #编辑修改

‘zh_CN‘ => array(‘name‘ => _(‘Chinese (zh_CN)‘), ‘display‘ => false),

修改为

‘zh_CN‘ => array(‘name‘ => _(‘Chinese (zh_CN)‘), ‘display‘ => true),

:wq! #保存退出

2、替换监控图像上系统默认的字体 #默认字体不支持中文,如果不替换,图像上会显示乱码

在Windows系统中的C:\Windows\Fonts目录中复制出一个中文字体文件,例如msyh.ttf

把字体文件msyh.ttf上传到zabbix站点根目录下fonts文件夹中

例如:/usr/local/nginx/html/zabbix/fonts

备份默认的字体文件:DejaVusSans.ttf-bak

修改msyh.ttf名称为DejaVusSans.ttf

3、在浏览器中打开:

http://192.168.21.127/zabbix

技术分享图片

账号:admin

密码:zabbix

Sign in 登录

如下图所示

技术分享图片

技术分享图片

点击Profile

如下图所示

技术分享图片

Language:Chinese(zh_CN)  #简体中文

点Save 保存

退出站点,重新登录之后,如下图所示

默认界面已经是中文显示

技术分享图片

至此,Zabbix安装图解教程完成。

 

客户端:

 1) 创建用户

groupadd zabbix

useradd -g zabbix zabbix

         2)zabbix软件包下载,安装

zabbix-2.2.6

http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.6/zabbix-2.2.6.tar.gz

上传zabbix-2.2.6.tar.gz到服务器/usr/local/src目录下面

 

cd /usr/local/src #进入软件包下载目录

tar zxvf zabbix-2.2.6.tar.gz #解压

      cd /usr/local/src/zabbix-2.2.6 #进入安装目录

./configure --prefix=/usr/local/zabbix --enable-agent

make && make install

3)添加服务端口和修改启动脚本

 

vi /etc/services #编辑,在最后添加以下代码

# Zabbix

zabbix-agent 10050/tcp # Zabbix Agent

zabbix-agent 10050/udp # Zabbix Agent

zabbix-trapper 10051/tcp # Zabbix Trapper

zabbix-trapper 10051/udp # Zabbix Trapper

cp /usr/local/src/zabbix-2.2.6/misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd 

chmod +x /etc/rc.d/init.d/zabbix_agentd #添加脚本执行权限

 

vi /etc/rc.d/init.d/zabbix_agentd #编辑客户端配置文件

修改BASEDIR=/usr/local/zabbix/ #zabbix安装目录

chkconfig zabbix_agentd on #添加开机启动

4)修改zabbix_agent配置文件

vim /usr/local/zabbix/etc/zabbix_agentd.conf
      Server=192.168.1.22,192.168.1.21 #服务器端的IP及本机的IP

ServerActive=192.168.1.22,192.168.1.21

Hostname=single #agent主机名

Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/  #扩展配置目录

   5)启动

   /etc/init.d/zabbix_agentd start

   6)在防火墙上开启相应端口

   vi /etc/sysconfig/iptables

   添加:

   -A INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT
   -A INPUT -m state --state NEW -m tcp -p tcp --dport 10051 -j ACCEPT

    重启防火墙:

    service iptables restart

    7)测试

      下面的命令需要在server端执行,其中192.168.1.21是agent的ip

#/usr/local/zabbix/bin/zabbix_get -s192.168.1.21 -p10050 -k"system.uptime"

1031163   

 

    说明成功啦。

    8)监控该服务器

    访问:http://192.168.1.22/zabbix/,192.168.1.22是zabbix server的IP.

组态—>主机->创建主机,

技术分享图片

可以选择相应的模板,如:

技术分享图片

技术分享图片

Z如果是红色的话是不正常的,必须是绿色。






















以上是关于zabbix服务端客户端部署的主要内容,如果未能解决你的问题,请参考以下文章

部署zabbix服务端和客户端和网页

部署zabbix服务端和客户端和网页

ZABBIX最佳实践——客户端部署

zabbix客户端部署zabbix-agent2

zabbix配置部署

基于rhel7.2的Zabbix平台搭建和部署