zabbix 应用(二)

news2024/12/23 1:10:41

目录

一:部署 zabbix 代理服务器

1、准备环境

2、 设置 zabbix 的下载源,安装 zabbix-proxy

3、 部署数据库,要求 MySQL 5.7 或 Mariadb 10.5 及以上版本

4、 初始化数据库

5、创建数据库 指定字符集,创建 zabbix 数据库用户并授权,导入数据库信息

​6、修改 zabbix-proxy 配置文件

7、 启动 zabbix-proxy,在所有主机上配置 hosts 解析

 8、在 Web 页面配置 agent 代理

9、配置 agent 使用 proxy

(1)在客户端修改 agent2 配置文件

​编辑 (2) 在 Web 页面配置两台agent 

(3) 分别在客户端和代理服务器上重启服务(除server外的3台主机)

二: 部署 Zabbix 高可用集群

1、主节点 Zabbix Server 配置

2、 主节点给数据库授权远程登录权限

3、备节点 Zabbix Server 配置

4、客户端配置

三: Zabbix 监控 Windows 系统

1、下载 Windows 客户端 Zabbix agent 2

2、安装客户端

​3、在服务端 Web 页面添加主机,关联模板

 四:Zabbix 监控 java 应用 

1、客户端开启 java jmxremote 远程监控功能

2、服务端安装 zabbix-java-gateway

3、修改服务端 zabbix-server 配置

4、在服务端 Web 页面添加主机,关联模板

五:Zabbix 监控 SNMP 

1.服务端安装 snmp 监控程序

2.修改 snmp 的配置文件,并启动服务

3.使用 snmpwalk 命令测试

4.在 Web 页面配置 snmp 方式监控


一:部署 zabbix 代理服务器

1、准备环境

分布式监控的作用:
●分担 server 的集中式压力
●解决多机房之间的网络延时问题

agent --> proxy --> server


systemctl disable --now firewalld
setenforce 0
hostnamectl set-hostname zbx-proxy

2、 设置 zabbix 的下载源,安装 zabbix-proxy

rpm -ivh https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-release-6.0-4.el7.noarch.rpm
sed -i 's#https://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo

yum install -y zabbix-proxy-mysql zabbix-sql-scripts zabbix-selinux-policy

3、 部署数据库,要求 MySQL 5.7 或 Mariadb 10.5 及以上版本

#配置 Mariadb yum源
cat > /etc/yum.repos.d/mariadb.repo << EOF
[mariadb]
name = MariaDB
baseurl = http://mirrors.aliyun.com/mariadb/yum/10.5/centos7-amd64/
gpgkey = http://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck = 1
enabled=1
EOF

yum install -y mariadb-server mariadb

systemctl enable --now mariadb

4、 初始化数据库

mysql_secure_installation
分别输入 回车 -> n -> Y (设置root密码,如abc123) -> 后面一路 Y

mysql -u root -pabc123

5、创建数据库 指定字符集,创建 zabbix 数据库用户并授权,导入数据库信息


#创建数据库并指定字符集
CREATE DATABASE zabbix_proxy character set utf8 collate utf8_bin;


#创建 zabbix 数据库用户并授权
GRANT all ON zabbix_proxy.* TO 'zabbix'@'localhost' IDENTIFIED BY 'zabbix';
GRANT all ON zabbix_proxy.* TO 'zabbix'@'%' IDENTIFIED BY 'zabbix';
FLUSH PRIVILEGES;

#导入数据库信息
rpm -ql zabbix-sql-scripts 		#查询 sql 文件的位置

cat /usr/share/zabbix-sql-scripts/mysql/proxy.sql | mysql -uroot -pabc123 zabbix_proxy

 

 6、修改 zabbix-proxy 配置文件

vim /etc/zabbix/zabbix_proxy.conf
Server=192.168.231.101			#32行,指定 zabbix 服务端的 IP 地址
Hostname=zbx-proxy					#42行,指定当前 zabbix 代理服务器的主机名
DBPassword=zabbix					#194行,指定当前数据库 zabbix 用户的密码

