设为首页 收藏本站
查看: 4558|回复: 0

[经验分享] 使用zabbix监控服务器运行状态

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-10-21 08:35:43 | 显示全部楼层 |阅读模式
一:实验目标
安装zabbix监控服务器运行状态
二:实验环境
zabbix-agent:xuegod63.cn IP:192.168.1.63
zabbix server:xuegod63.cn IP:192.168.1.63
zabbix-agent:xuegod64.cn IP:192.168.1.64

服务概述:
  zabbix(音同zbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
  zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
  zabbix由2部分构成,zabbix server与可选组件zabbix agent。zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。zabbix server可以单独监视远程服务器的服务状态;同时也可以与zabbix agent配合,可以轮询zabbix agent主动接收监视数据(trapping方式),同时还可被动接收zabbix agent发送的数据(trapping方式)。

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

三:实验代码
Zabbix+Linux+nginx+mysql+php
zabbix server端 xuegod63

1)安装zabbix环境
[iyunv@xuegod63 ~]# yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI
2)创建用户账号(server,agent)
[iyunv@xuegod63 ~]# useradd -s /sbin/nologin zabbix
3)创建zabbix数据库并导入zabbix数据库数据(server)
[iyunv@xuegod63 ~]#  mysql -u root -p123456
mysql> create database zabbix;
mysql> grant all on zabbix.* to zabbix@localhost identified by 'zabbix';
mysql> exit
4)安装zabbix,导入数据
[iyunv@xuegod63 ~]# tar zxvf zabbix-2.0.8.tar.gz
[iyunv@xuegod63 ~]# cd zabbix-2.0.8
[iyunv@xuegod63 zabbix-2.0.8]# mysql -uzabbix -pzabbix zabbix < database/mysql/schema.sql
[iyunv@xuegod63 zabbix-2.0.8]# mysql -uzabbix -pzabbix zabbix < database/mysql/images.sql
[iyunv@xuegod63 zabbix-2.0.8]# mysql -uzabbix -pzabbix zabbix < database/mysql/data.sql
修改root密码:
[iyunv@xuegod63 etc]# mysqladmin -u root password 123456

5)编译安装xuegod63  上的zabbix服务器端
[iyunv@xuegod63 zabbix-2.0.8]# ./configure --prefix=/usr/local/zabbix-2.0.8 --enable-server --enable-agent --with-mysql=/server/mysql-5.5/bin/mysql_config --with-net-snmp --with-libcurl
//--prefix指定zabbix安装目录,--enable-server支持zabbix服务器,--enable-agent支持zabbix代理,--with-mysql使用MySQL客户端库可以选择指定路径mysql_config,如果是rpm包安装的mysql数据库,直接使用--with-mysql,不用指定具体路径,--with-net-snmp使用net -snmp软件包,择性地指定路径NET -SNMP配置, --with-libcurl使用curl包
***********************************************************
*            Now run 'make install'                       *
*                                                         *
*            Thank you for using Zabbix!                  *
*              <http://www.zabbix.com>                    *
***********************************************************
[iyunv@xuegod63 zabbix-2.0.8]# make install#不需要执行make,直接make install
[iyunv@xuegod63 zabbix-2.0.8]# cd /usr/local/zabbix-2.0.8/
[iyunv@xuegod63 zabbix-2.0.8]# ls
bin  etc  sbin  share

6)配置服务端配置文件:xuegod63
[iyunv@xuegod63 etc]# cd /usr/local/zabbix-2.0.8/etc/
[iyunv@xuegod63 etc]# vim zabbix_server.conf
修改如下内容:
LogFile=/var/log/zabbix_server.log#可以不修改,
DBHost=localhost
DBName=zabbix
DBUser= zabbix
DBPassword= zabbix

7)修改zabbix_agentd.conf,实现自己监控自己。如下内容:
[iyunv@xuegod63 etc]# vim /usr/local/zabbix-2.0.8/etc/zabbix_agentd.conf
[iyunv@xuegod63 etc]# grep ^[^#] zabbix_agentd.conf
LogFile=/var/log/zabbix_agentd.log
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server
UnsafeUserParameters=1

8)启动守护进程xuegod63  
[iyunv@xuegod63 zabbix-2.0.8]# /usr/local/zabbix-2.0.8/sbin/zabbix_server
[iyunv@xuegod63 zabbix-2.0.8]# netstat -anutp | grep 10051  # server启动端口为10051
tcp        0      0 0.0.0.0:10051               0.0.0.0:*                   LISTEN      14453/zabbix_server

9)添加注册的端口:注:如果看不到启动端口,需要添加注册的端口,
[iyunv@xuegod63 zabbix-2.0.8]#cat >>/etc/services<<EOF
zabbix-agent 10050/tcp Zabbix Agent
zabbix-agent 10050/udp Zabbix Agent
zabbix-trapper10051/tcp Zabbix Trapper
zabbix-trapper 10051/udp Zabbix TrapperEOF
通过浏览器安装zabbix

