概述Zabbix部署
1、安全相关配置2、安装Zabbix3、配置Zabbix4、启动Zabbix5、首次访问前端用户界面 Zabbix使用
1、创建主机2、创建监控项
监控硬盘监控内存监控CPU监控进程 3、触发器4、动作 Zabbix仪表盘
概述大数据集群监控,包括资源监控和进程监控
监控的资源如:内存、CPU、硬盘、硬盘IO…
监控的进程如:NameNode、DataNode…
| 监控项 | 示例命令 |
|---|---|
| 内存 | free |
| CPU | top |
| 硬盘 | df、du |
| 进程 | top、ps |
| 硬盘IO | iotop |
| YARN资源 | yarn top |
| HDFS硬盘使用 | hadoop fs -df |
使用命令不能满足需求,我们需要报警功能以及友好的用户界面,于是引入Zabbix
Zabbix是企业级开源监控解决方案
支持实时监控数万台服务器、虚拟机和网络设备,采集百万级监控指标
Zabbix部署Zabbix架构简图
| 部署规划 | hadoop105 | hadoop106 | hadoop107 |
|---|---|---|---|
| zabbix-agent | 1 | 1 | 1 |
| zabbix-server | 1 | ||
| zabbix-web | 1 |
1、安全相关配置下述操作使用root,非root用户需要sudo
关闭防火墙(所有节点)
systemctl disable firewalld systemctl stop firewalld
关闭 SELinux(zabbix-server所在节点)
vim /etc/selinux/config
SELINUX=disabled
关闭 SELinux 后,按需重启
reboot2、安装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-server、zabbix-web、web容器(hadoop105)
yum install -y zabbix-server-mysql zabbix-web-mysql-scl zabbix-apache-conf-scl
安装zabbix-agent(所有节点)
ssh hadoop103 yum install -y zabbix-agent3、配置Zabbix
在MySQL建库,用于存储Zabbix的数据(数据库所在节点,本文为hadoop105)
mysql -uroot -p123456 -e"create database zabbix character set utf8 collate utf8_bin"
配置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
启动zabbix-agent(所有节点)
systemctl start zabbix-agent5、首次访问前端用户界面
浏览器访问http://hadoop105/zabbix/(没写端口是因为它默认80)
配置数据库连接参数,和上面一致
初始用户名Admin密码zabbix
页面左下角User settings设置中文和修改密码
| 主要内容 | 外文名 | 说明 |
|---|---|---|
| 主机 | Host | 需要监控的网络设备,用IP或域名表示 |
| 监控项 | Item | 例如:内存、CPU、硬盘、进程… |
| 触发器 | Trigger | 一个被用于定义问题阈值和“评估”监控项接收到的数据的逻辑表达式 |
| 动作 | Action | 一个对事件做出反应的预定义的操作,例如:邮件通知 |
- 配置->主机群组->创建主机群组配置->主机->创建主机
IP地址写内网地址
绑定主机群组配置->主机->Zabbix server
修改IP地址
监控硬盘 监控内存配置->主机
| 常用内存参数 | 说明 |
|---|---|
| total | 总物理内存 |
| free | 可用内存 |
| active | 内存当前使用或最近使用,所以它在RAM中 |
| inactive | 未使用内存 |
| wired | 被标记为始终驻留在RAM中的内存,不会移动到磁盘 |
| buffers | 缓存文件系统元数据 |
| cached | 缓存为不同事情 |
| shared | 可以同时被多个进程访问的内存 |
| used | a c t i v e + w i r e d active + wired active+wired |
| pused | ( a c t i v e + w i r e d ) / t o t a l × 100 % (active + wired) / total times 100 % (active+wired)/total×100% |
| available | i n a c t i v e + c a c h e d + f r e e inactive + cached + free inactive+cached+free |
| pavailable | ( i n a c t i v e + c a c h e d + f r e e ) / t o t a l × 100 % (inactive + cached + free) / total times 100 % (inactive+cached+free)/total×100% |
以监控NameNode为例,先查看NameNode的命令行
ps -ef | grep datanode
再去页面配置proc.num[
配置->主机
触发规则示例:最后一次NameNode监测值<1
4、动作 Zabbix仪表盘