7、 启动 zabbix-proxy,在所有主机上配置 hosts 解析

//启动 zabbix-proxy
systemctl start zabbix-proxy
systemctl enable zabbix-proxy


//在所有主机上配置 hosts 解析
vim /etc/hosts
192.168.231.101 zbx-server zbx.qhw.com
192.168.231.102 zbx-agent01
192.168.231.103 zbx-proxy
192.168.231.110 zbx-agent02

 8、在 Web 页面配置 agent 代理

点击左边菜单栏【配置】中的【动作】,勾选自动注册规则,点击 禁用
点击左边菜单栏【配置】中的【主机】,勾选原有的客户端主机,点击 删除

点击左边菜单栏【管理】中的【agent代理程序】,点击【创建代理】
【agent代理程序名称】输入 zbx-proxy
【系统代理程序模式】选择 主动式
【代理地址】输入 192.168.231.103
点击 【添加】

9、配置 agent 使用 proxy

(1)在客户端修改 agent2 配置文件

vim /etc/zabbix/zabbix_agent2.conf
......
Server=192.168.231.103			#80行,指定 zabbix 代理服务器的 IP 地址
ServerActive=192.168.231.103	#120行,指定 zabbix 代理服务器的 IP 地址

 (2) 在 Web 页面配置两台agent 

点击左边菜单栏【配置】中的【主机】,点击【创建主机】
【主机名称】输入 zbx-agent01
【可见的名称】输入 zbx-agent01
【模板】搜索 Linux ,选择 Linux by Zabbix agent
【群组】选择 Linux server
【Interfaces】选择 客户端,【IP地址】输入 192.168.80.30,【端口】输入 10050
【由agent代理程序监测】选择 zbx-proxy
点击 【添加】

(3) 分别在客户端和代理服务器上重启服务(除server外的3台主机)

systemctl restart zabbix-agent2

systemctl restart zabbix-proxy

等待一段时间后,点击左边菜单栏【配置】中的【主机】刷新,查看客户端主机监控状态正常

在服务端查看日志(server)
tail -f /var/log/zabbix/zabbix_proxy.log

二: 部署 Zabbix 高可用集群

官方的高可用仅仅针对 Zabbix Server 部分,数据库部分和前端部分需要自行采用各自领域的高可用解决方案。

1、主节点 Zabbix Server 配置

vim /etc/zabbix/zabbix_server.conf
......
DBHost=192.168.231.101
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
......
HANodeName=zbx-server01					#设置为当前节点主机名或者IP地址,需保证同一集群中唯一
NodeAddress=192.168.231.101:10051			#设置为相对应的节点IP


systemctl restart zabbix-server

2、 主节点给数据库授权远程登录权限

mysql -uroot -pabc123
GRANT all ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'zabbix';
FLUSH PRIVILEGES;

3、备节点 Zabbix Server 配置

vim /etc/zabbix/zabbix_server.conf
......
DBHost=192.168.80.20
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
......
HANodeName=zbx-server02
NodeAddress=192.168.80.30:10051


systemctl restart zabbix-server

4、客户端配置

vim /etc/zabbix/zabbix_agentd.conf 
......
Server=192.168.80.20,192.168.80.30
ServerActive=192.168.80.20;192.168.80.30			#注意,ServerActive 的连接符是‘;’ ,而不是‘,’

三: Zabbix 监控 Windows 系统

1、下载 Windows 客户端 Zabbix agent 2

https://cdn.zabbix.com/zabbix/binaries/stable/6.0/6.0.13/zabbix_agent2-6.0.13-windows-amd64-openssl.msi

2、安装客户端

双击客户端软件包开始安装
【Host name】:WIN10-SERVER
【Zabbix server IP/DNS】:192.168.80.20
【Agent listen port】:10050
【Server or Proxy for active checks】:192.168.80.20
勾选 【Add agent location to the PATH】


3、在服务端 Web 页面添加主机,关联模板

