zabbix监控警告

监控概述

  • 对服务的管理,不能仅限于可用性。

  • 还需要服务可以安全、稳定、高效地运行。

  • 监控的目的:早发现、早治疗。

  • 被监控的资源类型:

    • 公开数据:对外开放的,不需要认证即可获取的数据

    • 私有数据:对外不开放,需要认证、权限才能获得的数据

uptime可以查看系统已经运行了多久。最后的3个数字分别是CPU最近1分钟、5分钟、15分钟的平均负载。平均负载的值,不应该大于总核心数。

[root@myhost ~]# uptime

09:28:25 up 53 days, 27 min, 0 users, load average: 0.09, 0.08, 0.03

free -h 主要用于查看内存

total 总内存 available 可用内存

swapon -s # 查看swap空间

df -h # 查看硬盘使用情况

ping -c2 www.baidu.com # 发2个包,测试网络

zabbix

实施监控的几个方面:

数据采集:使用agent(可安装软件的系统上)、SNMP(简单网络管理协议,用于网络设备的数据采集)

数据存储:使用mysql数据库

数据展示:通过web页面

zabbix通过在远程主机上安装agent进行数据采集,存储到mysql数据库,通过web页面进行展示。

安装zabbix 6.0 安装说明:https://www.zabbix.com/download?zabbix=6.0&os_distribution=rocky_linux&os_version=8&components=server_frontend_agent&db=mysql&ws=nginx 中文手册:https://www.zabbix.com/documentation/6.0/zh

在zabbix上创建连接数据库的用户

[root@zabbixserver ~]# mysql mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin; # 在binlog日志开启的情况下,打开函数生成器 mysql> set global log_bin_trust_function_creators = 1; mysql> create user zabbix@localhost identified by 'zabbix'; mysql> grant all privileges on zabbix.* to zabbix@localhost; mysql> quit; 验证数据库配置,如果登陆不到数据库表示上一步配置不正确 [root@zabbixserver ~]# mysql -uzabbix -pzabbix -hlocalhost zabbix # 9. 在数据库中创建表并导入数据 [root@zabbixserver ~]# cp /usr/share/zabbix-sql-scripts/mysql/server.sql.gz . [root@zabbixserver ~]# gzip -d server.sql.gz [root@zabbixserver ~]# mysql -uzabbix -pzabbix zabbix < server.sql # 10. 配置zabbix_server [root@zabbixserver ~]# vim +129 /etc/zabbix/zabbix_server.conf DBPassword=zabbix # 11. 配置zabbix_agent [root@zabbixserver ~]# vim /etc/zabbix/zabbix_agentd.conf 182 Hostname=zabbixserver # 12. 配置nginx展示zabbix [root@zabbixserver ~]# vim /etc/nginx/conf.d/zabbix.conf # 打开第2、3行的注释,结果如下所示: server {       listen          8080;       server_name     example.com; ...以下省略... 启动相关服务 [root@pubserver zabbix]# vim 04-start-zabbix.yml --- - name: config zabbix hosts: zabbix tasks:    - name: start service    # 循环启动多个服务      service:       name: "{{item}}"       state: started       enabled: yes     loop:        - zabbix-server        - zabbix-agent        - nginx        - php-fpm ansible-playbook 04-start-zabbix.yml

虚拟主机分类 基于IP或基于端口号或基于名称

空闲值 最小值 平均值 最大值

访问zabbixserver的8080端口,进行初始化:

这里的用户名Admin,A是大写的!密码是小写的zabbix

此时zabbix已经开始在监控自己了,查看默认监控配置

1.配置zabbix监控web1服务器

安装agent

  1. [root@pubserver zabbix]# vim 05-inst-agent.yml

---

- name: install agent

hosts: webservers

tasks:

   - name: install agent    # 安装agent

    yum:

      name: zabbix-agent

      state: present

[root@pubserver zabbix]# ansible-playbook 05-inst-agent.yml