10)复制zabbix PHPweb网站文件
[iyunv@xuegod63 etc]# cp -r /root/zabbix-2.0.8/frontends/php/ /server/nginx-1.2.8/html/zabbix
#zabbix的终端程序是用php写的,因此需要一个支持php脚本解析的web服务器。然后将frontends/php 下面的php文件拷贝到web服务器html文件目录下面。

10)修改参数
[iyunv@xuegod63 ~]# vim /server/php-5.4-nginx-v2/php.ini
改:;date.timezone =
为:date.timezone = Asia/Chongqing
[iyunv@xuegod63 etc]# /etc/init.d/php-fpm restart
Gracefully shutting down php-fpm . done
Starting php-fpm  done

#确保所有依赖的软件都正确安装。查看到几处不符合要求以及需修改该PHP文件配置文件参数:
[iyunv@xuegod63 etc]# vim /server/php-5.4-nginx-v2/php.ini
查找如下参数并修改为:
----------------
729 post_max_size = 16M
440 max_execution_time = 300
450 max_input_time = 300
[iyunv@xuegod63 etc]# /etc/init.d/php-fpm restart

11)测试登录
   在你的浏览器中,输入url:http://192.168.1.63/zabbix/index.php,你将看到前端安装向导的第一个画面。

QQ截图20161021083128.png
QQ截图20161021083136.png
QQ截图20161021083141.png
QQ截图20161021083146.png
QQ截图20161021083151.png
QQ截图20161021083156.png

将下载文档上传并拷贝到html中
[iyunv@xuegod63 ~]# cp zabbix.conf.php /server/nginx-1.2.8/html/zabbix/conf

QQ截图20161021083200.png
QQ截图20161021083204.png

接着,就可以登录到Zabbix系统的主界面。默认用户名:admin 密码是:zabbix

QQ截图20161021083210.png
QQ截图20161021083214.png

修改显示语言为中文:
QQ截图20161021083219.png


zabbix agent端 xuegod63与xuegod64
配置xuegod63的zabbix agent
1)配置环境
[iyunv@xuegod64~]#yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI
2)创建用户账号
[iyunv@xuegod64~]# useradd -s /sbin/nologin zabbix
3)配置client: xuegod64.cn
[iyunv@xuegod64 ~]# tar zxvf zabbix-2.0.8.tar.gz
[iyunv@xuegod64 ~]# cd zabbix-2.0.8
[iyunv@xuegod64 zabbix-2.0.8]# ./configure --prefix=/usr/local/zabbix-2.0.8 --enable-agent
***********************************************************
*            Now run 'make install'                       *
*                                                         *
*            Thank youfor using Zabbix!                  *
*              <http://www.zabbix.com>                    *
***********************************************************
[iyunv@xuegod64 zabbix-2.0.8]#make install
查看安装后,生成的文件:
[iyunv@xuegod64 zabbix-2.0.8]# cd /usr/local/zabbix-2.0.8/
[root@xuegod64zabbix-2.0.8]# ls
bin  etc  sbin  share
主配置文件:
[iyunv@xuegod64 etc]# ls /usr/local/zabbix-2.0.8/etc/zabbix_agentd.conf

4)注册服务端口
[iyunv@xuegod64 zabbix-2.0.8]# vim /etc/services#最后,添加以下内容
zabbix-agent    10050/tcp               # Zabbix Agent
zabbix-agent    10050/udp               # Zabbix Agent
zabbix-trapper10051/tcp               # Zabbix Trapper
zabbix-trapper  10051/udp               # Zabbix Trapper

5)创建服务管理脚本
[iyunv@xuegod64 zabbix-2.0.8]# cp /root/zabbix-2.0.8/misc/init.d/fedora/core/zabbix_agentd  /etc/init.d/

6)修改程序家目录
[iyunv@xuegod64 zabbix-2.0.8]# vim /etc/init.d/zabbix_agentd
改:BASEDIR=/usr/local
为:BASEDIR=/usr/local/zabbix-2.0.8
root@xuegod64 zabbix-2.0.8]# chmod  +x /etc/init.d/zabbix_agentd
[iyunv@xuegod64 zabbix-2.0.8]#chkconfig --add zabbix_agentd
[iyunv@xuegod64 zabbix-2.0.8]#chkconfig zabbix_agentd on

配置xuegod64的zabbix agent
1)配置客户端
[root@xuegod64zabbix-2.0.8]## vim  /usr/local/zabbix-2.0.8/etc/zabbix_agentd.conf
LogFile=/var/log/zabbix_agentd.log
Server=192.168.1.63 #指定谁是zabbix server
ServerActive=127.0.0.1 #指的是开启主动检查模式
Hostname=xuegod64.cn
UnsafeUserParameters=1
参数说明:
Server=192.168.1.63#zabbix server的ip地址或主机名,可同时列出多个,需要用逗号隔开
ServerActive=127.0.0.1#开启主动检查

