Zabbix(一):server,agent端 安装配置及主机,监控项,触发器,动作,媒介配置步骤

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供柔软的通知机制以让系统管理员快速定位/解决存在的各种问题。


 Zabbix的逻辑组件:

  - 主机(host):被监控的网络设备,通常可以使用IP或DNS名称来指定;

  - 主机组(hostgroup):主机的逻辑容器,可以包含主机和模板,但同一个主机组内的主机和模板不能互相链接;主机组通常在给用户或用户组指派监控权限时被使用;

  - 监控项(item):一个特定的监控指标的相关数据,这些数据都来自于被监控设备;item是zabbix进行数据收集的核心,因此如果未定义item,就没有数据,每个item都由特定的key进行标识;

key:实现获取监控目标上的数据的命令或脚本的名称;

  - 触发器(trigger):一个条件表达式,即用于评估某个监控对象的某特定item所接收到的数据是否在合理范围内,即:定于阈值;如果接收到的数据在合理范围之外,则触发器的状态将从OK转换为Problem;当接收的数据重新回归到合理范围时,触发器的状态将会从Problem转换为OK;

  - 事件(event):即发生了一个值得关注的事情;

  - 动作(action):指对于特定事件事先定义好的处理方法;通常是由条件和操作组成;

  - 媒介(media):发送通知消息的手段或通道,如:Email,Jabber,微信,SMS等;

  - 通知(notification):通过选定的媒介向相应用户发送的有关某事件的信息;

  - 远程命令(remote command):预定义的命令或脚本,可以在被监控主机处于特定条件时自动执行;

  - 报警升级(escalation):发送报警信息或执行远程命令的自定义方案;

  - 模版(template):用于快速定义被监控主机的各项item的预设项目集合,通常可以包含:item、trigger、graph、screen、application以及low-level discover rule等;模版可以直接链接到单个主机;

  - 应用(application):同一类监控项的结合;

  - web场景(web scennario):用于检测web站点的可用性的一个或多个http协议的请求;

  - 前端(frontend):Zabbix的web接口

  - 图形(graph):用于展示历史数据或趋势数据的图像;

  - 屏幕(screen):由多个graph组成;


下面进行简单的zabbix配置

--------------------------------------------------------------------


服务器端


1.安装Zabbix的web GUI及其他:

yum install httpd php php-mbstring php-gd php-mysql php-bcmath php-ldap php-xml mariadb-server -y


2.安装zabbix

rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm

yum install zabbix-server-mysql zabbix-web-mysql zabbix-web zabbix-agent zabbix-get -y


3.启动MariaDB并创建数据库及授权用户;

1
2
3
4
5
6
systemctl start mariadb
mysql
myslq> create database zabbix charset  'utf8' ;
mysql> grant all on zabbix.* to zbxuser@ '127.0.0.1'  identified by  'zbxpass' ;
mysql> grant all on zabbix.* to zbxuser@ 'localhost'  identified by  'zbxpass' ;
mysql> grant all on zabbix.* to zbxuser@ '172.16.%.%'  identified by  'zbxpass' ;



4.数据库的初始化:

如果是2.x版本的zabbix则有三个SQL脚本,如果是3.x版本的zabbix只有1个SQL脚本,下面这个。


1
2
3
cp  /usr/share/doc/zabbix-server-mysql-3 .4.4 /create .sql.gz  /root
gunzip create.sql.gz
mysql -uroot -hlocalhost -p zabbix < create.sql


5.Zabbix服务端的配置文件:/etc/zabbix/zabbix_server.conf


全局通用配置参数:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
  ListenPort=10051
  SourceIP=172.16.1.2
  LogType= file
  LogFile= /var/log/zabbix/zabbix_server .log
  LogFileSize=0
  DebugLevel=3
  PidFile= /var/run/zabbix/zabbix_server .pid
  DBHost=172.16.1.2
  DBName=zabbix
  DBUser=zbxuser
  DBPassword=zbxpass
  DBSocket= /tmp/mysql .sock |  /var/lib/mysql/mysql .sock
  DBPort=3306
  StartPollers=5
  StartPreprocessors=3
  StartPollersUnreachable=1
  StartTrappers=5
  StartPingers=1
  StartDiscoverers=1
  StartHTTPPollers=1
  StartTimers=1
  StartEscalators=1
  StartAlerters=3


6.配置zabbix-web:

 配置php的时区设定,下面两个任意一个即可,也可两个都配置。

  1./etc/php.ini

date.timezone = Asia/Shanghai

  2./etc/httpd/conf.d/zabbix.conf

php_value date.timezone Asia/Shanghai



7.重启httpd服务,并启动zabbix-server服务

 systemctl restart httpd.service

 systemctl start zabbix-server.service


8.访问URL:


http://172.16.1.2/zabbix

1.png

看到php相关应用都是OK即可

2.png

输入数据库相关内容,再输入以下相关内容

3.png

输入默认用户名/密码:admin/zabbix

刚搭建好.png


------------------------------------------------------------------------------------------

agent端


1.安装zabbix

 rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm

 yum install -y zabbix-agent zabbix-sender


2.改主机的名字

 hostname

 hostnamectl set-hostname zrs2.zrs.com


3.配置一下配置文件:/etc/zabbix/zabbix_agentd.conf