2. 修改web1配置文件

[root@web1 ~]# vim /etc/zabbix/zabbix_agentd.conf

117 Server=127.0.0.1,192.168.88.5

182 Hostname=web1

3. 起动服务

[root@pubserver zabbix]# vim 06-start-agent.yml

---

- name: config agent

hosts: web1

tasks:

   - name: start agent      # 启动服务

     service:

      name: zabbix-agent

      state: started

      enabled: yes

[root@pubserver zabbix]# ansible-playbook 06-start-agent.yml

在web页面中添加对web1的监控

主机:安装了agent,被监控的主机

主机组:根据需求,将多台主机加入到一个主机组中,方便管理。系统默认已经创建了一些主机组。

模板:是监控项的集合。将模板应用到主机,主机就可以直接拥有模板中的所有监控项。系统中默认已经创建了一些模板。

常用监控指标
  • Space utilization:以百分比显示的磁盘利用率

  • Used space:已用磁盘空间

  • Available memory:可用内存

  • CPU idle time:CPU空闲时间。不宜过低。

  • Load average (1m avg)、Load average (5m avg)、Load average (15m avg):CPU1分钟、5分钟、15分钟的平均负载。这个值不应长期大于核心数。

  • Interface eth0: Bits received:网卡接收到的数据量 数据需要除以8 换算成比特而不是字节

  • Interface eth0: Bits sent:网卡发送的数据量

  • Number of processes:系统运行的进程数

  • Number of logged in users:已登陆的用户数

未启用爆红错误的话 检查服务是否开启 是否10050端口存在

也有可能存在权限问题 查看主机IP地址是否错误 配置文件错误

vim /etc/zabbix/zabbix_agentd.conf 117行写错

自定义监控项

实现监控web1用户数量的监控项

在被控端创建key。被控端被监控的内容叫作key,可以理解为它就是一个变量名,具体的名字自己决定。

在web页面中创建监控项。监控项对应key值。

包含 》对应》 模板》 监控项 》 key

在被控端创建key

创建key的语法

UserParameter=自定义key值,命令

命令的执行结果,是key的value

创建自定义配置文件。文件名自定义。

[root@web1 ~]# vim /etc/zabbix/zabbix_agentd.d/usercnt.conf

UserParameter=usercnt,sed -n '$=' /etc/passwd

[root@web1 ~]# systemctl restart zabbix-agent.service

验证自定义监控项

1. 安装zabbix-get

[root@zabbixserver ~]# yum install -y zabbix-get

[root@web1 ~]# yum install -y zabbix-get

2. 获取监控项的值

[root@web1 ~]# zabbix_get -s 127.0.0.1 -k usercnt

[root@zabbixserver ~]# zabbix_get -s 192.168.88.100 -k usercnt

创建模板

你都知道有哪些命令可以监控服务器的各种状态?

参考答案(注意:有些命令需要额外安装):

可以使用以下命令监控服务器的各种状态:

top:查看系统整体的 CPU、内存、进程等信息。

htop:类似于 top,但是界面更加美观,而且支持鼠标操作。

free:查看内存的使用情况。

df:查看磁盘的使用情况。

du:查看指定目录的磁盘使用情况。

iostat:查看磁盘 I/O 的情况。

vmstat:查看虚拟内存的情况。

sar:查看 CPU、内存、磁盘、网络等信息,可以设置输出时间间隔。

netstat:查看网络连接情况。

ss:查看网络连接情况,比 netstat 更快速、更详细。

iftop:查看网络流量情况。

tcpdump:抓包工具,可以查看网络数据包的内容。

ping:测试网络连通性。

traceroute:追踪数据包在网络中的路径。

telnet:测试端口是否开放。

curl:测试 Web 服务是否正常。

wget:下载文件,测试网络带宽。

nload:查看网络流量情况,类似于 iftop。

iptraf:查看网络流量情况,支持多种协议。

