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

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
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,如需转载请自行联系原作者

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
7月前
|
监控 关系型数据库 Linux
|
3月前
|
监控 Linux
Zabbix 5.0 LTS的agent服务部署实战篇
文章介绍了如何在CentOS 7.6操作系统上部署Zabbix 5.0 LTS版本的agent服务,包括配置软件源、安装agent、修改配置文件、启动服务,并在Zabbix web界面添加监控。
144 4
Zabbix 5.0 LTS的agent服务部署实战篇
|
3月前
|
监控 关系型数据库 MySQL
zabbix agent集成percona监控MySQL的插件实战案例
这篇文章是关于如何使用Percona监控插件集成Zabbix agent来监控MySQL的实战案例。
65 2
zabbix agent集成percona监控MySQL的插件实战案例
|
4月前
|
监控 关系型数据库 MySQL
如何在 Ubuntu 16.04 上安装和配置 Zabbix 以安全监控远程服务器
如何在 Ubuntu 16.04 上安装和配置 Zabbix 以安全监控远程服务器
37 0
|
7月前
|
缓存 监控 安全
zabbix服务器监控之了解agent的启动过程
zabbix服务器监控之了解agent的启动过程
206 0
|
7月前
|
监控 网络协议 Unix
centos7 zabbix安装客户端agent -配置监控远程主机 在需要监控的电脑上安装
centos7 zabbix安装客户端agent -配置监控远程主机 在需要监控的电脑上安装
201 0
|
7月前
|
监控 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(详细启动脚本及踩坑记录)不定时更新
532 0
|
18天前
|
存储 人工智能 自然语言处理
AI经营|多Agent择优生成商品标题
商品标题中关键词的好坏是商品能否被主搜检索到的关键因素,使用大模型自动优化标题成为【AI经营】中的核心能力之一,本文讲述大模型如何帮助商家优化商品素材,提升商品竞争力。
AI经营|多Agent择优生成商品标题
|
19天前
|
人工智能 算法 搜索推荐
清华校友用AI破解162个高数定理,智能体LeanAgent攻克困扰陶哲轩难题!
清华校友开发的LeanAgent智能体在数学推理领域取得重大突破,成功证明了162个未被人类证明的高等数学定理,涵盖抽象代数、代数拓扑等领域。LeanAgent采用“持续学习”框架,通过课程学习、动态数据库和渐进式训练,显著提升了数学定理证明的能力,为数学研究和教育提供了新的思路和方法。
36 3
|
20天前
|
人工智能 自然语言处理 算法
企业内训|AI/大模型/智能体的测评/评估技术-某电信运营商互联网研发中心
本课程是TsingtaoAI专为某电信运营商的互联网研发中心的AI算法工程师设计,已于近日在广州对客户团队完成交付。课程聚焦AI算法工程师在AI、大模型和智能体的测评/评估技术中的关键能力建设,深入探讨如何基于当前先进的AI、大模型与智能体技术,构建符合实际场景需求的科学测评体系。课程内容涵盖大模型及智能体的基础理论、测评集构建、评分标准、自动化与人工测评方法,以及特定垂直场景下的测评实战等方面。
74 4

推荐镜像

更多