1
2
3
4
5
6
7
8
9
10
[root@zrs2 ~] # egrep -v '^$|#' /etc/zabbix/zabbix_agentd.conf
PidFile= /var/run/zabbix/zabbix_agentd .pid
LogFile= /var/log/zabbix/zabbix_agentd .log
LogFileSize=0
Server=172.16.1.2
ListenPort=10050
StartAgents=3
ServerActive=172.16.1.2
Hostname=zrs2.zrs.com
Include= /etc/zabbix/zabbix_agentd .d/*.conf


4.启动并查看,没有问题

[root@zrs2 ~]# systemctl start zabbix-agent.service

[root@zrs2 ~]# systemctl status zabbix-agent.service

----------------------------------------------------------------------------------

1.创建主机组

在Configuration中的Host groups中添加主机组,自定义主机组名字,点击add即可。

主机组.png

2.创建主机

在Configuration中的Host groups中找到刚才创建的test group 点击后面的Hosts,然后Create host。

第一个是主机名字,即被监控的主机的名字,务必填写正确,第二个是可视化名字,第三个是所属的主机组,右边的框中如果没有,可自己创建,最后是被监控的主机IP,也可以填写DNS name,二选一,因为是进行简单的配置,所以到这就行了,点击最下面的Add即可。

主机.png

3.创建应用和监控项: Applications + Items

在Configuration中的Hosts中的zrs2后面点击Applications,进入后点击Create application,自定义Name的名字即可,创建三个如下

三个监控.png

在Configuration中的Hosts中的zrs2后面点击Items,进入后点击Create item,自定义Name的名字,key的值从select中选择需要监测的即可,为了采集更多的样本,更新数据的时间设置短一些,applications选择对应的,点击最下面的Add。cpu的上下文切换监控就创建好了。

item.png

下面再创建两个item,监控入站流量和出站流量。可以在Preprocessing中选择Preprocessing steps:Change per second 来监控数据每秒变化量。

item2.png

item3.png

4.Trigger触发器


定义一个traffic too fast当入站流量达到100时,报警

触发器1.png

触发器的表达式:

{Server:key[parameters].function(arguments)}<operator><constant>

Server:被监控的主机名称

key:选中的item对应的key;

parameters:key要求的参数,如果key需要则必须给出;

function:评估采集到的数据是否在合理范围内时所使用的函数;

评估过程:

1.可以根据采集数据的次数;

2.可以指定在一定时间范围内采集到的数据;

常用的函数:

last、avg、max、min、sum、count、change、delta、diff、iregexp、nodata、date、dayofweek、...

arguments:函数的参数

大多数的数值函数可以进行数值计算,也可以接收时间为参数进行计算;如果在数值参数之前使用"#"作为前缀,如:"#NUM"表示NUM次的取值;如果在数值参数之前不使用"#"作为前缀,如"NUM"表示NUM秒的时间内的所有数值取值;

如:

sum(100):表示在100秒内取得的所有数据的和;

sum(#100):表示在最近100次取值之和;

last(100):表示最近的100秒时间内的取值;

last(#1):表示最近一次的取值,相当于last(0)

此外,avg,count,last,max,min等函数还支持第二参数,用于指定时间;

如:max(1h,7d)

operator:操作符,表达式运算的运算符;

比较运算:>, <, =, #(Not Equal)

算术运算:+, -, *, /

逻辑运算:&, |


为了触发器被触发需要定义动作actions

动作1.png

执行动作后的的操作:发送一个消息给管理员

动作2.png


这时需要定义Administration中users下面的media

媒介1.png

再定义media types中的email中的media type

媒介2.png

当入站流量过大超过100时就会触发警报,发邮件给管理员。



本文转自 Runs_ 51CTO博客,原文链接:http://blog.51cto.com/12667170/2044254,如需转载请自行联系原作者

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
4天前
|
监控 关系型数据库 Linux
|
4天前
|
存储 SQL 监控
修改Zabbix源码实现监控数据双写,满足业务需求!
虽然对接Elasticsearch后有诸多好处,但是它不往数据库写历史数据了,同时还不再计算趋势数据了。有这么一个场景...
修改Zabbix源码实现监控数据双写,满足业务需求!
|
4天前
|
数据采集 监控 数据库
OceanBase社区版可以通过Zabbix监控
OceanBase社区版可以通过Zabbix监控
91 4
|
4天前
|
监控 Unix Windows
Zabbix【部署 04】 Windows系统安装配置agent及agent2
Zabbix【部署 04】 Windows系统安装配置agent及agent2
191 0
|
4天前
|
存储 数据采集 运维
DataWorks产品使用合集之DataWorks创建HTTP触发器节点背景信息的步骤如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
31 0
|
4天前
|
缓存 运维 Serverless
Serverless 应用引擎产品使用之在阿里函数计算中,使用签名认证调用HTTP触发器的步骤如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
301 7
|
4天前
|
监控 网络协议 Unix
centos7 zabbix安装客户端agent -配置监控远程主机 在需要监控的电脑上安装
centos7 zabbix安装客户端agent -配置监控远程主机 在需要监控的电脑上安装
28 0
|
4天前
|
数据采集 监控 数据库
请问OceanBase社区版能否通过zabbix监控,然后将报错信息展现到grafana?
【2月更文挑战第25天】请问OceanBase社区版能否通过zabbix监控,然后将报错信息展现到grafana?
26 2
|
4天前
|
监控 Cloud Native 关系型数据库
使用 Grafana 统一监控展示 - 对接 Zabbix
使用 Grafana 统一监控展示 - 对接 Zabbix
|
4天前
|
监控 Java 数据库
Zabbix【部署 05】 Docker部署Zabbix Server Agent Agent2 Web interface及 Java-Gate-Way(详细启动脚本及踩坑记录)不定时更新
Zabbix【部署 05】 Docker部署Zabbix Server Agent Agent2 Web interface及 Java-Gate-Way(详细启动脚本及踩坑记录)不定时更新
174 0

热门文章

最新文章

推荐镜像

更多