点击左边菜单栏【配置】中的【主机】,点击【创建主机】
【主机名称】输入 win10-agent01
【可见的名称】输入 win10-agent01-192.168.80.5
【模板】搜索 windows ,选择 Windows by Zabbix agent
【群组】输入 windows ,选择 windows(新)
【Interfaces】点击添加 客户端,【IP地址】输入 192.168.80.5,【端口】输入 10050

 四:Zabbix 监控 java 应用 

1、客户端开启 java jmxremote 远程监控功能

上传 tomcat 软件包到 /opt 目录中
cd /opt
tar zxvf apache-tomcat-9.0.16.tar.gz
mv apache-tomcat-9.0.16 /usr/local/tomcat

#配置 java jmxremote 远程监控功能
vim /usr/local/tomcat/bin/catalina.sh
......    #位置在 cygwin=false 前
CATALINA_OPTS="$CATALINA_OPTS \
-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=12345 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-Djava.rmi.server.hostname=192.168.80.30"           #tomcat服务器地址

cygwin=false


#启动服务,查看端口
/usr/local/tomcat/bin/startup.sh 

netstat -lntp | grep 12345


2、服务端安装 zabbix-java-gateway

yum install -y zabbix-java-gateway

systemctl enable --now zabbix-java-gateway.service

netstat -lntp | grep 10052            #zabbix-java-gateway 默认监听 10052 端口


3、修改服务端 zabbix-server 配置

vim /etc/zabbix/zabbix_server.conf
......
JavaGateway=127.0.0.1            # 317行,指定 zabbix-java-gateway 的 IP 地址
StartJavaPollers=5                # 333行,开启用来收集java数据的poller进程的数量

systemctl restart zabbix-server

ps -ef | grep zabbix_server | grep java


4、在服务端 Web 页面添加主机,关联模板

点击左边菜单栏【配置】中的【主机】,点击 zbx-agent01
【模板】搜索 JMX ,选择 Generic Java JMX
【Interfaces】点击添加 JMX,【IP地址】输入 192.168.80.30,【端口】输入 12345
点击 【更新】
等待一段时间后 Zabbix server 的可用性增加了 JXM 监控方式


#监控其它 java 应用
java -Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=12345 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-Djava.rmi.server.hostname=192.168.80.30" \
-jar XXX.jar

五:Zabbix 监控 SNMP 

SNMP,简单网络管理协议,常用于监控网络设备,也能监控支持开启SNMP功能的设备(windows、linux、打印机等)。

1.服务端安装 snmp 监控程序

yum install -y net-snmp net-snmp-utils


2.修改 snmp 的配置文件,并启动服务

vim /etc/snmp/snmpd.conf
......
view    systemview    included   .1                #57行,添加此配置

systemctl start snmpd


3.使用 snmpwalk 命令测试

snmpwalk -v 2c -c public 127.0.0.1 sysname
SNMPv2-MIB::sysName.0 = STRING: zbx-server
-------------------------------------------------------
–v 1|2c|3:指定SNMP协议版本,v2c通过团体名作为认证,v3通过用户名和密码认证
–c:指定团体名(设备间的暗号)
sysname:为 snmp 的 key,用于查看系统名称;SysDesc 用于查看系统信息
-------------------------------------------------------


4.在 Web 页面配置 snmp 方式监控

点击左边菜单栏【配置】中的【主机】,点击 Zabbix server
【模板】取消链接并清理 现有模板 Linux by Zabbix agent
        搜索 Generic,选择 Generic by SNMP
【群组】搜索 net,选择 net(新)
【Interfaces】点击【添加】选择 SNMP ,【IP地址】输入 127.0.0.1,【端口】输入 161
【SNMP version】选择 SNMPv2
【SNMP community】输入 {$SNMP_COMMUNITY}

点击上方菜单栏【宏】
选择【主机宏】
【宏】输入 {$SNMP_COMMUNITY},【值】 输入 public(要与网络设备设置的团体名一致),【描述】输入 网络设备snmp的团队名
点击 【更新】
等待一段时间后 Zabbix server 的可用性就变成了 SNMP 监控方式

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

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

相关文章

从零开始的知识图谱生活,构建一个百科知识图谱,完成基于Deepdive的知识抽取、基于ES的简单语义搜索、基于 REfO 的简单KBQA

