文章目录

  • 概述
  • Zabbix部署
    • 1、安全相关配置
    • 2、安装Zabbix
    • 3、配置Zabbix
    • 4、启动Zabbix
    • 5、首次访问前端用户界面
  • Zabbix使用
    • 1、创建主机
    • 2、创建监控项
      • 监控硬盘
      • 监控内存
      • 监控CPU
      • 监控进程
    • 3、触发器
    • 4、动作
  • Zabbix仪表盘
  • 补充:连MySQL8报错

概述

  • 大数据集群监控,包括资源监控进程监控
    监控的资源如:内存、CPU、硬盘、硬盘IO…
    监控的进程如:NameNodeDataNode
监控项 示例命令
内存 free
CPU top
硬盘 dfdu
进程 topps
硬盘IO iotop
YARN资源 yarn top
HDFS硬盘使用 hadoop fs -dfhadoop fs -du -s
  • 使用命令不能满足需求,我们需要报警功能以及友好的用户界面,于是引入Zabbix

  • Zabbix是企业级开源监控解决方案
    支持实时监控数万台服务器、虚拟机和网络设备,采集百万级监控指标

Zabbix架构简图

Zabbix部署

部署规划 hadoop105 hadoop106 hadoop107
zabbix-agent 1 1 1
zabbix-server 1
zabbix-web 1

下述操作使用root,非root用户需要sudo

1、安全相关配置

关闭防火墙(所有节点)

systemctl disable firewalld
systemctl stop firewalld

关闭 SELinuxzabbix-server所在节点)

vim /etc/selinux/config
SELINUX=disabled

关闭 SELinux 后,按需重启

reboot

2、安装Zabbix

配置Zabbix的yum源(所有节点)

rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm

安装Software Collections仓库(所有节点)

yum install -y centos-release-scl

修改Zabbix的yum源配置,使用阿里云镜像(所有节点)(可选)

sed -i 's/http:\/\/repo.zabbix.com/https:\/\/mirrors.aliyun.com\/zabbix/g' /etc/yum.repos.d/zabbix.repo

修改Zabbix的yum源配置,批准Zabbix前端(zabbix-web所在节点)

vim /etc/yum.repos.d/zabbix.repo
[zabbix-frontend]
enabled=1

