当前位置: 首页 > news >正文

集群监控Zabbix和Prometheus

文章目录

  • 一、Zabbix入门概述
    • 1、Zabbix概述
    • 2、Zabbix 基础架构
    • 3、Zabbix部署
      • 3.1 前提环境准备
      • 3.2 安装Zabbix
      • 3.3 配置Zabbix
      • 3.4 启动停止Zabbix
  • 二、Zabbix的使用与集成
    • 1、Zabbix常用术语
    • 2、Zabbix实战
      • 2.1 创建Host
      • 2.2 创建监控项(Items)
      • 2.3 创建触发器(Trigger)
      • 2.4 创建报警媒介类型(Media type)
      • 2.5 创建动作(Action)
      • 2.6 测试
      • 2.7 Zabbix模板创建
    • 3、集成Grafana入门
      • 3.1 部署Grafana
      • 3.2 集成Zabbix

一、Zabbix入门概述

1、Zabbix概述

Zabbix是一款能够监控各种网络参数以及服务器健康性和完整性的软件。Zabbix使用灵活的通知机制,允许用户为几乎任何事件配置基于邮件的告警。这样可以快速反馈服务器的问题。基于已存储的数据,Zabbix提供了出色的报告和数据可视化功能

2、Zabbix 基础架构

3、Zabbix部署

官网:https://www.zabbix.com/cn/download

3.1 前提环境准备

# 如果集群开启,先关闭集群。因为安装Zabbix前,需要重启虚拟机。如果之前弄过了就不需要了
cluster.sh stop
# 关闭防火墙(3台节点,已关闭)
sudo service iptables stop
sudo chkconfig iptables off# 关闭SELinux(hadoop102)
# 修改配置文件/etc/selinux/config
sudo vim /etc/selinux/config
# 修改
SELINUX=disabled
# 重启服务器# ================配置Zabbix yum源(3台节点)==========
# 安装yum仓库,安装zabbix的yum仓库,三台机器都要运行
sudo rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
# 安装Software Collections仓库
sudo yum install -y centos-release-scl# =============修改zabbix仓库配置文件(三台节点)===========
# 修改为阿里云镜像
# 查看原始zabbix.repo文件
sudo cat /etc/yum.repos.d/zabbix.repo
# 执行以下命令完成全局替换
sudo sed -i 's/http:\/\/repo.zabbix.com/https:\/\/mirrors.aliyun.com\/zabbix/g' /etc/yum.repos.d/zabbix.repo
# 查看修改之后的zabbix.repo文件
sudo cat /etc/yum.repos.d/zabbix.repo# 启用zabbix-web仓库,仅在102机器进行修改
# 打开/etc/yum.repos.d/zabbix.repo文件,做如下修改
[zabbix-frontend]
...
enabled=1
...

3.2 安装Zabbix

# 在hadoop102、hadoop103、hadoop104三台节点分别执行以下安装命令
sudo yum install -y zabbix-server-mysql zabbix-agent zabbix-web-mysql-scl zabbix-apache-conf-scl
# hadoop103
sudo yum install -y zabbix-agent
# hadoop104
sudo yum install -y zabbix-agent

3.3 配置Zabbix

# 创建zabbix数据库
mysql -uroot -p123456 -e"create database zabbix character set utf8 collate utf8_bin"
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uroot -p123456 zabbix# 配置Zabbix_Server(hadoop102)
# 修改zabbix-server配置文件
sudo vim /etc/zabbix/zabbix_server.conf
DBHost=hadoop102
DBName=zabbix
DBUser=root
DBPassword=123456# 配置Zabbix_Agent(三台节点),server都写hadoop102
# 修改zabbix-agent配置文件
sudo vim /etc/zabbix/zabbix_agentd.conf
# 修改如下内容:使用被动模式,等待proxy查询,而不是主动发送
Server=hadoop102
#ServerActive=127.0.0.1
#Hostname=Zabbix server# 配置Zabbix_Web时区,102
# 修改/etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf文件
sudo vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
# 最后一行改
php_value[date.timezone] = Asia/Shanghai

3.4 启动停止Zabbix

