当前位置: 首页 > news >正文

在Centos7.9上安装配置zabbix proxy保姆级教程

一、基础环境介绍

基础环境规划
序号基础环境规划版本
1系统CentOS-7-x86_64-DVD-2009
2zabbix-proxy6.0LTS
3mysqlmysql-8.4.6-linux-glibc2.17-x86_64.tar.xz 
#1-查看系统版本信息命令
cat /etc/os-release#2-查看系统当前的内核版本信息
uname -a

Linux 内核介绍_内核版本前的( )表示该版本是长期支持的版本https://blog.csdn.net/xiaochenXIHUA/article/details/116504047

二、安装配置zabbix proxy

 2.1、安装mysql

​#安装部署Mysql官方的MySQL8.4.6二进制包实操流程#0-查看自己系统当前的glibc版本(然后根据自己系统当前的glibc版本去下载对应的mysql二进制包)
rpm -qa | grep glibc#1-下载Mysql的二进制压缩包到本地的/data目录中,且支持断点续传(下载与自己系统当前的glibc版本去下载对应的mysql二进制包【如:gblibc2.17】)
wget https://cdn.mysql.com/archives/mysql-8.4/mysql-8.4.6-linux-glibc2.17-x86_64.tar.xz  -c 0 -P /data#2-进入/data目录解压下载好的Mysql二进制压缩包到指定目录【/usr/local/mysql】(之所以要解压到/usr/local目录下是由于二进制版本的很多编译环境都在该目录下)
cd /data
tar -xvf mysql-8.4.6-linux-glibc2.17-x86_64.tar.xz -C /usr/local/mysql/#3-进入/usr/local/mysql目录中修改文件名称为【mysql-8.4.6】且进入该目录下创建data、etc、logs文件夹
cd /usr/local/mysql/
mv mysql-8.4.6-linux-glibc2.17-x86_64 mysql-8.4.6
cd mysql-8.4.6/
mkdir -p {data,etc,logs}#4-创建Mysql的服务用户mysql
useradd mysql
id mysql#5-进入mysql的etc目录下创建配置文件【my.cnf】
cd /usr/local/mysql/mysql-8.4.6/etc
vi my.cnf
#5.1-【/usr/local/mysql/mysql-8.4.6/etc/my.cnf】文件完整内容
[mysqld]
#指定mysql的数据存放路径
datadir=/usr/local/mysql/mysql-8.4.6/data
socket=/tmp/mysql.sock
#指定mysql的报错日志文件
log-error=/usr/local/mysql/mysql-8.4.6/logs/mysqld-error.log
pid-file=/usr/local/mysql/mysql-8.4.6/logs/mysqld.pid
port=13336
user=mysql
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
#默认时区(东八区)
default-time-zone='+8:00'
#数据库日志时间匹配系统时区
log_timestamps=system
#表名和字段名不区分大小写
lower_case_table_names=1
mysql_native_password=ON#6-将mysql文件夹及其内容都授权给mysql用户并初始化(注意:初始化后没有任何信息提示表示初始化成功,否则就是有问题的)
chown -R mysql:mysql /usr/local/mysql/mysql-8.4.6
/usr/local/mysql/mysql-8.4.6/bin/mysqld  --defaults-file=/usr/local/mysql/mysql-8.4.6/etc/my.cnf --initialize --user=mysql #7-手动启用mysql服务测试(如可以指定默认的配置文件【 --defaults-file=/usr/local/mysql/mysql-8.4.6/etc/my.cnf】)
/usr/local/mysql/mysql-8.4.6/bin/mysqld_safe --defaults-file=/usr/local/mysql/mysql-8.4.6/etc/my.cnf#8-查看日志文件获取临时密码(复制一份临时密码用于登录和修改密码)
cd /usr/local/mysql/mysql-8.4.6/logs/
tail -f mysqld-error.log#9-使用root账号临时密码登录mysql数据库后修改密码后退出(查看是否可以登录进去,可登录则表示成功)
/usr/local/mysql/mysql-8.4.6/bin/mysql -uroot -p
alter user 'root'@'localhost' identified by 'abc123456';
flush privileges;
quit;#10-查看mysql的进程、网络端口内容(查看到对应的mysql进程与网络端口与我们配置的一致表示正常;确认正常后即可杀死该进程)
ps -ef | grep mysql
netstat -antlp | grep mysql#11-配置mysql的服务并启动和设置开机自启
vi /etc/systemd/system/mysqld.service
#11.1-【/etc/systemd/system/mysqld.service】文件内容
[Unit]
Description=MySQL Server 8.4.6
After=network.target[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/mysql-8.4.6/bin/mysqld_safe --defaults-file=/usr/local/mysql/mysql-8.4.6/etc/my.cnf
ExecReload=/bin/kill -HUP $MAINPID
ExecStop=/bin/kill -TERM $MAINPID
Restart=on-failure[Install]
WantedBy=multi-user.target#11.1-重载所有服务
systemctl daemon-reload#11.2-启动mysql服务
systemctl start mysqld.service#11.3-查看mysql服务状态
systemctl status mysqld.service#11.4-设置mysql服务开机自启
systemctl enable mysqld.service #11.5-停止mysql服务
systemctl stop mysqld.service#12-可以重启Linux后查看mysql服务状态看它是否开机重启
reboot now
systemctl status mysqld.service
​

到这里恭喜你,在centos7.9上安装配置mysql完成。

全网最全的关系型数据库MySQL解析及其安装部署的保姆级教程https://coffeemilk.blog.csdn.net/article/details/151891095

        注意:当在centos7.9系统中初始化mysql提示“

/lib64/libstdc++.so.6: version `CXXABI_1.3.11' not found (required by /usr/local/mysql/mysql-8.4.6/bin/mysqld)

/lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /usr/local/mysql/mysql-8.4.6/bin/mysqld)

/lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /usr/local/mysql/mysql-8.4.6/bin/mysqld)

/lib64/libstdc++.so.6: version `GLIBCXX_3.4.22' not found (required by /usr/local/mysql/mysql-8.4.6/bin/mysqld)

 /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /usr/local/mysql/mysql-8.4.6/bin/mysqld)