nethogs:查看进程的网络流量情况。

iftop:查看网络流量情况。

tcpdump:抓包工具,可以查看网络数据包的内容。

ping:测试网络连通性。

traceroute:追踪数据包在网络中的路径。

telnet:测试端口是否开放。

curl:测试 Web 服务是否正常。

简要说明一下如何在Rocky 8系统上安装zabbix 6.0?

参考答案:

系统yum没有提供zabbix安装包,需要先准备zabbix的yum源

安装软件包,包括:zabbix-server-mysql、zabbix-web-mysql、zabbix-nginx-conf、zabbix-sql-scripts、zabbix-selinux-policy、zabbix-agent、mysql-server

启动mysqld服务

在mysql服务器上创建数据库以及访问数据库的用户

导入zabbix提供的sql文件到上一步建立的数据中

配置zabbix server端(改配置文件)

配置zabbix agent端(改配置文件)

配置nginx展示zabbix(改配置文件)

启动相关服务,包括:zabbix-server、zabbix-agent、nginx、php-fpm

访问zabbixserver的8080端口,进行初始化

zabbix常用的监控指标有哪些?

CPU 使用率:监控服务器的 CPU 利用率,以评估服务器的负载和性能。

内存使用率:监控服务器的内存使用情况,包括物理内存、交换内存和缓存的使用情况。

磁盘空间使用率:监控服务器和存储设备的磁盘空间使用情况,以避免磁盘空间不足的问题。

网络带宽使用情况:监控网络接口的网络带宽使用情况,包括入带宽和出带宽的使用情况。

网络设备状态和流量:监控网络设备的状态和流量,包括交换机、路由器等设备的状态和流量。

数据库性能:监控数据库的性能指标,包括查询吞吐量、查询执行性能、连接情况等。

Web 应用程序响应时间和错误率:监控 Web 应用程序的响应时间和错误率,以提高应用程序的性能和可用性。

日志文件变化和错误:监控日志文件的变化和错误,以获取应用程序和系统的运行信息和故障排除信息。

操作系统进程和服务状态:监控操作系统的进程和服务状态,以确保系统的稳定性和可用性。

系统日志和告警事件:监控系统日志和告警事件,以获取系统和应用程序的运行信息和故障排除信息。

电力设备状态:监控电力设备的电压、电流和温度等状态,以确保设备的稳定运行。

安全设备状态:监控安全设备的防火墙日志、攻击检测等状态,以提高系统的安全性。

如何在zabbix被控端创建自定义key?

UserParameter=自定义key值,命令 # 命令的执行结果,是key的value

自定义key创建后需要重启zabbix-agent服务:

systemctl restart zabbix-agent.service

创建的key可以通过zabbix_get查询:

zabbix_get -s 主机地址 -k 自定义key

配置zabbix监控服务器

本实验需要使用课上的zabbix server,如没有可用服务器,请参照课上文档部署服务器

准备一台名为db1的虚拟机

在虚拟机安装zabbix agent,并

配置yum

安装配置agentyum install -y zabbix-agent

# 修改配置文件

[root@db1 ~]# vim /etc/zabbix/zabbix_agentd.conf

117 Server=127.0.0.1,192.168.88.5

182 Hostname=db1

# 启动服务

[root@db1 ~]# systemctl enable zabbix-agent.service --now

自定义监控项

在db1创建名为grpcnt的key,用于监控用户组的数量

在zabbixserver的web页面上显示该key

[root@db1 ~]# vim /etc/zabbix/zabbix_agentd.d/grpcnt.conf

UserParameter=grpcnt,sed -n '$=' /etc/group

重启服务

[root@db1 ~]# systemctl restart zabbix-agent.service

安装zabbix-get

[root@db1 ~]# yum install -y zabbix-get

获取key值

[root@db1 ~]# zabbix_get -s 127.0.0.1 -k grpcnt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/799469.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Java集合进阶】list常见的方法和五种遍历方式数据结构

