zabbix分布式部署

news2024/11/24 8:36:53

基于zabbix-proxy的分布式监控
在这里插入图片描述

1.1 分布式监控的作用
1)分担 server 的集中式压力;

2)解决多机房之间的网络延时问题。

1.2 数据流向
agent --> proxy --> server

1.3 构成组件
zabbix-server:整个监控体系中最核心的组件,它负责接收客户端发送的报告信息,所有配置、 统计数据及操作数据都由它组织。

Database:所有配置信息和zabbix收集到的数据都存储在数据库中。

zabbix-proxy:用于分布式系统中,可以代理zabbix-server的功能,减轻server的压力。

zabbix-agent:客户端软件,装在被监控主机上,用于采集监控数据,并把采集到的的数据发送给proxy或者server。

web界面:web界面可以让用户随时随地都能够轻松的访问到zabbix,是zabbix-server的一部分,通常跟server运行在同一台物理机上。

二、部署步骤
2.1、进入源仓库设置一个nginx的源
cd /etc/yum.repos.d/
vim nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/ r e l e a s e v e r / releasever/ releasever/basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

安装nginx
yum install -y nginx
安装PHP
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

yum install -y epel-release

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

yum -y install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-gd php72w-mbstring php72w-pdo php72w-xml php72w-fpm php72w-mysqlnd php72w-opcache php72w-ldap php72w-bcmath

修改配置文件
vim /etc/nginx/conf.d/zbx.conf
server {
listen 80;
server_name zbx.dznb.com;

location / {
root /var/www/zbx;
index index.php;
}

location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/zabbix$fastcgi_script_name;
include fastcgi_params;
}
}

vim /etc/php-fpm.d/www.conf

vim /etc/php.ini

max_execution_time = 300 # 368行
max_input_time = 600 # 378行
post_max_size = 80M # 656行
date.timezone = Asia/Shanghai # 877行

测试
mkdir -p /var/www/zabbix
vim /var/www/zabbix/index.php
systemctl enable --now nginx php-fpm

3、zabbix-DB部署数据库
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

初始化数据库
mysql_secure_installation

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

mysql -u root -pabc123

创建数据库并指定字符集
CREATE DATABASE zabbix character set utf8 collate utf8_bin;
创建 zabbix 数据库用户并授权
GRANT all ON zabbix.* TO ‘zabbix’@‘localhost’ IDENTIFIED BY ‘zabbix’;
GRANT all ON zabbix.* TO ‘zabbix’@‘%’ IDENTIFIED BY ‘zabbix’;
flush privileges;
向数据库导入 zabbix 数据
上传源码包 zabbix-6.0.*.tar.gz 到 /opt 目录
cd /opt
tar xf zabbix-6.0.13.tar.gz
cd /opt/zabbix-6.0.13/database/mysql
mysql -uroot -pabc123 zabbix < schema.sql
mysql -uroot -pabc123 zabbix < images.sql
mysql -uroot -pabc123 zabbix < data.sql
mysql -uroot -pabc123 zabbix < double.sql
mysql -uroot -pabc123 zabbix < history_pk_prepare.sql

4、zabbix-server编译安装
yum install -y mysql-devel pcre-devel openssl-devel zlib-devel libxml2-devel net-snmp-devel net-snmp libssh2-devel OpenIPMI-devel libevent-devel openldap-devel libcurl-devel fping gcc gcc-c++ make

4.1创建用户
useradd -s /sbin/nologin -M Zabbix
cd /opt/zabbix-6.0.13/
./configure
–sysconfdir=/etc/zabbix/
–enable-server
–with-mysql
–with-net-snmp
–with-libxml2
–with-ssh2
–with-openipmi
–with-zlib
–with-libpthread
–with-libevent
–with-openssl
–with-ldap
–with-libcurl
–with-libpcre

4.3检查版本
zabbix_server –version
4.4、修改 zabbix server 配置文件,修改数据库的密码
vim /etc/zabbix/zabbix_server.conf
LogFile=/var/log/zabbix_server.log # 38行,指定 zabbix 日志路径
DBPassword=zabbix # 123行,指定 zabbix 数据库的密码

准备 systemctl 服务管理文件
cat > /usr/lib/systemd/system/zabbix-server.service << EOF
[Unit]
Description=Zabbix Server with MySQL DB
After=syslog.target network.target mysqld.service

[Service]
Type=simple
ExecStart=/usr/local/sbin/zabbix_server -f
User=zabbix

[Install]
WantedBy=multi-user.target
EOF

创建一个日志文件
touch /var/log/zabbix_server.log
chown Zabbix:zabbix /var/log/zabbix_server.log
systemctl restart zabbix-server.service