/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /usr/local/mysql/mysql-8.4.6/bin/mysqld)”时是因为我们当前安装的mysql的二进制glibc的版本与当前系统已有的版本不符合导致的,最简单的办法就是重新下载契合自己当前系统glibc版本的mysql二进制安装包文件进行安装。

#查看自己系统当前的glibc版本的命令是
rpm -qa | grep glibc

        注意:在创建用户时提示“ERROR 1524 (HY000): Plugin 'mysql_native_password' is not loaded”的两种解决方法,如下所示:

#解决【ERROR 1524 (HY000): Plugin 'mysql_native_password' is not loaded】问题方法
#方法一:直接使用默认的 caching_sha2_password 插件【这是推荐的方法,因为 caching_sha2_password 提供了更高的安全性和性能】
CREATE USER zabbix@localhost identified by 'zabbix123';#方法二:启用 mysql_native_password 插件(不推荐)如果你必须使用 mysql_native_password 插件,可以手动启用它,但不建议在最新版本中使用。
vi /usr/local/mysql/mysql-8.4.6/etc/my.cnf
#在 [mysqld] 部分添加如下内容
mysql_native_password=ON
#重启mysqld服务后重新创建该用户即可成功
CREATE USER zabbix@localhost identified WITH mysql_native_password by 'zabbix123';

 2.2、安装zabbix-proxy