项目设计集合&#xff08;人工智能方向&#xff09;&#xff1a;助力新人快速实战掌握技能、自主完成项目设计升级&#xff0c;提升自身的硬实力&#xff08;不仅限NLP、知识图谱、计算机视觉等领域&#xff09;&#xff1a;汇总有意义的项目设计集合&#xff0c;助力新人快速实…

华为云“All in ”大模型:释放人工智能巨能!看低代码开发平台引领未来

前言 截至目前&#xff0c;全球已发布数百个大模型&#xff0c;我国年内已发布80多个大模型&#xff0c;面向消费者端的应用百花齐放。我们认为&#xff0c;大模型在行业里多作贡献&#xff0c;才是正确的道路。 当下发展现状 今年以来&#xff0c;人工智能的发展因ChatGPT进入…

MAC |如何在mac上阅读caj文件?

背景&#xff1a;工作群中老板突然发了一个caj的论文过来&#xff0c;让大家阅读学习。 于是就开启了解决&#xff1a;在mac上阅读caj文件之旅。 首先&#xff0c;尝试了这篇文章的方法&#xff1a; 教你如何在Mac上打开CAJ格式的文件_普通网友的博客-CSDN博客 以失败告终。…

【sql注入-报错注入1】extractvalue()函数 报错注入

目录 extractvalue()报错注入 一、语法介绍&#xff1a; 二、报错原因 网络安全小圈子 &#xff08;***注&#xff1a;注意看版本要求&#xff09; extractvalue()报错注入 一、语法介绍&#xff1a; 版本&#xff1a; MySQL<5.0.x 语法&#xff1a; EXTRACTVALUE(…

地址解析协议 (ARP)

地址解析协议&#xff08;ARP&#xff09;是互联网协议&#xff08;IP&#xff09;套件的关键第 2 层协议&#xff0c;可将 IP 地址转换为媒体访问控制&#xff08;MAC&#xff09;地址&#xff08;IP – MAC&#xff09;&#xff0c;ARP 在实现网络连接方面发挥着不可或缺的作…

赛效:如何一键生成印章

1&#xff1a;在电脑上打开标小智印章生成器&#xff0c;点击输入框&#xff0c;在输入框里输入印章内容。 2&#xff1a;文本内容输入后&#xff0c;点击右侧的“生成按钮”。 3&#xff1a;在生成的印章模板里&#xff0c;挑一个满意的&#xff0c;鼠标放上去就可以看到下载按…

安装Nodejs、NPM、Vue脚手架详细教程

一、安装Nodejs 查看自己电脑是否安装nodejs node --version我这里已经下载过了&#xff0c;没有下载过的会提示该命令不存在 可以到官网下载一下 https://nodejs.org/en/download/ 不要安装在中文路径下 二、安装NPM 如果你安装了nodejs–默认会安装NPM. npm --version…

国内好用的CRM框架推荐和介绍

一、如何选择CRM管理系统的方法 选择适合自己的CRM管理系统是企业客户关系管理的重要决策之一&#xff0c;需要根据自身的需求和实际情况进行选择。下面介绍几个选择比较好的CRM管理系统的方法&#xff1a; 1. 确定功能需求&#xff1a;企业需要根据自身的业务特点和管理需求…

OpenHarmony之小熊派Bearpi-hm_micro_small刷机问题避坑

目录 1.概述2.注意事项3.发现问题4.解决问题 1.概述 最近大家都知道&#xff0c;华为出了一个中国的手机操作系统HarmonyOS,本人很是激动&#xff0c;因为中国终于有了自己的手机操作系统&#xff0c;而且我去了解了下&#xff0c;发现完全不同于Android和IOS操作系统&#xf…

集合面试题--LinkedList数组

目录 单向链表 介绍 时间复杂度分析 双向链表 时间复杂度分析 总结 ArrayList和LinkedList的区别是什么&#xff1f; 单向链表 介绍 时间复杂度分析 双向链表 时间复杂度分析 总结 ArrayList和LinkedList的区别是什么&#xff1f;

Drools用户手册翻译——第三章 构建,部署,应用和运行(一)介绍与构建

