zabbix如何监控服务器
1.zabbix架构图
zabbix核心概念
先记住如下zabbix中的核心几个概念
主机 ( HOST ) : 就是具体的一个监控对象,某一个被监控的实例,可以是一个数据库,也可以是一个操作系统。
模板 ( Template ):定义了具体一类监控对象的抽象,比如 Windows 模板,就是用来专门在监控Windows的时候,直接选择这个模板就可以实现开箱即用的数据采集。
监控项 ( ITEM ):监控项定义了具体的某一项采集指标,比如 CPU使用率,设备温度等,采集方式可以是多种支持的采集协议。
触发器 ( Trigger ):触发器是基于监控项存在的,通过WEB页面定义触发器表达式创建。比如 CPU温度大于90度,可以定义为:last(/zabbix_server/cpu_temp) > 90
动作 ( Action ):动作是基于触发器存在的,创建动作时可以选择具体的某个触发器,当触发器表达式满足要求时,会触发对应的Action执行,具体的动作定义可以执行 JavaScript,Shell脚本 等。
zabbix-server
Zabbix Server 是 C 语言开发的 Zabbix 服务端,有着 强悍的采集和计算性能,而且资源使用率很低。主要的功能如下:
定时读取 Zabbix 数据库,同步 Zabbix UI 配置的信息到缓存,下发到 Zabbix Agent 或者 Zabbix Proxy。
关于这俩不同的采集进程,可以通过(ps -ef|grep zabbix 查看进程列表)
对于被动采集(主动和被动是从设备侧角度来看的), Zabbix Server 会有专门的 Poller 线程去采集数据,可以定义特定的时间区间或者特定的频率。
对于主动采集,就是Agent或者设备主动上报数据,Zabbix Server 也会有专门的 Trapper 线程来接收数据,时间间隔或者频率取决于设备侧或者Agent上报配置。
接收到的历史数据(来自于 Agent、Proxy、设备侧),Zabbix Server 会缓存下来,进行告警表达式计算,进行动作触发,最终会同步到数据库的历史记录表,history开头的表。
zabbix-proxy
Zabbix Proxy 其实就是一个简化版的Zabbix Server,具备除了 Zabbix Server 有的告警相关的功能,其他的都是 Proxy 具备的
Zabbix Proxy 会定时把采集到的数据上报到 Zabbix Server,Zabbix Server 具备全量的数据,才可以做告警计算,复杂的告警计算可以跨设备。
针对大型监控采集环境,可以 通过 Proxy 来实现分布式采集 ,可以非常有效的减轻 Zabbix Server 的采集压力。
针对 弱网环境 ,就是网络质量不高的现场环境,Proxy 可以在本地采集,缓存本地,不断重试给Server发送数据,直到发送成功为止,可以大大降低现场的采集失败率。
Zabbix 官方文档给出的描述
更多更详细的可以看
https://www.zabbix.com/documentation/4.0/zh/manual/distributed_monitoring/proxies
2.zabbix快速监控主机(agent)
# 1.目标机器安装zabbix-agent
rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-agent-4.0.11-1.el7.x86_64.rpm
# 友情提醒,先做好时间同步!!
ntpdate -u ntp.aliyun.com
# 2.修改zabbix-agent配置文件
官网资料,关于配置文件的解释
https://www.zabbix.com/documentation/4.0/zh/manual/appendix/config/zabbix_agentd
修改配置如下,保证和我一样先
[root@web-7 ~]#grep -E '^[a-Z]' /etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0 # 日志切割,不切割
Server=10.0.0.61 # 填写zabbix-server地址
Include=/etc/zabbix/zabbix_agentd.d/*.conf
3.启动agent
[root@web-7 ~]#systemctl start zabbix-agent
[root@web-7 ~]#systemctl enable zabbix-agent
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
[root@web-7 ~]#
4.检查,agent的端口是10050
[root@web-7 ~]#netstat -tunlp|grep zabbix
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 1644/zabbix_agentd
tcp6 0 0 :::10050 :::* LISTEN 1644/zabbix_agentd
安装zabbix-get检查连接情况
1. 去服务端安装
[root@m-61 ~]#yum install zabbix-get -y
2. 试试和agent连得通吗?通就可以去管理了
# 友情提醒,要和zabbix_agent中填写的网段是同一个
[root@m-61 ~]#zabbix_get -s 10.0.0.7 -k agent.ping
1
3.进入zabbix-ui添加web7机器
1.启动客户端机器的agent之后,以及指定了zabbix-server的地址,它俩就可以通信了
2.去zabbix-ui页面,创建主机
3.如果zabbix-server想监控自己,也要启动zabbix-agent
[root@m-61 ~]#systemctl start zabbix-agent
[root@m-61 ~]#systemctl enable zabbix-agent
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
[root@m-61 ~]#
添加主机
可以填写主机名,以及可见名称
只要监控agent的接口 10.0.0.7:10050 填对了就好
添加一个模板
最终结果
4.更细节的添加操作
在安装完毕zabbix-agent之后,我们想对某台机器进行监控,采集各种数据
还得进去zabbix-UI 进行主机添加,流程是
创建主机群组
创建主机
添加监控项
配置触发器
创建图形
告警配置
创建主机群组
添加一个web组,用于管理一组都属于web组的机器,如web7 web8 web9
接下来就是添加主机了
添加主机
关联模板
主机添加好之后,你就得定义要监考哪些内容了,是监控内存?CPU、磁盘、服务、还是其他?
问题是,你一台机器要添加这些、给你一百台机器,都手动反复的添加?
因此zabbix给了你模板的功能,这一堆需要监控的内容,被制作成了统一的模板,拿来即用,效率很高。
你只需要将主机和模板关联即可。
具体流程
1. 选择主机,进入主机详细
2. 进入模板选项,配置模板
3. 自己选择一个模板添加,一般直接加 template os linux即可
4. 注意要点击添加按钮。
小试牛刀,看看美观的图形
1.经过上述添加之后,web7机器的信息就已经被监控中了
执行如下命令,给cpu来点压力
[root@web-7 ~]#while true;do echo "www.yuchaoit.cn 超哥带你学linux";done
2.通过图形功能,进行cpu的监控图示
cpu图示
内存图示
zabbix如何监控服务器的更多相关文章
- CentOS 7 zabbix添加监控服务器
CentOS 7 yum安装zabbix 设置中文界面 安装环境 CentOS 7 关闭防火墙和SElinux 在被监控端安装zabbix-agent [root@zabbix-agent ~]# ...
- zabbix添加监控主机(三)
zabbix添加监控服务器. zabbix添加监控服务器(以添加10.10.100.137为例) (1)创建要监控的主机.点击配置(configuration)–>主机(host) –>创 ...
- zabbix登陆问题:cannot allocate shared memory for collector
问题说明:在一台zabbix被监控服务器上(64位centos6.8系统,64G内容)启动zabbix_agent,发现进程无法启动,10050端口没有起来! 启动zabbix_agent进程没有报错 ...
- 如何监控 Tomcat?Zabbix 与 Cloud Insight 对比
JVM 监控工具有很多,像命令 jstat,jmap,jstack,jinfo 可以根据不同需求查看不同的系统信息,还有图像化界面 jconsole,都是很方便的工具.这些可以参考 JAVA自带监控工 ...
- zabbix问题记录
zabbix部署好,在使用一段时间后,出现了不少报错,在此简单做一记录.1)Zabbix监控界面报错Lack of free swap space on Zabbix server”解决公司线上部署的 ...
- zabbix3.4web界面添加第一台被监控服务器图文教程
zabbix工具监控服务器是以组的形式来管理,创建单个被监控服务器之前需要先创建一个主机组,然后将被监控机添加到这个组中即可 1 创建主机群组: 2 向主机群组中添加主机 3 向主机中添加模板,选择要 ...
- zabbix如何添加主机监控
1,首先,监控的主机安装zabbix客户端.zabbix提供多种监控方式,我们这里监控的主机上边安装agentd守护端进行数据收集并监测. 其中客户端安装我们这里就不介绍了,请参考之前教程里边的客户端 ...
- 【零基础】搞定zabbix安装
一.前言 最近想做服务器压力测试,测试软件找到了,突然发现还没有很好的办法监控服务器运行情况,之前用过zabbix,所以想到说要不就用zabbix来监控服务器运情况,不过这次就要好好研究下zabbix ...
- 【监控】Zabbix安装
目录 一.监控目的 二.监控方式 三.主流监控系统 四.Zabbix介绍 五.Zabbix服务端安装 5.1 环境介绍 5.2 准备系统环境 5.3 安装Nginx(源码编译安装) 5.3.1 配置N ...
- 自学Zabbix3.9.1-模板Templates-创建
自学Zabbix3.9.1-模板Templates-创建 1. 模板介绍 模板是一组可以方便地应用于多个主机的实体. 实体可能是: 项目 触发器 图 应用程序 屏幕(因为Zabbix 2.0) 低层次 ...
随机推荐
- ZooKeeper 在阿里巴巴的服务形态演进
简介: 本文将给大家介绍下 ZooKeeper 的最佳实践场景,归为了 3 类,分别是:微服务领域,代表的集成产品是 Dubbo/SpringCloud:大数据领域,代表的集成产品是 Flink/Hb ...
- 云原生时代 RocketMQ 运维管控的利器 - RocketMQ Operator
作者 | 刘睿.杜恒 导读:RocketMQ Operator 现已加入 OperatorHub,正式进入 Operator 社区.本文将从实践出发,结合案例来说明,如何通过 RocketMQ Ope ...
- 业界首个机密计算容器运行时—Inclavare Containers正式进入CNCF!
简介: Inclavare Containers 通过云原生计算基金会(CNCF)TOC 投票正式成为 CNCF 官方沙箱项目. 作者|彦荣 2021 年 9月 15 日,Inclavare C ...
- SpringBoot获取配置:@Value、@ConfigurationProperties方式
配置文件yml # phantomjs的位置地址 phantomjs: binPath: windows: binPath-win linux: binPath-linux jsPath: windo ...
- 01 Xpath简明教程(十分钟入门)
目录 Xpath简明教程(十分钟入门) Xpath表达式 Xpath节点 节点关系 Xpath基本语法 1) 基本语法使用 2) xpath通配符 3) 多路径匹配 Xpath内建函数 Xpath简明 ...
- Linux中典型的文件权限问题
总结起来说,可以打个比方,目录就像一间上了锁有窗户的屋子.如果你只想看屋子里面有啥,那么只要拥有r权限,不必进入到屋子,透过屋子的窗户就能看到里面的东西:但是如果你想改变屋子里面的物件,或者从屋子里面 ...
- WEB服务与NGINX(19)- nginx 防盗链功能
目录 1 nginx防盗链功能 1.1 盗链功能概述 1.2 实现盗链 1.3 实现防盗链 1 nginx防盗链功能 1.1 盗链功能概述 防盗链基于客户端携带的referer实现,referer是记 ...
- WEB服务与NGINX(11)-NGINX状态页
nginx状态页 nginx的状态页功能用于输出nginx的基本状态信息,基于ngx_http_stub_status_module模块实现. 默认情况下不生成此模块,应使用--with-http_s ...
- linux文本三剑客之awk详解
linux文本三剑客之awk详解 目录 linux文本三剑客之awk详解 1.awk命令详解 1.1 awk的处理流程 1.2 awk中的变量 1.2.1 内置变量 1.2.2 自定义变量 1.3 a ...
- 虚拟机中安装mysql 完整教程( CentOS7 版本)
一.检查是否安装了Mysql Yum检查 yum list installed | grep mysql 安装则直接删除 yum remove mysql-community-client.x86_6 ...