#在Centos7.9上安装配置zabbix proxy的实操流程:#1-到【https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/】上下载zabbix的安装源【zabbix-release-latest.el7.noarch.rpm】并安装部署
wget https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-release-latest.el7.noarch.rpm -c o -P /data
cd /data
rpm -ivh zabbix-release-latest.el7.noarch.rpm#2-手动方式:下载安装zabbix-proxy-mysql、zabbix-sql-scripts、zabbix-agent2
wget https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-proxy-mysql-6.0.39-release1.el7.x86_64.rpm -c o -P /data
wget https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-sql-scripts-6.0.39-release1.el7.noarch.rpm -c o -P /data
wget https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-agent2-6.0.39-release1.el7.x86_64.rpm -c o -P /datayum install -y epel-release
yum install fping OpenIPMI unixODBC -y
wget https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-agent2-plugin-mongodb-6.0.39-release1.el7.x86_64.rpm -c o -P /data
wget https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-agent2-plugin-postgresql-6.0.39-release1.el7.x86_64.rpm -c o -P /data
rpm -ivh zabbix-proxy-mysql-6.0.39-release1.el7.x86_64.rpm
rpm -ivh zabbix-sql-scripts-6.0.39-release1.el7.noarch.rpm
rpm -ivh zabbix-agent2-plugin-mongodb-6.0.39-release1.el7.x86_64.rpm
rpm -ivh zabbix-agent2-plugin-postgresql-6.0.39-release1.el7.x86_64.rpm
rpm -ivh zabbix-agent2-6.0.39-release1.el7.x86_64.rpm#2-yum在线方式:下载安装zabbix-proxy-mysql、zabbix-sql-scripts、zabbix-agent2【yum install zabbix-proxy-mysql zabbix-sql-scripts zabbix-agent2 -y】
yum install zabbix-proxy-mysql-6.0.42 zabbix-sql-scripts-6.0.42 zabbix-agent2-6.0.42 -y#3-安装部署mysql数据库(详细操作请参考【​安装部署Mysql官方的MySQL8.4.6二进制包实操流程】)#4-数据库安装完成后,进入数据库,创建zabbix-proxy需要的库和用户
/usr/local/mysql/mysql-8.4.6/bin/mysql -uroot -p
create database zabbix character set utf8mb4 collate utf8mb4_bin;
create user zabbix@localhost identified with mysql_native_password by 'zabbix123';
grant all privileges on zabbix.* to zabbix@localhost;
set global log_bin_trust_function_creators = 1;
select user,plugin from mysql.user;
flush privileges;
show grants for 'zabbix'@'localhost';
quit;#5-在mysql数据库中将zabbix-proxy所需的库与用户创建完成后,将proxy表内容导入到数据库中
cat /usr/share/zabbix-sql-scripts/mysql/proxy.sql | /usr/local/mysql/mysql-8.4.6/bin/mysql --default-character-set=utf8mb4 -uzabbix -p 'zabbix'#6-再次登录到mysql8.4.6数据库中禁用log_bin_trust_function_creators
/usr/local/mysql/mysql-8.4.6/bin/mysql -uroot -p
set global log_bin_trust_function_creators = 0;
quit;

  2.2.1、直接下载对应版本包安装zabbix-proxy

        注意:在安装【 zabbix-proxy-mysql-6.0.39-release1.el7.x86_64.rpm】提示“错误:依赖检测失败:
        fping 被 zabbix-proxy-mysql-6.0.39-release1.el7.x86_64 需要
        libOpenIPMI.so.0()(64bit) 被 zabbix-proxy-mysql-6.0.39-release1.el7.x86_64 需要
        libOpenIPMIposix.so.0()(64bit) 被 zabbix-proxy-mysql-6.0.39-release1.el7.x86_64 需要
        libodbc.so.2()(64bit) 被 zabbix-proxy-mysql-6.0.39-release1.el7.x86_64 需要”时是因为缺失了fping OpenIPMI unixODBC库;
我们安装一下这些依赖库即可,安装这三个依赖库的命令是【yum install fping OpenIPMI unixODBC -y】。

        注意:在安装【zabbix-agent2-6.0.39-release1.el7.x86_64.rpm 】提示“错误:依赖检测失败:
        zabbix-agent2-plugin-mongodb 被 zabbix-agent2-6.0.39-release1.el7.x86_64 需要
        zabbix-agent2-plugin-postgresql 被 zabbix-agent2-6.0.39-release1.el7.x86_64 需要”时是因为还需要先下载安装mongodb postgresql这两个插件包,然后才能安装。

        注意:在将proxy表导入到库中时提示:

《1》“ERROR 1046 (3D000) at line 1: No database selected”时,是需要登录到数据库中检查全局的【 SHOW VARIABLES LIKE 'log_bin_trust_function_creators';】这个内容是否为ON,若不为ON则需要临时打开【set global log_bin_trust_function_creators = 1;】。

《2》“ERROR 1044 (42000): Access denied for user 'zabbix'@'localhost' to database 'zabbix'”时,先查看是否给指定的用户(如:'zabbix'@'localhost')授予了权限【show grants for 'zabbix'@'localhost';】且刷新了这个权限让权限生效【flush privileges;】若权限没有则先刷新,刷新后还是没有则再次授权后刷新再次重试即可解决。

关系数据库MySQL的常用基础命令详解实战https://coffeemilk.blog.csdn.net/article/details/151959864

  2.2.2、使用yum在线安装zabbix-proxy

        使用yum在线方式:下载安装zabbix-proxy-mysql、zabbix-sql-scripts、zabbix-agent2的详细操作如下图所示

 2.3、配置zabbix-proxy

修改安装了zabbix-proxy服务器上的【/etc/zabbix/zabbix_proxy.conf】配置文件,修改内容如下:

#修改zabbix-proxy的配置文件内容
#1-进入zabbix-proxy的配置文件【zabbix_proxy.conf】路径并编辑
cd /etc/zabbix/
vi zabbix_proxy.conf#2-编辑【zabbix_proxy.conf】文件的内容如下(其中Server后面的IP地址为zabbix-server的IP地址)
Server=192.168.1.30
Hostname=shanghai-proxy
DBHost=127.0.0.1
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix123
DBPort=13336#3-启动zabbix-proxy并查看其所占用的网络端口和进程信息
systemctl restart zabbix-proxy.service
netstat -antlp | grep zabbix_proxy
ps -ef | grep zabbix_proxy#4-设置zabbix-agent2开机自启
systemctl enable zabbix-proxy.service

 2.4、配置agent2

#1-进入zabbix-agent2的配置文件路径编辑zabbix_agent.conf文件
cd /etc/zabbix/
vi zabbix_agent2.conf#2-zabbix-agent2的配置文件【/etc/zabbix/zabbix_agent.conf】需修改的内容如下:#zabbix agentd日志文件路径
LogFile=/var/log/zabbix/zabbix_agent2.log
#指定zabbix server端IP地址
Server=192.168.65.129
#指定启动agentd进程的数量,默认是3个,设置为0,表示关闭agentd的被动模式(zabbix server主动来agent拉取数据)  
StartAgents=3
#启用agentd的主动模式(zabbix agent主动推送数据到zabbix server),启动主动模式后,agentd将主动将收集到的数据发送到zabbix server端,ServerActive后面指定的ip就是zabbix server端IP    
ServerActive=192.168.65.129
#需要监控服务器的主机名或者IP地址,此选择的设置一定要和zabbix web端主机配置中对应的主机名一致。 
Hostname=192.168.65.130
#相关配置都可以放到此目录下,自动生效
Include=/etc/zabbix/zabbix_agentd.d/
#启用agent端自定义item功能,设置此参数为1后,就可以使用UserParameter指令了。UserParameter用于自定义监控项。
UnsafeUserParameters=1#3-启动zabbix-agent2并查看其所占用的网络端口和进程信息
systemctl restart zabbix-agent2.service
netstat -antlp | grep zabbix_agent2
ps -ef | grep zabbix_agent2#4-设置zabbix-agent2开机自启
systemctl enable zabbix-agent2.service

 2.5、在zabbix-server中添加zabbix-proxy

        打开zabbix的web界面选择左侧的导航栏【管理】-->【Proxy】-->右上角【创建Proxy】-->在弹出的配置界面输入【Proxy名称为【shanghai-proxy】、Proxy模式为【主动式】】-->【添加】即可,详细操作如下:

#查看zabbix-proxy的运行日志(可用于定位问题并排查解决)
tail -f /var/log/zabbix/zabbix_proxy.log 

  2.6、在zabbix-server的web界面添加proxy主机下的主机监控

        打开zabbix的web界面选择左侧的导航栏【配置(或者:数据采集)】-->【主机】-->【创建主机】-->【主机】的模块界面下根据提示选择输入【主机的名称(如:192.168.65.130)、模板(Linux by Zabbix agent)、群组(Linux servers)、接口(添加Agent(192.168.65.130)连接到IP端口是10050)、由Proxy代理程序监测(shanghai-proxy)、勾选已启用】-->【添加】;然后等待一会查看该新增的被监控主机是否可用,可用了则表示配置成功了,详细操作如下图所示:

        注意:当我们在zabbix-proxy所在主机上查看日志【tail -f /var/log/zabbix/zabbix_proxy.log】时,提示“ 8179:20251107:220355.502 cannot send list of active checks to "192.168.65.130": host [192.168.65.130] not found”错误信息,也就是说与zabbix-proxy所在同一网段的设备无法发现连接【解决方法是检查被监控端的zabbix-agent2的配置文件(/etc/zabbix/zabbix_agent2.conf)下的【Hostname是否只有一个,只保留配置了agent2所在主机IP内容的那个,其余删除】后保存退出】然后重启zabbix-agent2服务【systemctl restart zabbix-agent2.service】同理关于【zabbix-proxy的配置文件【vi /etc/zabbix/zabbix_proxy.conf】【vi /etc/zabbix/zabbix_agent2.conf】都检查一遍后重启服务】即可解决这个问题,这样在zabbix-server的web界面上就能够看到主机可用了,如下图所示:

修改后的效果如下图所示:

三、其他资料

解决MySQL8.0及其更高版本的两个安全问题——及其配置MySQL实现SSL/TLS加密通信、caching_sha2_password通信_mysql 8.0 ssl-CSDN博客https://blog.csdn.net/xiaochenXIHUA/article/details/152812136使用dnf/yum方式在线安装部署zabbix 7.0 LTS监控平台_yum安装部署zabbix 7.0教程-CSDN博客https://coffeemilk.blog.csdn.net/article/details/153268109

http://www.dtcms.com/a/581095.html

相关文章:

  • 万能近似定理:神经网络「拟合万物」的理论基石
  • autofs自动挂载
  • 微软TinyTroupe“人格”模拟库:AI智能体市场调研-V3版本(五)
  • Opencv(九) : 图像旋转
  • 关键词解释:DAG 系统(Directed Acyclic Graph,有向无环图)
  • 【Linux】基础开发⼯具
  • 那些网站可以给产品做推广个人网站备案填写
  • 现代汽车确认遭遇数据泄露, 攻击者连续窃密9天获取用户驾照信息
  • 如何进行数据脱取
  • 将linux操作系统装入U盘20251107
  • 工业级部署指南:在西门子IOT2050(Debian 12)上搭建.NET 9.0环境与应用部署
  • ​AI大模型时代下的全栈技术架构:从深度学习到云原生部署实战
  • 手机版网站推荐银川网站建设哪家不错
  • maven与springBoot环境配置
  • C++程序设计实验(黑龙江大学)
  • 全屋智能家居定制小程序
  • 做电影网站需多大的空间网站建设意义
  • 拓普建站推广wordpress域名变更
  • 深度学习从入门到精通(一):深度学习的分类
  • 进制转换--c
  • opencv 学习: 05 像素操作
  • Mamba YOLO: 基于状态空间模型的目标检测简单基线
  • Java 大视界 --Java 大数据在智慧农业农产品市场价格预测与种植决策支持中的应用实战
  • K8s的标签应用和调度
  • 如何应用动作捕捉技术让户外重体力工作更安全
  • rust中的Cargo.toml文件
  • PD快充诱骗芯片 XSP15 支持获取快充电压可与外部MCU共用D+D-网络与电脑传输数据
  • 蓝牙钥匙 第58次 蓝牙钥匙交互反馈设计:构建多感官无缝用户体验
  • spiderdemo第22题与webassembly的跨域
  • 【MySQL | 基础】通用语法及SQL分类