Linux下zabbix_proxy实施部署

2023-05-16

简介

zabbix proxy 可以代替 zabbix server 收集性能和可用性数据,然后把数据汇报给 zabbix server,并且在一定程度上分担了zabbix server 的压力.

zabbix-agent可以指向多个proxy或者server
zabbix-proxy不能指向多个server

zabbix proxy 使用场景:
1,监控远程区域设备
2,监控本地网络不稳定区域
3,当 zabbix 监控上千设备时,使用它来减轻 server 的压力
4,简化分布式监控的维护


1,安装mysql

1.1,创建用户
groupadd mysql
useradd -r -g mysql mysql
1.2,上传,解压安装包,并做软链接
tar zxf mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
cd /usr/local/
mv mysql-5.7.31-linux-glibc2.12-x86_64 mysql-5.7.31
ln -s mysql-5.7.31 mysql
1.3,编辑配置文件
cp /etc/my.cnf{,.bak}
cat >/etc/my.cnf<<\EOF

[client]
port = 3306
socket = /data/3306/dbdata/mysql.sock

[mysqldump]
quick
max_allowed_packet = 16M

[myisamchk]
key_buffer_size = 8M
sort_buffer_size = 8M
read_buffer = 4M
write_buffer = 4M

[mysqld]
#=========================>[mysql Base]<=====================
skip_name_resolve
basedir = /usr/local/mysql
datadir = /data/3306/dbdata
socket = /data/3306/dbdata/mysql.sock
user = mysql
bind-address = 0.0.0.0
port = 3306
innodb_file_per_table = ON
default-storage-engine = InnoDB
character-set-server = utf8
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 
interactive_timeout = 28800
wait_timeout = 28800
# transaction_isolation = REPEATABLE-READ
# skip-networking
# lower_case_table_names = 1
# skip-grant-tables
# skip-external-locking

#========================>[mysql log related]<===============
log_bin = /data/3306/binlog/mysql-bin
binlog_format = mixed
expire_logs_days = 3
slow_query_log = 1
long_query_time = 1.5
slow_query_log_file = /data/3306/slowlog/mysql-slow.log
#general_log = ON
#general_log_file = /data/3306/slowlog/sql.log

#========================>[ mysql Replication]<================
log_slave_updates = true
master-info-repository = TABLE
relay_log_info_repository = TABLE
relay_log = /data/3306/relaylog/relay-bin
relay_log_purge = OFF
sync_master_info = 1
sync_binlog = 1
slave_parallel_workers = 2
binlog_checksum = CRC32
master_verify_checksum = 1
slave_sql_verify_checksum = 1
binlog_rows_query_log_events = 1
server-id = 1
report_port = 3306
report_host = nlpt252-zabbix-mysql
replicate_wild_ignore_table=test.%
replicate_wild_ignore_table = information_schema.%
slave-skip-errors=1022,1032,1062
#read_only = 1



#========================>[mysql perfomance]<===============
back_log = 600
max_connections = 3000
max_connect_errors = 6000
open_files_limit = 65535
table_open_cache = 128
max_allowed_packet = 16M
binlog_cache_size = 32768
max_heap_table_size = 1024M
tmp_table_size = 128M
join_buffer_size = 16M
sort_buffer_size = 16M
read_rnd_buffer_size = 8M 
read_buffer_size = 4M
thread_cache_size = 64
# query_cache_type = OFF
# query_cache_size = 8M
# query_cache_limit = 2M
key_buffer_size = 256M

#======================>[mysql storage-engine]<==============
# InnoDB使用一个缓冲池来保存索引和原始数据, 不像MyISAM.
# 这里你设置越大,你在存取表里面数据时所需要的磁盘I/O越少.
# 在一个独立使用的数据库服务器上,你可以设置这个变量到服务器物理内存大小的80%
# 不要设置过大,否则,由于物理内存的竞争可能导致操作系统的换页颠簸.
# 注意在32位系统上你每个进程可能被限制在 2-3.5G 用户层面内存限制,
# 所以不要设置的太高.
innodb_buffer_pool_size = 2G
innodb_open_files = 1000