2)启动服务
[iyunv@xuegod64 zabbix-2.0.8]# /etc/init.d/zabbix_agentd start
[iyunv@xuegod64 zabbix-2.0.8]# netstat -antup | grep 10050
tcp        0      0 0.0.0.0:10050               0.0.0.0:*                   LISTEN      12504/zabbix_agentd

3)测试:zabbix服务端与客户端通信
[iyunv@xuegod63 etc]# /usr/local/zabbix-2.0.8/bin/zabbix_get -s 192.168.1.64 -p10050 -k"net.if.in[eth0,bytes]"
15986311#可以得到网卡信息说明客户端与服务端可以正常通信。
4)创建服务管理脚本
[root@xuegod63zabbix-2.0.8]# cp /root/zabbix-2.0.8/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
5)修改程序家目录
[root@xuegod63zabbix-2.0.8]# vim /etc/init.d/zabbix_agentd
改:BASEDIR=/usr/local
为:BASEDIR=/usr/local/zabbix-2.0.8
root@xuegod63zabbix-2.0.8]# chmod  +x /etc/init.d/zabbix_agentd
[root@xuegod63zabbix-2.0.8]#chkconfig --add zabbix_agentd
[root@xuegod63zabbix-2.0.8]#chkconfig zabbix_agentd on

6)修改客户端xuegod63.cn配置文件
[root@xuegod63zabbix-2.0.8]# vim  /usr/local/zabbix-2.0.8/etc/zabbix_agentd.conf
[iyunv@xuegod63etc]# grep ^[^#] /usr/local/zabbix-2.0.8/etc/zabbix_agentd.conf#修改以下红色内容
LogFile=/var/log/zabbix_agentd.log
Server=192.168.1.63 #可以写成127.0.0.1的
ServerActive=127.0.0.1
Hostname=Zabbix server
UnsafeUserParameters=1

7)启动服务
[root@xuegod63zabbix-2.0.8]# /etc/init.d/zabbix_agentd start
[root@xuegod63zabbix-2.0.8]# netstat -antup | grep 10050
tcp        0      0 0.0.0.0:10050               0.0.0.0:*                   LISTEN      12504/zabbix_agentd


WEB界面搭建监控服务器运行状态
1:添加被监控信息

QQ截图20161021083229.png



#这个时候显示受监控了,但是监控中心还不知道监控着什么,因此显示灰色。

2:通过Zabbix内建模版的方法来监控CPU,内存,交换分区,磁盘空间等系统信息。登录WEB界面中选择内置模板Template OS LinuxConfiguration -Templates

QQ截图20161021083240.png


3:在Host列表中,可以看到xuegod64.cn已经处于绿色的被监控状态了Configuration -Hosts
QQ截图20161021083246.png

4:以图形图像的形式显示被监控信息
监控如下
1)监控CPU:
2)监控磁盘空间,Disk space usage磁盘使用空间

QQ截图20161021083251.png


5:监控网络流量的图表:network traffic eth0  #这里要修改成英文的,才能查看到
QQ截图20161021083256.png


注:默认的自动发现配置为每个小时执行一次,因此在没有修改配置的情况下需要1个小时以后才能看到这些图表。修改发现时间:(手动修改可以通过Configuration -Hosts -xuegod64.cn-Discovery rules中修改对应的Interval的值)
手动修改步骤如下

QQ截图20161021083304.png



#再次查看,发现已经有数据了

6:设置Trigger触发器,指定各个监控项的阈值




#默认已经有了不少的Trigger,比如磁盘的报警阈值就设置为了20%
QQ截图20161021083309.png


7:手动修改磁盘的报警阈值为10%Template -Template OS Linux
QQ截图20161021083321.png


QQ截图20161021083328.png

改为:
QQ截图20161021083334.png

等待Discovery rules更新过后,可以看到阈值已经更新为了10%

8:使用内存的报警阈,将默认的<20M ,改为小<100MTemplate -Template OS Linux -Triggers -Lack of available memory on server{HOST.NAME}

QQ截图20161021083340.png

点击save后,查看:


总结:
Zabbix的配置参数主要都是通过Template来统一管理的,所以就需要到Template中进行修改,完成后会自动更新到所引用的Hosts。
自定义各个监控项的绘图格式和颜色等Template -Template OS Linux -Graphs -CPU



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-289125-1-1.html 上篇帖子: CENTOS 6.8 INSTALL ZABBIX 3.2 下篇帖子: ubuntu 14.04安装zabbix3.0 服务器 监控
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表