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

[经验分享] Centos7 安装部署Zabbix及邮件告警

[复制链接]

尚未签到

发表于 2019-1-19 12:10:59 | 显示全部楼层 |阅读模式
一、CactiNagios Zabbix监控介绍
1.1Cacti:一套基于PHP,MySQL,SNMPRRDTool开发的网络流量监测图形分析工具
1.1.1、构件(步骤)
net_snmp:负责数据采集
rrdtool:数据存储以及绘图
mysql:保存模板和主机对应的信息
数据采集:cacti使用poller(轮询器)收集数据,主要使用snmp协议从远端的设备上收集数据。
数据存储:cacti使用rrdtool(环形数据库)存储收集到的数据(时间序列数据)。rrd会将原始数据与整合到的数据进行合并,以使得历史数据的存储节省空间。
数据展示:rrdtool绘图功能。
1.1.2、工作原理:
net_snmp协议定时采集数据,保存到rrd,当用户需要查看某个主机对应的监控信息的时候可以在MySQL中寻找对应的主机ip等信息,然后在命令rrd绘制出图形
1.1.3、监控对象:网络流量、cpu使用率、硬盘使用率等


1.2nagios:一款开源的免费网络监视工具
1.2.1、构件:
主程序(Nagios Daemon:Nagios的主部件,实现了监控,性能,通知,事件处理功能。这些功能都是抽象的逻辑和调度,并没有实际的与设备交互的监控实现,与设备的交互都是在下面一层的Plugin种实现的,这些就是Nagios认为可变部分。
Web Interface: NagiosWeb页面,NagiosWeb容器是Apache HTTPDNagios开发了一个HTTPD模块,并提供Web页面。Web InterfaceNagios Daemon之间通过文件接×××互,Web逻辑读取Nagios的状态文件(status.dat),展示其监控信息。
插件程序(nagios-plugins):四个可选的附件(NRPENSCANSClient++NDOUtils)
NDOUtils:用来将Nagios的配置信息和各event产生的数据存入数据库,以实现这些数据的减速和快速处理
NRPENSClient:工作在客户端
NSCA:被动(让被监控的主机主动将监控信息发送给服务器)需要同时安装在服务端和客户端NSCA---send-nsca
1.2.2、原理:
基于状态的改变来实现报警,当状态改变之后会先不警告(软状态),当两次采集之后状态都改变了再通知(硬状态)
1.2.3、监控对象:注重主机和服务的监控;自带监控项比较少

1.3zabbix:基于WEB界面的提供分布式系统监视及网络监视功能的企业级的开源解决方案,基于C/S架构
1.3.1、构造:
agent:被监控对象
server:负责数据收集
proxy:代理
1.3.2、原理:
主被动模式:主被动模式是相对于客户端来说的,主动就是客户端主动将采集的数据发送给server,而被动模式是server过来告诉agent自己需要什么东西,agent采集;zabbixnagios的报警机制一样,通过插件模板来实现
1.3.3、监控对象:网络状态、自带监控项比较多
二、网络拓扑图

三、部署的环境
zabbix-server:
[root@zabbix-server ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
[root@zabbix-server ~]# uname -r
3.10.0-693.el7.x86_64
[root@zabbix-server ~]# ifconfig ens32|sed -nr 's#^.*inet (.*)  netmask.*$#\1#gp'
10.0.0.102
[root@zabbix-server ~]# systemctl stop firewalld
[root@zabbix-server ~]# getenforce
Disabled
zabbix-agent1:
[root@zabbix-agent1 ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
[root@zabbix-agent1 ~]# uname -r
3.10.0-693.el7.x86_64
[root@zabbix-agent1 ~]# ifconfig ens32|sed -nr 's#^.*inet (.*)  netmask.*$#\1#gp'
10.0.0.101
[root@zabbix-agent1 ~]# systemctl stop firewalld
[root@zabbix-agent1 ~]# getenforce
Disabled
zabbix-agent2:
[root@zabbix-agent2 ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
[root@zabbix-agent2 ~]# uname -r
3.10.0-693.el7.x86_64
[root@zabbix-agent2 ~]# ifconfig ens32|sed -nr 's#^.*inet (.*)  netmask.*$#\1#gp'
10.0.0.103
[root@zabbix-agent2 ~]# systemctl stop firewalld
[root@zabbix-agent2 ~]# getenforce
Disabled
四、zabbix安装部署(具体过程参照官方文档):
zabbix-server:
4.1安装源码库配置部署包
[root@andy ~]# rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
Retrieving https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
Preparing...                   ################################# [100%]
Updating / installing...
   1:zabbix-release-3.4-1.el7.centos  ################################# [100%]
[root@andy ~]# rpm -ql zabbix-release  ##查看安装的内容
/etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
/etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
/etc/yum.repos.d/zabbix.repo
/usr/share/doc/zabbix-release-3.4
/usr/share/doc/zabbix-release-3.4/GPL
[root@andy ~]# yum makecache
4.2安装Zabbix部署包
[root@andy ~]# yum install zabbix-server-mysql zabbix-web-mysql zabbix-server zabbix-agent mariadb-server -y
4.2.1安装初始化数据库
[root@andy ~]# systemctl start mariadb
[root@andy ~]# mysql -uroot -p
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
MariaDB [(none)]> show databases;
+----------------------+
| Database        |
+----------------------+
| information_schema  |
| mysql          |
| performance_schema |  
| test          |
| zabbix         |
+-------------------+
MariaDB [(none)]> quit
Bye
[root@andy ~]# cd /usr/share/doc/zabbix-server-mysql-3.4.8
[root@andy zabbix-server-mysql-3.4.8]# ls
AUTHORS  ChangeLog  COPYING  create.sql.gz  NEWS  README
[root@andy zabbix-server-mysql-3.4.8]# zcat create.sql.gz | mysql -uroot zabbix
4.2.2启动Zabbix Server进程
[root@andy zabbix-server-mysql-3.4.8]# sed -i "s|# DBPassword=|DBPassword=zabbix|g" /etc/zabbix/zabbix_server.conf
[root@andy zabbix-server-mysql-3.4.8]# systemctl start zabbix-server
[root@andy zabbix-server-mysql-3.4.8]# netstat -lntup|grep 10051
tcp     0   0 0.0.0.0:10051     0.0.0.0:*    LISTEN     16581/zabbix_server
tcp6    0    0 :::10051         :::*       LISTEN     16581/zabbix_server
4.2.3编辑Zabbix前端的PHP配置
[root@andy zabbix-server-mysql-3.4.8]# sed -i "s|# php_value date.timezone Europe/Riga|php_value date.timezone Asia/ShangHai|g" /etc/httpd/conf.d/zabbix.conf
[root@andy zabbix-server-mysql-3.4.8]# systemctl start httpd
Zabbix前端可以在浏览器中通过 http://zabbix-frontend-hostname/zabbix 进行访问。默认的用户名/密码为 Admin/zabbix
如本次实例:http://10.0.0.102/zabbix/setup.php
Step1:

Step2:

Step3:

Step4:

Step5:

Step6:

Step7:

Step8:

4.3、优化和添加主机
登陆和配置用户:修改管理员密码

添加监控主机(配置-->主机-->创建主机):
Step1:

Step2:

Step3:

zabbix-agent1:
安装源码库配置部署包
[root@zabbix-agent1 ~]# rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
Retrieving https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
Preparing...                    ################################# [100%]
Updating / installing...
   1:zabbix-release-3.4-1.el7.centos  ################################# [100%]
[root@zabbix-agent1 ~]# rpm -ql zabbix-release
/etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
/etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
/etc/yum.repos.d/zabbix.repo
/usr/share/doc/zabbix-release-3.4
/usr/share/doc/zabbix-release-3.4/GPL
[root@zabbix-agent1 ~]# yum install -y zabbix-agent
[root@zabbix-agent1 ~]# sed -i 's#^Server=127.0.0.1#Server=10.0.0.102#g' /etc/zabbix/zabbix_agentd.conf
[root@zabbix-agent1 ~]# cat /etc/zabbix/zabbix_agentd.conf|grep '^Server=1'
Server=10.0.0.102
[root@zabbix-agent1 ~]# systemctl start zabbix-agent
zabbix-agent2:
安装源码库配置部署包
[root@zabbix-agent2 ~]# rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
Retrieving https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
Preparing...                    ################################# [100%]
Updating / installing...
   1:zabbix-release-3.4-1.el7.centos  ################################# [100%]
[root@zabbix-agent2 ~]# rpm -ql zabbix-release
/etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
/etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
/etc/yum.repos.d/zabbix.repo
/usr/share/doc/zabbix-release-3.4
/usr/share/doc/zabbix-release-3.4/GPL
[root@zabbix-agent2 ~]# yum install -y zabbix-agent
[root@zabbix-agent2 ~]# sed -i 's#^Server=127.0.0.1#Server=10.0.0.102#g' /etc/zabbix/zabbix_agentd.conf
[root@zabbix-agent2 ~]# cat /etc/zabbix/zabbix_agentd.conf|grep '^Server=1'
Server=10.0.0.102
[root@zabbix-agent2 ~]# systemctl start zabbix-agent
五、查看告警主机终端数实例
zabbix-agent1:
[root@zabbix-agent1 ~]# vim /etc/zabbix/zabbix_agentd.conf
UserParameter=log_user,/usr/bin/w|sed -nr 's#^.*,  (.*) users.*$#\1#gp'  ##296
UserParameter=log_user,/usr/bin/w|awk 'NR==1 {print$4}'  ##用这条命令
[root@zabbix-agent1 ~]# systemctl restart zabbix-agent
zabbix-server:
[root@zabbix-server ~]# yum install -y zabbix-get
[root@zabbix-server ~]# zabbix_get -s 10.0.0.101 -k log_user
2
Step1:

Step2:

Step3(添加监控项):

Step4(填完信息再保存):

Step5(添加图形):

Step6(填完信息再保存):

Step7(添加触发器):

Step8(填完信息再保存):

Add部分

Step9(添加图形):

Step10(填完信息再保存):

添加一个动作(Configuration-->Actions)
Step1:

Step2:

Step3:

Step4(Administration-->Users):

Step5(Administration-->Users-->Admin):

Step6(Administration-->Media types-->Email):注意登录第三方邮件客户端时使用授权码

Step6多开两个终端验证(Reports-->Action log)

小结:
1、自定义key-items监控项
我们需要监控什么(用户登录终端数),怎么监控(w|awk)
2zabbixweb页面
  2.1、在监控主机上面添加一个items(agent端定义的key  log_user)
  2.2、画一个图形(数据实际从key-->shell捕获)
  2.3、定义触发器,多少用户登录终端就报警
  参照:
  https://www.zabbix.com/documentation/3.4/start
  http://blog.运维网.com/12118369/1968090

  .........




运维网声明 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-665175-1-1.html 上篇帖子: Ubuntu 12.04 安装 Zabbix 2.0.6 下篇帖子: zabbix3.0安装指南
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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