这一章内容颇多&#xff0c;就是一个构建&#xff0c;就翻译了好久&#xff0c;虽然说之前用过drools&#xff0c;但是里面kie相关的很多类都比较混乱&#xff0c;翻译完这个用户手册&#xff0c;感觉清晰了许多&#xff0c;因为实在是太多了&#xff0c;如果你也有相同的情况&…

pytorch grid_sample易错点

pytorch grid_sample易错点 易错点是&#xff1a; grid_sample函数中, x对应w, y对应h !! grid_sample函数中, x对应w, y对应h !! grid_sample函数中, x对应w, y对应h !! 函数的作用 output的size和grid的size是一样的&#xff0c;所以output中某一位置(h, w)的值&#xff0c…

华为网络基础

目录 一、封装和解封装和一些通信基本概念 1、带宽&#xff1a; 2、延迟&#xff1a; 3,分层概念 4.单位换算 5.数据的封装 6.介质 二、数据链路和mac地址 1.基本概念 2.帧的内容和区别 2.1. e2帧格式 2.2. ieee802.3帧格式 3.网络层的数据链路层相关的一些概念 …

docker+robot framework+selenium并发web应用UI自动化测试实践

自己在日常测试中&#xff0c;会搭建UI自动化测试框架来进行web应用的回归测试&#xff0c;在这过程中遇到了许多问题&#xff0c;如测试脚本和执行机不分离&#xff0c;串行测试效率低下&#xff0c;环境搭建麻烦等问题。在这个过程中&#xff0c;自己也在网上看一些前辈的搭建…

短视频抖音seo矩阵系统源码:技术开发与实践(三)

一、 技术开发文档说明 1. 系统架构 短视频抖音seo矩阵源码部署功能架构包含&#xff1a;多模式视频剪辑&#xff0c;视频批量处理、文字转语音、视频批量发布、多平台账号管理、 智能在线客服、粉丝画像及数据统计分析、抖音seo排名优化采集等。 2. 抖音seo排名系统模块组成…

高数基础4

目录 求极限的方式&#xff1a; 利用洛必达法则求极限 n阶可导的理解 几个常用的泰勒公式 求极限的方式&#xff1a; 利用洛必达法则求极限 洛必达法则适用于分子分母的极限同为0或者同为无穷的形式。 我们洛必达法则相当于对分子分母同时求导&#xff0c;所以要要求再x0的…

宝塔 安装/使用/备份数据 Jenkins-图文小白教程

一、Jenkins包下载 大家可以从Jenkins官网&#xff08;https://www.jenkins.io/&#xff09;根据自己的需要下载最新的版本。 但Jenkins官网下载较慢&#xff0c;容易造成下载失败。可以去国内的开源镜像网站下载Jenkins最新版本。目前博主使用的是清华大学的开源镜像网站&…

为什么我要自己做一个周易软件

周易是中国数千年流传下来传统文化&#xff0c;在八字、六壬、六爻、奇门遁甲、梅花易数等预测占卜方面应用广泛。很多传统易学工作者或爱好者采用手工排盘的方式&#xff0c;进行相关的排盘。当然现代更多的易学人士采用各自习惯的排盘软件进行排盘&#xff0c;大大节省了排盘…

【广州华锐互动】VR虚拟产品可视化平台将消费者带入不同的场景体验

随着虚拟现实技术的不断发展&#xff0c;VR虚拟产品体验已经成为了各大展会和商场中不可或缺的一部分。VR虚拟产品体验可以为消费者提供多种沉浸式体验&#xff0c;从而吸引更多的消费者关注和购买。 模拟场景体验 VR虚拟产品体验可以通过虚拟现实技术&#xff0c;将消费者带入…

C语言面试经典问题

当准备面试C语言相关职位时&#xff0c;以下是一些常见的C语言面试问题&#xff0c;可以帮助你准备面试。 什么是C语言&#xff1f; C语言的特点是什么&#xff1f; 请解释C语言中的标识符和关键字。 什么是C语言中的数据类型&#xff1f;请列举一些常见的数据类型。 如何…