# 102启动与停止
sudo systemctl start zabbix-server zabbix-agent httpd rh-php72-php-fpm
sudo systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
sudo systemctl stop zabbix-server zabbix-agent httpd rh-php72-php-fpm
sudo systemctl disable zabbix-server zabbix-agent httpd rh-php72-php-fpm
# 103,104启动与停止
sudo systemctl start zabbix-agent
sudo systemctl enable zabbix-agent
sudo systemctl stop zabbix-agent
sudo systemctl disable zabbix-agent

然后连接Zabbix_Web数据库,浏览器访问http://hadoop102/zabbix/,然后按照步骤填写

最后登陆,用户名:Admin 密码:zabbix

二、Zabbix的使用与集成

1、Zabbix常用术语

  • 主机(Host)

    一台你想监控的网络设备,用IP或域名表示

  • 监控项(Item)

    你想要接收的主机的特定数据,一个度量数据

  • 触发器(Trigger)

    一个被用于定义问题阈值和“评估”监控项接收到的数据的逻辑表达式

  • 动作(Action)

    一个对事件做出反应的预定义的操作,比如邮件通知

2、Zabbix实战

2.1 创建Host

  • 进入UI界面点击配置/主机/创建主机
  • 配置主机(Host),主机名称填写hadoop102,群组填写hadoop(自动新增),填写agent所在ip,保存,重复以上步骤,再创建hadoop103、hadoop104主机

2.2 创建监控项(Items)

文档资料:https://www.zabbix.com/documentation/5.0/zh/manual/config/items/itemtypes/zabbix_agent

在一台主机(例如hadoop102)点击监控项(Items),点击创建监控项(Create Item)配置监控项(Item)这里我以查询datanode的进程数为例,配置完成后即可查看监控项最新数据

2.3 创建触发器(Trigger)

  • 点击配置/主机/触发器
  • 点击创建触发器,编辑触发器

2.4 创建报警媒介类型(Media type)

点击管理/报警媒介类型/Email,编辑Email

然后在用户设置里Email绑定收件人

2.5 创建动作(Action)

点击配置/动作/创建动作,编辑动作(Action)

2.6 测试

# 关闭集群中的HDFS,会有如下效果
sbin/stop-dfs.sh
# 查看仪表盘与邮件

2.7 Zabbix模板创建

里面可以发现有很多已经内置好的模板,可以直接拿来使用。如果要自己创建,点击配置/模板/创建模板,配置模板名称/群组,配置监控项,配置触发器;然后配置动作,将这几个触发器连接到动作。最后去主机为hadoop103应用模板

3、集成Grafana入门

3.1 部署Grafana

官方仓库:https://dl.grafana.com/oss/release/grafana-7.4.3-1.x86_64.rpm

国内镜像:https://repo.huaweicloud.com/grafana/7.4.3/grafana-7.4.3-1.x86_64.rpm

wget https://repo.huaweicloud.com/grafana/7.4.3/grafana-7.4.3-1.x86_64.rpm
# 使用rpm安装Grafana
sudo rpm -ivh grafana-7.4.3-1.x86_64.rpm
# 启动Grafana
sudo systemctl start grafana-server
# 访问地址为:http://hadoop102:3000/
# 首次登录用户名和密码均为 admin

3.2 集成Zabbix

使用Grafana与其他系统集成时,需要配置对应的DataSource

# 搜索无法找到,需要先自行下载zabbix插件
# 拉到最下面或者访问:https://grafana.com/grafana/plugins/?utm_source=grafana_add_ds
# 按照所需插件的说明进行部署
sudo grafana-cli plugins install alexanderzobnin-zabbix-app
sudo systemctl restart grafana-server# 然后点击plungin选择启动zabbix插件,之后数据源就可以找到该zabbix了

下面举例一个集成案例,在Zabbix中为hadoop102主机应用一个Zabbix内置的Linux系统监控模板,选择主机hadoop102,点击模板,搜索linux,并选择Template OS Linux by Zabbix agent;下一步集成Grafana,展示模板中的系统监控项,选择要展示的监控项

相关文章:

集群监控Zabbix和Prometheus

文章目录 一、Zabbix入门概述1、Zabbix概述2、Zabbix 基础架构3、Zabbix部署3.1 前提环境准备3.2 安装Zabbix3.3 配置Zabbix3.4 启动停止Zabbix 二、Zabbix的使用与集成1、Zabbix常用术语2、Zabbix实战2.1 创建Host2.2 创建监控项(Items)2.3 创建触发器&…...