# innodb使用后台线程处理数据页上的读写 I/O(输入输出)请求,根据你的 CPU 核数来更改,默认是4
innodb_write_io_threads = 4
innodb_read_io_threads =4
innodb_thread_concurrency = 0
innodb_purge_threads = 2
innodb_flush_log_at_trx_commit = 1
innodb_log_buffer_size = 2M
innodb_log_file_size = 32M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 90
bulk_insert_buffer_size = 8M
myisam_sort_buffer_size = 16M
EOF
1.4,创建所需的目录
mkdir -p /data/3306/{dbdata,logs,binlog,tmp,lib,undolog,relaylog,slowlog}
1.5,初始化mysql
cd /usr/local/mysql-5.7.31
bin/mysqld --initialize --basedir=/usr/local/mysql --datadir=/data/3306/dbdata --user=mysql
输出的最后一行 root@localhost: i#g0auLF17vW  ----默认root密码 
1.6,授权,添加环境变量
chown -R mysql.mysql /usr/local/mysql/*
chown -R mysql.mysql /data/3306/
echo "export PATH=$PATH:/opt/mysql/bin" >> /root/.bash_profile
source ~/.bash_profile
1.7,做启动项
ln -s /usr/local/mysql/bin/mysql /usr/bin
cp /usr/local/mysql-5.7.31/support-files/mysql.server /etc/init.d/mysql
#修改启动项
vim /etc/init.d/mysql

basedir=/usr/local/mysql
datadir=/data/3306/dbdata
chmod +x /etc/init.d/mysql
chkconfig --add mysql
service mysql start
1.8,登录mysql,修改密码,创建用户和库
mysql -uroot -p
#修改密码
set password=password('zbx2013');
flush privileges;
#创建用户和建库
create database zabbix_proxy character set utf8 collate utf8_bin; 
create user 'zabbix_proxy'@'%' identified by 'Zbxpass'; 
grant all privileges on zabbix_proxy.* to 'zabbix_proxy'@'%'; 
flush privileges;
quit;

2,安装zabbix_proxy

2.1,解压,并创建用户
cd /usr/local/
tar zxvf zabbix-5.0.5.tar.gz
groupadd --system zabbix
useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix
2.2,进去到导入数据
#进到数据的目录下
cd /usr/local/zabbix-5.0.5/database/mysql
登录mysql,并导入数据
mysql -uroot -p
use zabbix_proxy;
source schema.sql;
2.3,安装依赖包
yum -y install gcc libxml2-devel unixODBC-devel net-snmp-devel libcurl-devel libssh2-devel OpenIPMI-devel openssl-devel openldap-devel libevent libevent-devel 
2.4,编译并安装
cd /usr/local/zabbix-5.0.5/
#编译
./configure --prefix=/usr/local/zabbix_proxy \
 --enable-server \
 --enable-agent \
 --enable-proxy \
 --with-mysql \
 --enable-ipv6 \
 --with-net-snmp \
 --with-libcurl \
 --with-libxml2 \
 --with-unixodbc \
 --with-ssh2 \
 --with-openipmi \
 --with-openssl 
#安装
make install
2.5,编辑配置文件
cp /usr/local/zabbix_proxy/etc/zabbix_proxy.conf{,.bak}
cat >/usr/local/zabbix_proxy/etc/zabbix_proxy.conf<<\EOF
Server=10.135.81.4				#zabbix-server的地址 
ServerPort=10051
Hostname=XXXXX                  #主机名
LogFile=/usr/local/zabbix_proxy/logs/zabbix_proxy.log
LogFileSize=1			        #日志文件超过 1M 就进行切割。值为 0时表示不切割日志。 默认为 1
PidFile=/usr/local/zabbix_proxy/zabbix_proxy.pid
SocketDir=/usr/local/zabbix_proxy
DebugLevel=3
DBHost=10.135.82.3				#数据库主机
DBName=zabbix_proxy				#数据库用户名
DBUser=zabbix_proxy				#数据库用户名
DBPassword=Zbxpass@2023			#数据库密码
DBPort=3306						#数据库端口
DBSocket=/data/3306/dbdata/mysql.sock
ConfigFrequency=60
StartPollers=50
Timeout=30						#指定时间内,agent没把监控项的数据返回则超时
LogSlowQueries=3000
StartDiscoverers=5
CacheSize=4G						#保存监控项而占用的最大内存
HistoryCacheSize=1G				#历史数据缓存大小;尽量大的分配空间
StartPollersUnreachable=20
UnreachablePeriod=60
DataSenderFrequency=70		#主动模式下,proxy间隔多长时间向server发送数据;单位秒,范围1-3600
EOF 
2.6,授权
chown -R zabbix.zabbix /usr/local/zabbix_proxy
2.7,添加启动项,并启动
cat >/usr/lib/systemd/system/zabbix-proxy.service<<\EOF
[Unit]
Description=Zabbix Proxy
After=syslog.target
After=network.target

[Service]
User=zabbix
Group=zabbix
Environment="CONFFILE=/usr/local/zabbix_proxy/etc/zabbix_proxy.conf"
Type=forking
Restart=on-failure
PIDFile=/usr/local/zabbix_proxy/zabbix_proxy.pid
KillMode=control-group
ExecStart=/usr/local/zabbix_proxy/sbin/zabbix_proxy -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
TimeoutSec=0

[Install]
WantedBy=multi-user.target

EOF
#加载
systemctl daemon-reload
#启动
systemctl start zabbix-proxy
#开机自启
systemctl enable zabbix-proxy
systemctl status zabbix-proxy
2.8,在页面配置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux下zabbix_proxy实施部署 的相关文章

  • vue数据双向绑定

    5 Vue数据双向绑定 5 1 什么是双向数据绑定 Vue js 是一个 MVVM 框架 xff0c 即数据双向绑定 xff0c 即当数据发生变化的时候 xff0c 视图也就发生变化 xff0c 当视图发生变化的时候 xff0c 数据也会跟
  • Nmap入门到高级【第九章】

    预计更新 Nmap基础知识 1 1 Nmap简介和历史 1 2 Nmap安装和使用方法 1 3 Nmap扫描技术和扫描选项 Nmap扫描技术 2 1 端口扫描技术 2 2 操作系统检测技术 2 3 服务和应用程序检测技术 2 4 漏洞检测技
  • QEMU-IMG命令详解

    qemu img是QEMU的磁盘管理工具 xff0c 在qemu kvm源码编译后就会默认编译好qemu img这个二进制文件 qemu img也是QEMU KVM使用过程中一个比较重要的工具 xff0c 本节对其用法和实践使用方法进行介绍
  • 麒麟系统开机自启的实现方式

    方法 xff1a 利用Linux的 desktop文件实现开机启动 xff0c desktop文件位于在 etc xdg autostart目录下 举例 在 etc xdg autostart 目录下建立一个 test desktop文件
  • ifconfig与 ip addr命令详细

    文章目录 前言一 如何查看机器的IP地址二 网卡信息详解1 网卡名称2 网络设备状态标识3 IP地址4 MAC地址 三 ifconfig与 ip addr区别 前言 本文记录在linux系统下如何查看ip信息 网卡状态等信息以及简要说明if
  • Linux网卡ifcfg网卡配置项详解

    前言 由于在工作中涉及到服务器网卡的适配 xff0c 算是linux新手 xff0c 本次记录下linux网卡ifcfg exx配置项含义说明 xff0c 以下是某款终端下centos 7 5系统自动生成的网卡配置内容 xff1a span
  • Determining IP information for eth问题解决

    前言 在Linux网卡ifcfg网卡配置项详解文章中提到一个BOOTPROTO 61 配置项 它的意思是指网卡启动时获取ip的方式 xff0c 可以是dhcp或者静态ip 方式 xff0c 如果设置为none说明是不指定ip设置方式 一 问
  • 关于vector大小(size)和容量(capacity)总结

    操作大小的函数 在Vector容器中有以下几个关于大小的函数 方法效果size 返回容器的大小empty 判断容器是否为空max size 返回容器最大的可以存储的元素capacity 返回容器当前能够容纳的元素数量 例子一 xff1a 该
  • inet_addr 和inet_ntoa函数作用

    我们使用socket进行通信的时候 xff0c 我们需要指定三个元素 xff1a 通信域 xff08 地址族 xff09 IP地址 端口号 xff0c 这三个元素由SOCKADDR IN结构体定义 xff0c 为了简化编程一般将IP地址设置
  • visual studio中头文件和库文件路径设置

    在程序开发中 xff0c 很多时候需要用到别人开发的工具包 xff0c 如OpenCV和itk 一般而言 xff0c 在vs中 xff0c 很少使用源文件 xff0c 大部分是使用对类进行声明的头文件和封装了类的链接库 xff08 静态li
  • LNK2001: 无法解析的外部符号的几种情况

    一般来说 xff0c 我们引用第三方库时 xff0c 需要进行指定依赖项配置 xff0c 若没有进行相关配置 xff0c 则编译器会出现 LNK2001 无法解析的外部符号 错误 这个是最常见的问题 xff0c 具体步骤 xff1a 项目
  • JMeter

    Apache JMeter 压力测试工具 一 什么是Apache JMeter Apache JMeter 是 Apache 组织基于 Java 开发的压力测试工具 xff0c 用于对软件做压力测试 JMeter 最初被设计用于 Web 应
  • C++11向线程函数传递参数

    template span class token operator lt span class Function span class token punctuation span class span class token punct
  • C++11之std::future对象使用说明

    std future介绍 在前面几篇文章中基本都用到thread对象 xff0c 它是C 43 43 11中提供异步创建多线程的工具 但是我们想要从线程中返回异步任务结果 xff0c 一般需要依靠全局变量 xff1b 从安全角度看 xff0
  • delete 和 delete[]真正区别

    我们通常从教科书上看到这样的说明 xff1a delete 释放new分配的单个对象指针指向的内存 delete 释放new分配的对象数组指针指向的内存 那么 xff0c 按照教科书的理解 xff0c 我们看下下面的代码 xff1a spa
  • Activity的onNewIntent

    一个应用的Activity可供多种方式调用启动 xff0c 当多个调用希望只有一个Activity的实例存在 xff0c 并且还要区分是被谁启动或是已经启动被谁拉到前台来的 xff0c 这就需要Activity的onNewIntent In
  • at 与 crontab调度命令详解

    目录 1 At调度 只执行一次 1 1准备任务 xff1a 查看at服务是否开启 1 2绝对时间定制任务 1 3相对时间定制任务 1 4查看at进程 1 5删除at任务 2 crontab调度 可重复执行 2 1简述 2 2crontab调
  • [计算机网络] --- STP (下篇) 工作原理及配置

    文章目录 前言一 stp工作原理二 stp计算过程 工作步骤1 选举根桥2 选举根端口3 选举指定端口4 确立阻塞端口 三 例题 xff1a 前言 上一篇文章我们介绍了stp的起源和一些相关术语 xff0c 接下来我们就正式开始介绍stp的
  • iOS富文本实现(一):私密阅读效果

    废话不多说 xff0c 咱们直接先看效果 xff01 看是不是咱想要的哈 目录 xff1a 一 前言 xff1a 二 核心需求说明 三 实现效果核心代码片段 四 几个注意的小细节 一 前言 xff1a 我的第一篇CSDN文章就这样发布了 x
  • 登录 注册 servlet基础

    工具类 页面与数据库的交换 span class token keyword package span org span class token punctuation span lizhenhua span class token pun

随机推荐

  • 解决Ubuntu开机之后不显示桌面图标,只显示桌面文件的问题

    Ubuntu开机之后不显示桌面图标 xff08 指左侧那一栏 xff09 xff0c 但桌面上的文件可以使用 xff0c 鼠标可以使用 鼠标右键 gt 打开终端 xff1b xff08 如果鼠标不能使用 xff0c 按ctl 43 alt
  • yii2中登录后跳转回登录前请求的页面

    yii2中登录后跳转回登录前请求的页面 作者 php 发布时间 2017 06 16 浏览 1030次 转发请备注原文地址 xff1a www niwoxuexi com blog php article 158 html yii2中登录后
  • Gateway

    Gateway SpringCloud微服务网关组件 一 Spring Cloud Gateway简介 1 为什么要用Gateway xff1f 在微服务架构中 xff0c 通常一个系统会被拆分为多个微服务 xff0c 微服务之间的调用可以
  • Android(安卓)时间戳和日期之间的转化

    注 xff1a 转发请注明原地址 xff1a https www niwoxuexi com blog android article 170 在Android开发过程中 xff0c 经常会遇到日期的各种格式转换 xff0c 主要使用Sim
  • 如何判断Activity是否在前台显示

    转发请备注原文地址 xff1a https www niwoxuexi com blog android00 article 223 html 我们在Android开发过程中 xff0c 经常会判断Activity是否在前台显示 xff0c
  • Android 获取cache缓存的目录路径

    转发请备注原文地址 xff1a https www niwoxuexi com blog android00 article 224 html Android开发中 xff0c 有时需要知道cache缓存的路径 我写了一个静态类 xff0c
  • objc[8715]: Class JavaLaunchHelper is implemented in both...

    在Mac上 xff0c 升级IntelliJ Idea 2017 01后 xff0c 运行的时候出现了一个红色的警告 xff1a objc 8715 Class JavaLaunchHelper is implemented in both
  • mac上使用dex2jar遇到的权限问题的解决

    本文来自 xff1a https www niwoxuexi com blog android article 235 html 摘要 在dex2jar目录下执行sudo sh d2j dex2jar sh classes dex时报错如下
  • Android Studio将module变为library

    本文来源你我学习网 xff1a 地址 https www niwoxuexi com blog android article 244 html 我们在开发的时候如在在Android Studio中的module打包成library方便模块
  • Navicat Premium实现mysql数据库备份/还原

    转发请备注原文地址 xff1a https www niwoxuexi com blog php article 161 htm Navicat Premium 是一个非常好用的数据库 xff08 支持 MySQL SQLite Oracl
  • 在vue中获取dom元素

    转发请备注原文链接地址 xff1a https www niwoxuexi com blog web article 307 html 在vue中经常会通过js操作dom对象 xff0c 可以通过给标签添加ref属性实现 xff0c 下面通
  • HIVE总结

    一 xff1a hive作用 Hive是基于Hadoop的一个数据仓库工具 xff0c 可以将结构化的数据文件映射为一张表 xff0c 并提供类SQL 查询功能 Hive本质 xff1a 将HQL转化成MapReduce程序 xff08 1
  • 微软2014校园招聘笔试题

  • Seata

    Seata 微服务分布式事务组件 一 什么是分布式事务 1 什么是事务 事务指的是一个操作单元 xff0c 在这个操作单元中的所有操作最终要保持一致的行为 xff0c 要么所有操作都成功 xff0c 要么所有的操作都被撤销 2 本地事务 本
  • 测试用例优先级与三轮测试的结合

    测试用例优先级与三轮测试的结合 发布时间 2009 7 10 15 01 作者 meizhu 来源 Taobao QA Team 字体 小 中 大 上一篇 下一篇 打印 我要投稿 每周一问 xff0c 答贴有奖 测试用例优先级 三轮测试 x
  • Windows 10 家庭中文版,电脑文件夹背景、Word背景全变成黑色的解决方案

    电脑桌面空白处点击鼠标右键 gt 个性化 gt 颜色 xff1b 在 选择颜色 下拉菜单中选择 浅色 选项 这样 xff0c 电脑文件夹的背景和其他界面颜色就都回归了正常的亮白色
  • AbstractApplicationContext.refresh()方法

    refresh public void refresh throws BeansException IllegalStateException synchronized this startupShutdownMonitor 准备好刷新上下
  • HBase StoreFile原理总结

    HBase StoreFile原理总结 1 StoreFile是什么 在hbase架构设计中 xff0c 本身hbase基于hdfs进行数据存储 同时为了提升效率 xff0c 数据会有一个memstore block cache来做数据缓存
  • ubuntu设置关机时自动执行任务

    背景说明 本机环境 xff1a ubuntu16 04 需求 本机关机时调用远程服务用来记录日志等操作 systemd说明 ubuntu16 04采用的是systemd作为系统管理的子系统 xff0c 关于systemd的更多说明 xff0
  • Linux下zabbix_proxy实施部署

    简介 zabbix proxy 可以代替 zabbix server 收集性能和可用性数据 然后把数据汇报给 zabbix server 并且在一定程度上分担了zabbix server 的压力 zabbix agent可以指向多个prox