6、部署 Web 前端,进行访问
将这个目录里的文件进行复制到之前创建的目录文件中
cp -r /opt/zabbix-6.0.27/ui/* /var/www/zab

给这个目录文件加上数组和属主为nginx
chown -R nginx.nginx /var/www/zab/

5.Zabbix-proxy操作
#关闭防火墙和selinux
systemctl disable --now firewalld
setenforce 0

设置 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 zabbix-get

部署数据库并将zabbix相关文件导入
#配置 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

#安装mariaDB;proxy需要一个独立的数据库,请勿和server同库
yum install -y mariadb-server mariadb

#启动
systemctl enable --now mariadb

#初始化数据库
mysql_secure_installation
分别输入 回车 -> n -> Y (设置root密码,如abc123) -> 后面一路 Y

#登录数据库
mysql -u root -pabc123

#创建数据库并指定字符集
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

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

#启动 zabbix-proxy
systemctl enable zabbix-proxy --now;systemctl status zabbix-proxy

在所有主机上配置 hosts 解析
vim /etc/hosts
192.168.2.100 zbx-server
192.168.2.102 zbx-agent01
192.168.2.103 zbx-agent02
192.168.2.106 zbx-proxy

在 Web 页面配置 agent 代理

在客户端修改 agent2 配置文件

vim /etc/zabbix/zabbix_agent2.conf

Server=192.168.2.106 #80行,指定 zabbix 代理服务器的 IP 地址
ServerActive=192.168.2.106 #120行,指定 zabbix 代理服务器的 IP 地址

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

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

相关文章

Mudbox 2025新版中文---数字雕刻与纹理绘画新境界

Mudbox 2025是一款功能强大的3D建模软件&#xff0c;以其卓越的建模能力和高效的创作工具而备受瞩目。它支持纹理烘烤、三维层、多分辨率网格编辑等功能&#xff0c;为用户提供了直观且易于操作的用户界面。 Mudbox 2025新版中文下载 功能特色&#xff1a; 强大的建模与雕刻能…

PaddleOCR环境搭建、模型训练、推理、部署全流程(Ubuntu系统)

OCR场景应用集合&#xff1a;包含数码管、液晶屏、车牌、高精度SVTR模型、手写体识别等9个垂类模型&#xff0c;覆盖通用&#xff0c;制造、金融、交通行业的主要OCR垂类应用。 ​ 一、PaddleOCR环境搭建 ​ conda create -n ppocr python3.8​conda activate ppocr 进入paddle…

如何在Windows通过eXtplorer结合cpolar搭建个人文件服务器并实现无公网ip远程访问

文章目录 1. 前言2. eXtplorer网站搭建2.1 eXtplorer下载和安装2.2 eXtplorer网页测试2.3 cpolar的安装和注册 3.本地网页发布3.1.Cpolar云端设置3.2.Cpolar本地设置 4.公网访问测试5.结语 1. 前言 通过互联网传输文件&#xff0c;是互联网最重要的应用之一&#xff0c;无论是…

一文教你学会用群晖NAS配置WebDAV服务结合内网穿透实现公网同步Zotero文献库

文章目录 前言1. Docker 部署 Trfɪk2. 本地访问traefik测试3. Linux 安装cpolar4. 配置Traefik公网访问地址5. 公网远程访问Traefik6. 固定Traefik公网地址 前言 Trfɪk 是一个云原生的新型的 HTTP 反向代理、负载均衡软件&#xff0c;能轻易的部署微服务。它支持多种后端 (D…

Nuxt3(路由)

说明 Nuxt的核心功能之一是文件系统路由。pages/目录中的每个Vue文件都会创建一个相应的URL&#xff08;或路由&#xff09;&#xff0c;用于显示文件的内容。通过为每个页面使用动态导入&#xff0c;Nuxt利用代码分割来仅加载所需路由的最小量JavaScript。 简单来说&#xf…

金三银四-探秘银行科技部:稳定职业背后的挑战 | 不敢跳槽啦 | 好慌

小伙伴们好&#xff0c;我是「 行走的程序喵」&#xff0c;感谢您阅读本文&#xff0c;欢迎三连~ &#x1f63b; 【Java基础】专栏&#xff0c;Java基础知识全面详解&#xff1a;&#x1f449;点击直达 &#x1f431; 【Mybatis框架】专栏&#xff0c;入门到基于XML的配置、以…

【Java程序设计】【C00344】基于Springboot的船舶维保管理系统(有论文)

基于Springboot的船舶维保管理系统&#xff08;有论文&#xff09; 项目简介项目获取开发环境项目技术运行截图 项目简介 项目获取 &#x1f345;文末点击卡片获取源码&#x1f345; 开发环境 运行环境&#xff1a;推荐jdk1.8&#xff1b; 开发工具&#xff1a;eclipse以及i…

印度尼西亚国家出口发展局局长一行莅临锐捷网络,共话数字经济未来

第四届中国跨境电商交易会举办期间,印度尼西亚国家出口发展局局长迪迪苏梅迪一行莅临锐捷网络参观交流,宣传推介印度尼西亚市场资源,挖掘中印尼双方企业合作机遇。福州市商务局副局长潘文等领导共同参与活动。锐捷网络副总裁、数据中心事业部总经理林东豪接待。 印度尼西亚国家…

T-Mobile紫卡激活(Ultra)

https://my.ultramobile.com/paygo/activation 人工智能学习网站&#xff1a; https://chat.xutongbao.top

Nginx 编译安装【CentOS 7】

1. 前言 本文使用的操作系统&#xff1a; 名称描述Oracle VM VirtualBox虚拟机软件CentOS-7-x86_64-Minimal-2009.isoCentOS 7.9 最小化安装镜像文件 操作系统信息如下所示 cat /etc/redhat-release 2. 源码包 进入 nginx 官网&#xff1a;https://nginx.org&#xff0c;查看…

MySQL B树 和B+数据的区别

MySQL B树 和B数据的区别 树分类&#xff1a;二叉树完全二叉树满二叉树堆红黑树 B树B树 首先我们搞清楚数据结构中的 树这个概念 树 分类&#xff1a; 二叉树 限定每个节点的子节点最多只有2个子节点&#xff0c;且有左右之分。完全二叉树 满二叉树 堆 红黑树 B树 B树 …

深度学习故障诊断实战 | 数据预处理之基于滑动窗的数据样本增强

前言 本期给大家分享介绍如何基于滑动窗方法进行数据样本增强 背景 深度学习模型训练需要大量的样本。在故障诊断领域&#xff0c;每个类别大都会达到300个样本。但是在实际公开数据集中&#xff0c;以CWRU数据集为例&#xff0c;每个类别只有24组数据&#xff0c;这明显是不…

拓扑排序_和邻接表

首先认识邻接表,两种写法一种原始写法相当复杂,一种二维vector写法稍简单,邻接表,意思就是,该节点的下一个节点有哪些. 首先来看原始写法,记住下面这张图 可以看到这就是原始的邻接表,我们需要三个数组,终点数组e[],上一条边的索引位置fr[],和辅助数组h[],h[i]表示上一条i为起…

【面试经典150 | 】最长递增子序列

文章目录 Tag题目来源解题思路方法一&#xff1a;动态规划 写在最后 Tag 【动态规划】【数组】 题目来源 300. 最长递增子序列 解题思路 方法一&#xff1a;动态规划 定义状态 dp[i] 表示以位置 i 对应整数为末尾的最长递增子序列的长度。 状态转移 我们从小到大计算 dp…

SpringBoot实现RabbitMQ的简单队列(SpringAMQP 实现简单队列)

文章目录 1. 前言2. Basic Queue 简单队列模型2.1 父工程导入依赖2.2 消息发送2.2.1 消息发送方必要的配置2.2.2 发消息 3. 消息接收3.1 消息接收方必要的配置3.2 接收消息 1. 前言 SpringAMQP 是基于 RabbitMQ 封装的一套模板&#xff0c;并且还利用 SpringBoot 对其实现了自…

【教程】iOS 手机抓包工具介绍及教程

&#x1f4f1; 最近又发现APP Store一款宝藏软件&#xff0c;克魔助手抓包工具&#xff0c;app刚上架&#xff0c;功能不断迭代中&#xff0c;目前18软妹币实惠价可享受终身版&#xff01;现在是下手的最好时机。 引言 移动端开发中&#xff0c;抓包工具已成为必备的工具之一…

数据库 05-05 优化

01.查询优化的概念 02.例子&#xff1a;优化关系代数 转换关系代数&#xff1a; 03.优化查询执行计划 04.这些都是查询优化器&#xff0c;详细介绍&#xff1a; 一. 等价表达式 等价规则&#xff1a; 01. 02. 03. 04. E1 X E2 是全部笛卡尔积 什么是自然连…

c++的学习之路:5、类和对象(1)

一、面向对象和面向过程 在说这个定义时&#xff0c;我就拿c语言举例&#xff0c;在c语言写程序的时候&#xff0c;基本上就是缺什么函数&#xff0c;就去手搓一个函数&#xff0c;写的程序也只是调用函数的&#xff0c;而c就是基于面向对象的开发&#xff0c;他关注的不再是单…

AXI Memory Mapped to PCI Express 学习笔记(五)—— Test Bench

本文包含有关Vivado Design Suite环境中提供的测试平台&#xff08;Test Bench&#xff09;的信息。 一、Endpoint的Root Port模型测试平台 PCI Express Root Port Model是一个强大的测试平台环境&#xff0c;它提供了一个测试程序接口&#xff0c;可以与提供的PIO设计&#…

【技术】实现MES系统与其他系统集成的关键步骤和技术

在当今数字化的制造环境中&#xff0c;MES系统&#xff08;制造执行系统&#xff09;已成为企业提高生产效率和管理水平的重要工具。然而&#xff0c;要实现MES系统与其他系统的集成&#xff0c;充分发挥其潜力&#xff0c;并非易事。本文将探讨实现MES系统与其他系统集成的关键…