K8S(七)—污点、容忍

目录 污点、容忍污点(Taints):容忍(Tolerations):如何一起使用污点和容忍:操作符(Equal、Exists)例子基于污点的驱逐基于节点状态添加污点 污点、容忍 官网地址&#xf…...

新视野大学英语1 词组 12.17

embarrassment和awkwardness的区别以及各自的组词。 "Embarrassment" 和 "awkwardness" 都可以用来描述一种尴尬或不舒服的感觉,但它们有一些微妙的区别。 "Embarrassment" 指的是由于尴尬、困窘或难堪的情况而产生的感觉。 这种感觉…...

springboot实战项目之使用AOP技术实现各种角色的鉴权功能

前言 项目开发需求,会员有不同的角色,不同的角色被赋予不同的权限,这就需要对会员的操作进行鉴权处理。 方案 采用aop,可实现满足这种需求,创建匿名类。对外提供接口的时候都会拦截,这种会有弊端&#x…...

华为配置基本QinQ示例

组网需求 如图1所示,网络中有两个企业,企业1有两个分支,企业2有两个分支。这两个企业的各办公地的企业网都分别和运营商网络中的SwitchA和SwitchB相连,且公网中存在其它厂商设备,其外层VLAN Tag的TPID值为0x9100。 现…...

【漏洞复现】系列集合