安装zabbix-serverzabbix-web、web容器(hadoop105

yum install -y zabbix-server-mysql zabbix-web-mysql-scl zabbix-apache-conf-scl

安装zabbix-agent(所有节点)

yum install -y zabbix-agent

3、配置Zabbix

在MySQL建库,用于存储Zabbix的数据(数据库所在节点,本文为hadoop105

mysql -uroot -p123456 -e'create database zabbix character set utf8 collate utf8_bin'

导入Zabbix建表语句

zcat /usr/share/doc/zabbix-server-mysql-5.0.*/create.sql.gz | mysql -uroot -p密码 zabbix

配置Zabbix-Server的数据库连接参数(hadoop105

vim /etc/zabbix/zabbix_server.conf
DBHost=hadoop105
DBName=zabbix
DBUser=root
DBPassword=123456

配置Zabbix-Web时区(hadoop105

vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
php_value[date.timezone] = Asia/Shanghai

配置Zabbix-Agent地址(所有节点)

vim /etc/zabbix/zabbix_agentd.conf
Server=hadoop105

Zabbix-Web的数据库连接配置等下去页面配

4、启动Zabbix

启动zabbix-server和Zabbix前端(hadoop105

systemctl start zabbix-server httpd rh-php72-php-fpm
systemctl enable zabbix-server httpd rh-php72-php-fpm
systemctl status zabbix-server httpd rh-php72-php-fpm

启动zabbix-agent(所有节点)

systemctl start zabbix-agent
systemctl enable zabbix-agent
systemctl status zabbix-agent

5、首次访问前端用户界面

  1. 浏览器访问http://hadoop105/zabbix/(没写端口是因为它默认80
  2. 配置数据库连接参数,和上面一致
  3. Zabbix server,Hosthadoop105
  4. 初始用户名Admin密码zabbix
  5. 页面左下角User settings设置中文和修改密码

Zabbix使用

主要内容 外文名 说明
主机 Host 需要监控的网络设备,用IP或域名表示
监控项 Item 例如:内存、CPU、硬盘、进程…
触发器 Trigger 一个被用于定义问题阈值和“评估”监控项接收到的数据的逻辑表达式
动作 Action 一个对事件做出反应的预定义的操作,例如:邮件通知

1、创建主机

  1. 配置->主机群组->创建主机群组
  2. 配置->主机->创建主机
    IP地址写内网地址
    绑定主机群组
  3. 配置->主机->Zabbix server
    修改IP地址

2、创建监控项

配置->主机

监控硬盘

监控内存

常用内存参数 说明
total 总物理内存
free 可用内存
active 内存当前使用或最近使用,所以它在RAM中
inactive 未使用内存
wired 被标记为始终驻留在RAM中的内存,不会移动到磁盘
buffers 缓存文件系统元数据
cached 缓存为不同事情
shared 可以同时被多个进程访问的内存
used active+wiredactive + wiredactive+wired
pused (active+wired)/total×100%(active + wired) / total \times 100 \%(active+wired)/total×100%
available inactive+cached+freeinactive + cached + freeinactive+cached+free
pavailable (inactive+cached+free)/total×100%(inactive + cached + free) / total \times 100 \%(inactive+cached+free)/total×100%

监控CPU

监控进程

以监控NameNode为例,先查看NameNode的命令行

ps -ef | grep datanode


再去页面配置proc.num[<name>,<user>,<state>,<cmdline>],条件越多匹配越精准

3、触发器

配置->主机

触发规则示例:最后一次NameNode监测值<1

4、动作

Zabbix仪表盘

#mermaid-svg-kBvjUjbwmpK4ug6W {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-kBvjUjbwmpK4ug6W .error-icon{fill:#552222;}#mermaid-svg-kBvjUjbwmpK4ug6W .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-kBvjUjbwmpK4ug6W .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-kBvjUjbwmpK4ug6W .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-kBvjUjbwmpK4ug6W .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-kBvjUjbwmpK4ug6W .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-kBvjUjbwmpK4ug6W .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-kBvjUjbwmpK4ug6W .marker{fill:#333333;stroke:#333333;}#mermaid-svg-kBvjUjbwmpK4ug6W .marker.cross{stroke:#333333;}#mermaid-svg-kBvjUjbwmpK4ug6W svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-kBvjUjbwmpK4ug6W .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-kBvjUjbwmpK4ug6W .cluster-label text{fill:#333;}#mermaid-svg-kBvjUjbwmpK4ug6W .cluster-label span{color:#333;}#mermaid-svg-kBvjUjbwmpK4ug6W .label text,#mermaid-svg-kBvjUjbwmpK4ug6W span{fill:#333;color:#333;}#mermaid-svg-kBvjUjbwmpK4ug6W .node rect,#mermaid-svg-kBvjUjbwmpK4ug6W .node circle,#mermaid-svg-kBvjUjbwmpK4ug6W .node ellipse,#mermaid-svg-kBvjUjbwmpK4ug6W .node polygon,#mermaid-svg-kBvjUjbwmpK4ug6W .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-kBvjUjbwmpK4ug6W .node .label{text-align:center;}#mermaid-svg-kBvjUjbwmpK4ug6W .node.clickable{cursor:pointer;}#mermaid-svg-kBvjUjbwmpK4ug6W .arrowheadPath{fill:#333333;}#mermaid-svg-kBvjUjbwmpK4ug6W .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-kBvjUjbwmpK4ug6W .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-kBvjUjbwmpK4ug6W .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-kBvjUjbwmpK4ug6W .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-kBvjUjbwmpK4ug6W .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-kBvjUjbwmpK4ug6W .cluster text{fill:#333;}#mermaid-svg-kBvjUjbwmpK4ug6W .cluster span{color:#333;}#mermaid-svg-kBvjUjbwmpK4ug6W div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-kBvjUjbwmpK4ug6W :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

监测
仪表盘
创建仪表盘
添加构件
类型
图形
选择主机及其监控项


Appendix

  • RPM软件包管理器(Red-Hat Package Manager)
    红帽软件包管理器
    一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件
  • YUM(Yellow dog Updater, Modified)
    一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器
    基于RPM包管理,能够从指定的服务器自动下载RPM包以及安装,并可以自动处理依赖关系
  • YUM源
    源,是指软件安装包的来源,也称软件仓库
    YUM源:使用YUM时,这个软件安装包的来源
  • .repo文件
    是Fedora中YUM源的配置文件
    定义了一个或者多个软件仓库的细节内容,例如我们将从哪里下载需要安装或者升级的软件包

补充:连MySQL8报错

查看日志

cat /var/log/zabbix/zabbix_server.log

日志内容

connection to database 'zabbix' failed:[2059] Authentication plugin 'caching_sha2_password' cannot be loaded:/usr/lib64/mysql/plugin/caching_sha2_password.so:cannot open shared object file: No such file or directory
Cannot connect to the database. Exiting...

解决方法:创建mysql_native_password加密规则的用户

CREATE USER 'zabbix'@'%' IDENTIFIED WITH mysql_native_password BY 'ie.F9527';
GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'%';
FLUSH PRIVILEGES;

大数据集群资源监控Zabbix相关推荐

  1. 一篇运维老司机的大数据平台监控宝典(1)-联通大数据集群平台监控体系进程详解

    一篇运维老司机的大数据平台监控宝典(1)-联通大数据集群平台监控体系进程详解 "如果你是一个经验丰富的运维开发人员,那么你一定知道ganglia.nagios.zabbix.elastics ...

  2. 架构-大数据集群资源评估方法

    架构-大数据集群资源评估方法 转载声明 本文大量内容系转载自网络,有删改,并参考其他文档资料加入了一些内容: 1 资源需求背景 二手电商网站需要构建一个Kafka集群,目标是每天抗住10亿请求量. 2 ...

  3. 阿里云TSDB在大数据集群监控中的方案与实战

    目前大部分的互联网企业基本上都有搭建自己的大数据集群,为了能更好让我们的大数据集群更加高效安全的工作,一个优秀的监控方案是必不可少的:所以今天给大家带来的这篇文章就是讲阿里云TSDB在上海某大型互联网 ...

  4. Zabbix监控大数据集群(一)

    Zabbix监控大数据集群 一.监控Linux系统 ​ 对于各种大数据框架的监控可能要用到Zabbix-Sender组件,我们这里首先进行安装(如果不安装,可能会导致数据无法发送): yum inst ...

  5. 大数据集群跨多版本升级、业务0中断,只因背后有TA

    摘要:2021年4月21日,中国太平洋保险集团联合华为云完成了全球首例大数据集群跨多版本的大数据集群滚动升级. 本文分享自华为云社区<华为云FusionInsight助力太保跨多版本升级业务0中 ...

  6. python自动化部署hadoop集群_大数据集群的自动化运维实现思路

    原标题:大数据集群的自动化运维实现思路 | 作者简介 王晓伟 知数堂<大数据实战就业>课程讲师 六年大数据相关工作经验 清华大学软件工程硕士 曾就职于网易.搜狗等互联网企业 从事大数据及数 ...

  7. 同程旅行大数据集群在 Kubernetes 上的服务化实践

    本文将向大家介绍同程旅行大数据集群在 Kubernetes 上服务化建设的一些实践和经验. 同程旅行大数据集群从 2017 年开始容器化改造,经历了自研调度 Docker 容器 ,到现在的云舱平台,采 ...

  8. 大数据集群搭建全部过程(Vmware虚拟机、hadoop、zookeeper、hive、flume、hbase、spark、yarn)

    大数据集群搭建进度及问题总结 所有资料在评论区那里可以得到 第一章: 1.网关配置(参照文档) 注意事项:第一台虚拟机改了,改为centos 101 ,地址为192.168.181.130 网关依然是 ...

  9. 那些年,我们迁移过的大数据集群

    大数据集群迁移这件事,不知道有多少同学做过.我说的不是把一个集群的数据备份到另一个集群上.我指的是整个数据平台与大数据相关的所有集群及业务的迁移工作,从一个机房到另一个机房. 具体范围可能包括:从离线 ...

  10. 数据蒋堂 | 大数据集群该不该透明化?

    作者:蒋步星 来源:数据蒋堂 本文约1500字,建议阅读5分钟. 通过本文为大家解读大数据集群透明化的利弊! 这好像是个多余的问题,大部分大数据平台都把集群透明化作为一个基本目标在努力实现. 所谓集群 ...

最新文章

  1. adb.exe: more than one device/emulator
  2. 将 SQL Server 存储过程用于数据访问
  3. mysql事务并发控制_MySQL之事务及并发控制
  4. 理解GO CONTEXT机制
  5. Python的小括号( )、中括号[ ]和大括号{}分别代表什么?
  6. java 界面线性布局_怎么用java代码写一个线性布局;布局里面有两个按钮是水平的...
  7. 自从Python数据可视化出了这个模块后,数据可视化就再简单不过了
  8. qt 实现 以图片为中心 让它旋转_QT图片旋转动画
  9. [css] 如何解决IE6浮动时产生双倍边距的BUG?
  10. Go指针的使用限制和突破之路
  11. 能不能用python开发qq_用Python写一个模拟qq聊天小程序的代码实例
  12. SAP License:赛锐信息访谈启示录(三)
  13. bitnami mysql_最新 Bitnami redmine安装与配置
  14. CCF NOI1005 存款收益
  15. 自定义完整安装rhel7_服务器系统Windows Server 2008 R2安装教程
  16. matlab 计算对数似然相似度
  17. 如何用ABBYY FineReader提取图片中的文字
  18. swift方法顺序 不成文规定
  19. Django 对符合条件的字段求和 aggregate
  20. 去耦电容与旁路电容的应用技巧

热门文章

  1. Java之父:詹姆斯·高斯林 (James Gosling)
  2. window下postgresql启动服务失败 Access is denied
  3. 恒凯USB数据采集卡在国产麒麟操作系统下的应用(二)Python环境设置及数据采集实验
  4. ODl之VTN详解-VTN概述
  5. 网上赚钱的平台哪个好?7个方式总有你喜欢的!
  6. Java+Servlet+Jsp(el, jstl)+MyBatis的CRUD练习小项目
  7. 肥胖和食物成瘾中脑 - 肠道 - 微生物组的相互作用
  8. java getbytes_JAVA的getBytes()方法
  9. linux虚拟机中如何复制粘贴内容到主机
  10. 利用EXCEL进行数据爬虫