&#x1f36c; 博主介绍&#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;我是 hacker-routing &#xff0c;很高兴认识大家~ ✨主攻领域&#xff1a;【渗透领域】【应急响应】 【python】 【VulnHub靶场复现】【面试分析】 &#x1f389;点赞➕评论➕收藏…

会话控制 与 IMS基本概念

目录 1. 因特网和电信网的介绍 2. 7号信令的分层结构及其作用 3. 基本的呼叫过程(ISUP流程) 4. 多媒体通信中的会话的概念 5. 关于IMS 5.1 IMS介绍 5.2 IMS控制层中的主要网元&#xff08;主要分为两类&#xff09; 5.3 现在来了解呼叫会话控制功能这一类的网元 6. 总…

Redis的五种基本数据类型

String&#xff08;字符串&#xff09; 简介:String 是 Redis 最基础的数据结构类型&#xff0c;它是二进制安全的&#xff0c;可以存储图片或者序列化的对象&#xff0c;值最大存储为 512M简单使用举例: set key value、get key等应用场景&#xff1a;共享 session、分布式锁…

牛客周赛39

title: 牛客周赛39 date: 2024-04-07 21:42:57 tags: 赛后思考与总结 categories: 比赛 A 思路 a[1] * 30 < sum 即可 代码 int a[7]; void solve() {int sum 0;for(int i 1; i < 6; i ) cin >> a[i],sum a[i];if(a[1] * 30 < sum) cout << "Y…

2024/4/1—力扣—BiNode

代码实现&#xff1a; /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/void convertBiNode_pro(struct TreeNode *root, struct TreeNode **p) {if (root) {convertBiNode_pro(roo…

python修改抖动图facecolor和箱型图alpha

抖动图和箱型图在数据分析和可视化中具有重要的作用&#xff0c;可以帮助人们更好地理解数据的特征和变化趋势。当我们想使用Python绘制抖动图的时候&#xff0c;可以使用seaborn的库来绘制&#xff0c;但其自身的参数限制了我们更改facecolor&#xff0c;绘制箱型图使更改透明…

什么是MQ ?为什么用MQ?

什么是MQ&#xff1f; MQ(message queue)&#xff08;消息队列&#xff09;&#xff0c;从字面意思上看&#xff0c;本质是个队列&#xff0c;FIFO先入先出&#xff0c;只不过队列中存放的内容是message而已&#xff0c;还是一种跨进程的通信机制&#xff0c;用于上下游传递消息…

Dubbo 服务发现

Dubbo 服务发现 1、什么是服务发现 **服务发现&#xff08;Service discovery&#xff09;**是自动检测一个计算机网络内的设备及其提供的服务。 2、Dubbo 与 服务发现 Dubbo 提供的是一种 Client-Based 的服务发现机制&#xff0c;依赖第三方注册中心组件来协调服务发现过…

C++从入门到精通——this指针

this指针 前言一、this指针的引出问题 二、this指针的特性三、例题什么时候会出现编译报错什么时候会出现运行崩溃this指针存在哪里this指针可以为空吗 四、C语言和C实现Stack的对比C语言实现C实现 前言 this指针是一个特殊的指针&#xff0c;在C类的成员函数中使用。它指向调…

Java笔试总结

. /etc/resolv.conf的用途是 A 邮件服务的设置文件 B DHCP的设置文件 C DNS解析的设置文件 D 网络路由的设置文件 答案: C 能够PING通同网段的节点&#xff0c;但却如PING不通其他网段的所有节点的最可能的原因() A 本机网关设置错误 B 本机没有正确设置DNS C 对方运行的是不…

webpack环境配置分类结合vue使用

文件目录结构 按照目录结构创建好文件 控制台执行: npm install /config/webpack.common.jsconst path require(path) const {merge} require(webpack-merge) const {CleanWebpackPlugin} require(clean-webpack-plugin) const { VueLoaderPlugin } require(vue-loader); c…

C++ 构造函数中的参数顺序

描述&#xff1a; 未初始化的参数必须在初始化参数之前 正确 ✓ 写法&#xff1a; mother(const char* food, const char* lastName"无姓", const char* firstName "无名" ); 错误❌写法&#xff1a; mother(const char* lastName"无姓", …

第十二届蓝桥杯大赛软件赛省赛C/C++大学B组

第十二届蓝桥杯大赛软件赛省赛C/C 大学 B 组 文章目录 第十二届蓝桥杯大赛软件赛省赛C/C 大学 B 组1、空间2、卡片3、直线4、货物摆放5、路径6、时间显示7、砝码称重8、杨辉三角形9、双向排序10、括号序列 1、空间 1MB 1024KB 1KB 1024byte 1byte8bit // cout<<"2…

nodejs详细安装步骤和npm配置

1、Node.js简介 Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时。Node.js 使用高效、轻量级的事件驱动、非阻塞 I/O 模型。它的包生态系统&#xff0c;npm&#xff0c;是目前世界上最大的开源库生态系统。 2、下载Node.js 官方地址&#xff1a;https://nodejs.org/…

STM32CubeMX+MDK通过I2S接口进行音频输入输出(全双工读写一个DMA回调)

一、前言 目前有一个关于通过STM32F411CEUx的I2S总线接口控制SSS1700芯片进行音频输入输出的研究。 SSS1700 是具有片上振荡器的 3S 高度集成的USB音频控制器芯片 。 SSS1700 功能支持96 KHz 24 位采样率&#xff0c;带外部音频编解码器&#xff08;24 位/96KHz I2S 输入和输出…

RabbitMQ的交换机与队列

一、流程 首先先介绍一个简单的一个消息推送到接收的流程&#xff0c;提供一个简单的图 黄色的圈圈就是我们的消息推送服务&#xff0c;将消息推送到 中间方框里面也就是 rabbitMq的服务器&#xff0c;然后经过服务器里面的交换机、队列等各种关系&#xff08;后面会详细讲&am…

腾讯云4核8G服务器12M带宽646元1年零3个月,4C8G使用场景说明

腾讯云4核8G服务器多少钱&#xff1f;腾讯云4核8G轻量应用服务器12M带宽租用价格646元15个月&#xff0c;活动页面 txybk.com/go/txy 活动链接打开如下图所示&#xff1a; 腾讯云4核8G服务器优惠价格 这台4核8G服务器是轻量应用服务器&#xff0c;详细配置为&#xff1a;轻量4核…

【ARMv7-M】| 01——阅读笔记 | 简介|应用程序级编程和内存模型

系列文章目录 【ARMv7-M】| 01——阅读笔记 | 简介|应用程序级编程和内存模型 失败了也挺可爱&#xff0c;成功了就超帅。 文章目录 前言1、简介2、应用程序级编程模型2.1 编程模式和访问等级2.2 数据类型和运算操作2.3 寄存器和执行状态1.2.4 异常和中断1.2.5 浮点单元寄存器…

快速入门Kotlin⑤协程

基础 本质上,协程是轻量级的线程。 runBlocking 用于在当前线程中阻塞执行协程代码直到协程执行完毕。它通常用于在主函数或测试代码中使用,以确保协程代码的顺序执行。 GlobalScope.launch 是一个顶级函数,用于在全局范围内启动一个新的协程。它创建一个顶级协程,该协程…

【JAVASE】带你了解面向对象三大特性之一(多态)

✅作者简介&#xff1a;大家好&#xff0c;我是橘橙黄又青&#xff0c;一个想要与大家共同进步的男人&#x1f609;&#x1f609; &#x1f34e;个人主页&#xff1a;再无B&#xff5e;U&#xff5e;G-CSDN博客 1.多态 1.1 多态的概念 多态的概念&#xff1a;通俗来说&#…