该篇文章仅供学习网络安全技术参考研究使用,请勿使用相关技术做违法操作 Apache Apache_HTTPD_未知后缀名解析Apache_HTTPD_换行解析(CVE-2017-15715)Apache_HTTPD_多后缀解析Apache_HTTP_2.4.50_路径穿越(CVE-2021-42013)Apache_HTTP_2.4.49_路径穿越(CVE-2021-41…...

TCP报文头(首部)详解

本篇文章基于 RFC 9293: Transmission Control Protocol (TCP) 对TCP报头进行讲解,部分内容会与旧版本有些许区别。 TCP协议传输的数据单元是报文段,一个报文段由TCP首部(报文头)和TCP数据两部分组成,其中TCP首部尤其重…...

第4章-第1节-初识Java的数组

1、数组 属于Java内存层面的一款容器(crud操作)。 概念: 内存中的一块存储区域(空间),内部有一组连续的小区域(元素空间),有数据类型的限定,可以存入一组匹配类型的数据,并且根据需要可以改动元素空间中的数据内…...

大数据技术10:Flink从入门到精通

导语:前期入门Flink时,可以直接编写通过idea编写Flink程序,然后直接运行main方法,无需搭建环境。我碰到许多初次接触Flink的同学,被各种环境搭建、提交作业、复杂概念给劝退了。前期最好的入门方式就是直接上手写代码&…...

IDEA中工具条中的debug按钮不能用了显示灰色

IDEA中工具条中的debug按钮不能用了显示灰色 1. 问题描述 IDEA上的DEBUG按钮突然变成了灰色: 2. 解决办法 一通搜索,终于找到解决办法 点击 File -> Project Structure如下图操作 3. 重启,解决 4. 参考 https://www.cnblogs.com…...

【MySQL内置函数】

目录: 前言一、日期函数获取日期获取时间获取时间戳在日期上增加时间在日期上减去时间计算两个日期相差多少天当前时间案例:留言板 二、字符串函数查看字符串字符集字符串连接查找字符串大小写转换子串提取字符串长度字符串替换字符串比较消除左右空格案…...

C++相关闲碎记录(14)

1、数值算法 &#xff08;1&#xff09;运算后产生结果accumulate() #include "algostuff.hpp"using namespace std;int main() {vector<int> coll;INSERT_ELEMENTS(coll, 1, 9);PRINT_ELEMENTS(coll);cout << "sum: " << accumulate(…...

18、vue3(十八):菜单权限,按钮权限,打包,发布nginx

目录 一、菜单权限和路由拆分 1.思路分析 2.深拷贝插件 3.代码实现 4.效果展示...

04 在Vue3中使用setup语法糖

概述 Starting from Vue 3.0, Vue introduces a new syntactic sugar setup attribute for the <script> tag. This attribute allows you to write code using Composition API (which we will discuss further in Chapter 5, The Composition API) in SFCs and shorte…...

vite+ts——user.ts——ts接口定义+axios请求的写法

import axios from axios; import qs from query-string; import {UserState} from /store/modules/user/types;export interface LoginData{username:string;password:string;grant_type?:string;scope?:string;client_id?:string;client_secret?:string;response_type?:…...

环境搭建及源码运行_java环境搭建_mysql安装

书到用时方恨少、觉知此时要躬行&#xff1b;拥有技术&#xff0c;成就未来&#xff0c;抖音视频教学地址&#xff1a;​​​​​​​​​​​​​​ 1、介绍 MySQL是一个关系型数据库管理系统&#xff0c;由瑞典MySQL AB 公司开发&#xff0c;属于 Oracle旗下产品。MySQL是最…...

Android camera的metadata

一、实现 先看一下metadata内部是什么样子&#xff1a; 可以看出&#xff0c;metadata 内部是一块连续的内存空间。 其内存分布大致可概括为&#xff1a; 区域一 &#xff1a;存 camera_metadata_t 结构体定义&#xff0c;占用内存 96 Byte 区域二 &#xff1a;保留区&#x…...

ElasticSearch面试题

1.介绍下es的架构&#xff1f; es采用的是分布式的架构&#xff0c;es集群中会有多个结点&#xff0c;而结点的角色主要有下面几种。 协调结点&#xff1a; 请求路由能力&#xff0c;将请求内容将请求转发给对应的结点进行处理。 master结点&#xff1a; 结点管理&#xff…...

C++ 数据结构知识点合集-C/C++ 数组允许定义可存储相同类型数据项的变量-供大家学习研究参考

#include <iostream> #include <cstring>using namespace std;// 声明一个结构体类型 Books struct Books {char title[50];char author[50];char subject[100];int book_id; };int main( ) {Books Book1; // 定义结构体类型 Books 的变量 Book1Books …...

【机器学习】5分钟掌握机器学习算法线上部署方法

5分钟掌握机器学习算法线上部署方法 1. 三种情况2. 如何转换PMML,并封装PMML2.1 什么是PMML2.2 PMML的使用方法范例3. 各个算法工具的工程实践4. 只用Linux的Shell来调度模型的实现方法5. 注意事项参考资料本文介绍业务模型的上线流程。首先在训练模型的工具上,一般三个模型训…...

Vue3-21-组件-子组件给父组件发送事件

情景描述 【子组件】中有一个按钮&#xff0c;点击按钮&#xff0c;触发一个事件&#xff0c; 我们希望这个事件的处理逻辑是&#xff0c;给【父组件】发送一条消息过去&#xff0c; 从而实现 【子组件】给【父组件】通信的效果。这个问题的解决就是 “发送事件” 这个操作。 …...

[密码学]AES

advanced encryption standard&#xff0c;又名rijndael密码&#xff0c;为两位比利时数学家的名字组合。 分组为128bit&#xff0c;密钥为128/192/256bit可选&#xff0c;对应加密轮数10/12/14轮。 基本操作为四种&#xff1a; 字节代换&#xff08;subBytes transformatio…...

CentOS 7 部署pure-ftp

文章目录 &#xff08;1&#xff09;简介&#xff08;2&#xff09;准备工作&#xff08;3&#xff09;更新系统&#xff08;4&#xff09;安装依赖环境&#xff08;5&#xff09;下载和解压pure-ftp源码包&#xff08;6&#xff09;编译和安装pure-ftp&#xff08;7&#xff0…...

Vue2-动态组件案例

1.component介绍 说明&#xff1a; Type: string | ComponentDefinition | ComponentConstructor Explanation: String: 如果你传递一个字符串给 is&#xff0c;它会被视为组件的名称&#xff0c;用于动态地渲染不同类型的组件。这是一个在运行时动态切换组件类型的常见用例。…...

【源码】车牌检测+QT界面+附带数据库

目录 1、基本介绍2、基本环境3、核心代码3.1、车牌识别3.2、车牌定位3.3、车牌坐标矫正 4、界面展示4.1、主界面4.2、车牌检测4.3、查询功能 5、演示6、链接 1、基本介绍 本项目采用tensorflow&#xff0c;opencv&#xff0c;pyside6和pymql编写&#xff0c;pyside6用来编写UI界…...

实战1-python爬取安全客新闻

一般步骤&#xff1a;确定网站--搭建关系--发送请求--接受响应--筛选数据--保存本地 1.拿到网站首先要查看我们要爬取的目录是否被允许 一般网站都会议/robots.txt目录&#xff0c;告诉你哪些地址可爬&#xff0c;哪些不可爬&#xff0c;以安全客为例子 2. 首先测试在不登录的…...

光栅化渲染:可见性问题和深度缓冲区算法

在前面第二章中&#xff0c;我们了解到&#xff0c;在投影点&#xff08;屏幕空间中的点&#xff09;的第三个坐标中&#xff0c;我们存储原始顶点 z 坐标&#xff08;相机空间中点的 z 坐标&#xff09;&#xff1a; 当一个像素与多个三角形重叠时&#xff0c;查找三角形表面上…...

docker入门小结

docker是什么&#xff1f;它有什么优势&#xff1f; 快速获取开箱即用的程序 docker使得所有的应用传输就像我们日常通过聊天工具文件传输一样&#xff0c;发送方将程序传输到超级码头而接收方也只需通过超级码头进行获取即可&#xff0c;就像一只鲸鱼拖着货物来回运输一样。…...

LLM Agent发展演进历史(观看metagpt视频笔记)

LLM相关的6篇重要的论文&#xff0c;其中4篇来自谷歌&#xff0c;2篇来自openai。技术路径演进大致是&#xff1a;SSL (Self-Supervised Learning) -> SFT (Supervised FineTune) IT (Instruction Tuning) -> RLHF。 word embedding的问题&#xff1a;新词如何处理&…...

Linux(操作系统)面经——part2

1、请你说说进程和线程的区别 1.进程是操作系统资源分配和调度的最小单位&#xff0c;实现操作系统内部的并发&#xff1b;线程是进程的子任务&#xff0c;cpu可以识别、执行的最小单位&#xff0c;实现程序内部的并发。 2.一个进程最少有一个线程或有多个&#xff0c;一个线程…...

网站开发经济可行性分析/武汉seo搜索引擎优化

内网穿透 一、介绍 1.概念 ​ 内网穿透简单来说就是将内网外网通过natapp隧道打通,让内网的数据让外网可以获取。比如常用的办公室软件等&#xff0c;一般在办公室或家里&#xff0c;通过拨号上网&#xff0c;这样办公软件只有在本地的局域网之内才能访问&#xff0c;那么问…...

公安厅网站 做10道相关题目/站长申论

2019独角兽企业重金招聘Python工程师标准>>> alembic是sqlalchemy的作者Mike Bayer开发的数据库迁移工具。在uliweb中已经有集成&#xff0c;比如你安装了uliweb.contrib.orm后&#xff0c;即可以使用uliweb alembic [init][diff][upgrade] 来进行数据库的迁移。具体…...

库尔勒北京网站建设/seo建站公司推荐

letswave教程&#xff1a;脑电数据的时频分析/组平均与统计分析1 相关概念2 单被试分析2.1 时频分析2.1.1 连续小波变换2.1.2 基准线校正2.1.3 查看结果3 组分析3.1 总体平均3.1.1 降低采样率3.1.2 重命名3.1.3 数据集复制和合并3.1.4 平均3.1.5 查看结果3.2 统计分析3.2.1 假设…...

大丰网站建设/营销公关

在Arcmap中&#xff0c;创建新地图并加载数据层时&#xff0c;第一个被加载的数据层的坐标系统被作为该数据框的默认坐标系统。随后被加载的数据层&#xff0c;无论其原有的坐标系如何&#xff0c;只要满足坐标转化的要求&#xff0c;都将被自动转化为该数据框的坐标系统&#…...

毕业设计做网站怎么做/上海牛巨微网络科技有限公司

转载于:https://www.cnblogs.com/xiaochunblog/p/11507439.html...

聊城手机网站建设费用/不需要验证码的广告平台

摘要vue和axios都可以使用es6-promise来实现f1().then(f2).then(f3)这样的连写形式&#xff0c;es6-promise其实现代浏览器已经支持&#xff0c;无需加载外部文件。由于promise写法明显由于传统写法&#xff0c;已经越来越被高级程序采用&#xff0c;不懂promise就没法看高级程…...