首页 星云 工具 资源 星选 资讯 热门工具
:

PDF转图片 完全免费 小红书视频下载 无水印 抖音视频下载 无水印 数字星空

Zabbix搭建

编程知识
2024年08月02日 15:09

目录

zabbix搭建

简介

Zabbix 是一个开源的监控解决方案,用于监控各种网络服务、服务器和其他网络硬件。它能够采集各类监控数据,并提供强大的报警和报告功能。

1. 前置环境准备

我们采用编译安装的方式,需要提前准备好一个LNMP或者LAMP的环境

1.1 搭建LNMP

[root@oe01 ~]# yum install nginx php php-fpm -y

默认安装完之后php-fpm是采用socker通信的。我们将他修改为监听9000端口

[root@oe01 ~]# vim /etc/php-fpm.d/www.conf
38 listen = /run/php-fpm/www.sock
39 listen = 127.0.0.1:9000
[root@oe01 ~]# systemctl restart php-fpm

多添加一行即可,安装完php之后他会默认帮我们产生2个nginx的配置文件,我们不用他的。将他改名

[root@oe01 ~]# mv /etc/nginx/conf.d/php-fpm.conf /etc/nginx/conf.d/php-fpm.conf.bak
[root@oe01 ~]# mv /etc/nginx/default.d/php.conf /etc/nginx/default.d/php.conf.bak

然后我们重新编写一个nginx的配置文件

[root@oe01 ~]# cp /etc/nginx/nginx.conf.default /etc/nginx/nginx.conf
cp: overwrite '/etc/nginx/nginx.conf'? y
[root@oe01 ~]# vim /etc/nginx/nginx.conf
 43         location / {
 44             root   /data/zabbix;
 45             index  index.php index.html index.htm;
 46         }

 65         location ~ \.php$ {
 66             root           /data/zabbix;
 67             fastcgi_pass   127.0.0.1:9000;
 68             fastcgi_index  index.php;
 69             fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
 70             include        fastcgi_params;
 71         }

你的行号跟我的可能不太一样,大概是这些内容。然后重启nginx

[root@oe01 ~]# mkdir -p /data/zabbix
[root@oe01 ~]# systemctl restart nginx

接下来自行去测试php是否可以正常解析。如果可以那我们的LNMP环境就搭建完成了。接下来开始搭建监控。如果解析不了注意看网站根目录是在/data/zabbix,不要放错地方了

2. zabbix准备工作

现在我们开始安装php模块

2.1 安装php模块以及编译所需工具

root@oe01 ~]# yum install php-gd php-mbstring php-bcmath php-xml php-ldap php-mysqlnd 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 gcc make -y

2.2 修改php配置

默认的php配置是无法让zabbix正常运行的,所以我们需要修改一下

[root@oe01 ~]# sed -i "s/post_max_size = 8M/post_max_size = 16M/g" /etc/php.ini
[root@oe01 ~]# sed -i "s/max_execution_time = 30/max_execution_time = 300/g" /etc/php.ini
[root@oe01 ~]# sed -i "s/max_input_time = 60/max_input_time = 300/g" /etc/php.ini
[root@oe01 ~]# systemctl restart php-rpm

这几个配置必须改,因为不改的话等会安装的时候会过不了环境检测的

2.3 编译安装zabbix

2.3.1 下载tar包

[root@oe01 opt]# wget https://cdn.zabbix.com/zabbix/sources/oldstable/6.2/zabbix-6.2.8.tar.gz
[root@oe01 opt]# ls zabbix-6.2.8.tar.gz 
zabbix-6.2.8.tar.gz

2.3.2 解压

[root@oe01 opt]# tar -zxvf zabbix-6.2.8.tar.gz

2.3.3 创建用户/组

[root@oe01 opt]# groupadd --system zabbix
[root@oe01 opt]# useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix User" zabbix

2.3.4 开始安装

[root@oe01 zabbix-6.2.8]# ./configure --sysconfdir=/etc/zabbix --enable-server --enable-agent --with-mysql --with-ssh2 --with-zlib --with-libpthread --with-libevent --with-libpcre --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi --with-openssl --with-ldap

等待执行完成,如果有报错检查一下之前安装的东西是不是缺什么

正常执行完之后应该是这样的

***********************************************************
*            Now run 'make install'                       *
*                                                         *
*            Thank you for using Zabbix!                  *
*              <http://www.zabbix.com>                    *
***********************************************************

然后我们执行make install

[root@oe01 zabbix-6.2.8]# make install
Making install in misc
make[1]: Entering directory '/opt/zabbix-6.2.8/misc'
make[2]: Entering directory '/opt/zabbix-6.2.8/misc'
make[2]: Nothing to be done for 'install-exec-am'.
make[2]: Nothing to be done for 'install-data-am'.
make[2]: Leaving directory '/opt/zabbix-6.2.8/misc'
make[1]: Leaving directory '/opt/zabbix-6.2.8/misc'
make[1]: Entering directory '/opt/zabbix-6.2.8'
make[2]: Entering directory '/opt/zabbix-6.2.8'
make[2]: Nothing to be done for 'install-exec-am'.
make[2]: Nothing to be done for 'install-data-am'.
make[2]: Leaving directory '/opt/zabbix-6.2.8'
make[1]: Leaving directory '/opt/zabbix-6.2.8'

执行完成是这样的

2.3.5 配置数据库

前面我们没有提到数据库的安装,因为LNMP里面的M就是MySQL/Mariadb,所以你自行安装就可以了,我还是安装一下吧

[root@oe01 zabbix-6.2.8]# yum remove mariadb-server  # 这一步不用执行,我是为了还原数据库
[root@oe01 zabbix-6.2.8]# yum install mariadb-server 
[root@oe01 zabbix-6.2.8]# systemctl restart mariadb
[root@oe01 zabbix-6.2.8]# mysql_secure_installation

完成初始化之后登录数据库

[root@oe01 zabbix-6.2.8]# mysql -uroot -p
MariaDB [(none)]> create database zabbix charset utf8 collate utf8_bin;
Query OK, 1 row affected (0.000 sec)
MariaDB [(none)]> create user 'zabbix'@'%' identified by '123';
Query OK, 0 rows affected (0.001 sec)
MariaDB [(none)]> grant all on zabbix.* to 'zabbix'@'%';
Query OK, 0 rows affected (0.001 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.000 sec)

接下来导入数据到数据库

[root@oe01 zabbix-6.2.8]# cd database/mysql/
[root@oe01 mysql]# mysql -uroot -p123 zabbix < schema.sql 
[root@oe01 mysql]# mysql -uroot -p123 zabbix < images.sql 
[root@oe01 mysql]# mysql -uroot -p123 zabbix < data.sql 
[root@oe01 mysql]# mysql -uroot -p123 zabbix < double.sql 
[root@oe01 mysql]# mysql -uroot -p123 zabbix < history_pk_prepare.sql

注意顺序不要错。错了会导入失败报错的

到这里,zabbix的准备工作全部完成

3. 配置zabbix

3.1 修改配置文件

[root@oe01 ~]# vim /etc/zabbix/zabbix_server.conf
DBHost=192.168.200.179     # 改为数据库地址
DBPassword=123             # 改为数据库的密码
DBPort=3306                # 数据库的端口
ListenPort=10051           # 将这一行取消注释即可

然后我们启动zabbix

[root@oe01 ~]# zabbix_server -c /etc/zabbix/zabbix_server.conf

3.2 Web界面部署

[root@oe01 ~]# cd /data/zabbix/
[root@oe01 zabbix]# cp -r /opt/zabbix-6.2.8/ui/* .
[root@oe01 zabbix]# chown nginx:nginx -R /data/zabbix/

进入浏览器进行后续操作

语言选择简体中文

时间选择北京时间

这里有这个报错我们可以点击下载配置文件,然后传到服务器上去

传好之后点击完成,就会提示你zabbix已经配置好了

默认的登录用户名是Admin密码是zabbix

服务端就已经搞定了

4. 安装agent

agent安装在被监控的节点上

[root@oe01 ~]# rpm -Uvh https://repo.zabbix.com/zabbix/6.2/rhel/8/x86_64/zabbix-release-6.2-3.el8.noarch.rpm
[root@oe01 ~]# yum install zabbix-agent2 -y

然后我们修改相关的配置文件

[root@oe01 ~]# vim /etc/zabbix/zabbix_agent2.conf
Server=192.168.200.179
[root@oe01 ~]# systemctl restart zabbix-agent2.service 

将server这里改为zabbix-server的地址

5. 添加主机

点进主机这里的时候会发现这里没有显示中文,我们需要将windows上的字体上传到服务器上

windows字体路径C:\Windows\Fonts\msyh.ttc

[root@oe01 fonts]# pwd
/data/zabbix/assets/fonts

将字体上传到这个目录

[root@oe01 fonts]# ls
DejaVuSans.ttf  MSYH.TTC
[root@oe01 fonts]# mv DejaVuSans.ttf DejaVuSans.ttf.bak
[root@oe01 fonts]# mv MSYH.TTC DejaVuSans.ttf

将原有的字体文件备份,再将我们上传的字体改为之前的那个文件名即可,回到网页刷新

字体就已经出来了

From:https://www.cnblogs.com/fsdstudy/p/18338985
本文地址: http://shuzixingkong.net/article/712
0评论
提交 加载更多评论
其他文章 Kotlin 字符串教程:深入理解与使用技巧
Kotlin中的字符串用于存储文本,定义时使用双引号包围字符序列,如`var greeting = &quot;Hello&quot;`。Kotlin能自动推断变量类型,但在未初始化时需显式指定类型,如`var name: String`。可通过索引访问字符串元素,如`txt[0]`获取首字符。字符
Label Studio数据标注--通过源码安装
Label Studio是Heartex公司开发的一款在线数据标注工具,本文就介绍如何从github上clone源码安装Label Studio。
图书《数据资产管理核心技术与应用》核心章节节选-3.1.2. 从Spark 执行计划中获取数据血缘
本文节选自清华大学出版社出版的图书《数据资产管理核心技术与应用》,作者为张永清等著。 从Spark 执行计划中获取数据血缘 因为数据处理任务会涉及到数据的转换和处理,所以从数据任务中解析血缘也是获取数据血缘的渠道之一,Spark 是大数据中数据处理最常用的一个技术组件,既可以做实时任务的处理,也可以
图书《数据资产管理核心技术与应用》核心章节节选-3.1.2. 从Spark 执行计划中获取数据血缘 图书《数据资产管理核心技术与应用》核心章节节选-3.1.2. 从Spark 执行计划中获取数据血缘 图书《数据资产管理核心技术与应用》核心章节节选-3.1.2. 从Spark 执行计划中获取数据血缘
stable diffusion 实践与测试
stable diffusion 实践与测试 放大 原图高清放大 原始图片 当不满意图片质量的时候 使用stable diffusion进行二次处理 选择适合图片风格的模型,再次根据图片写出提示词 输入原图像1024尺寸之后调整重绘幅度 采样器automatic在这里会选择karras 原图异变放大
stable diffusion 实践与测试 stable diffusion 实践与测试 stable diffusion 实践与测试
argparse学习笔记
argparse是 Python 的一个内置模块,用于编写用户友好的命令行接口。使用 argparse,你可以很容易地为 Python 脚本添加参数解析功能,使得脚本可以接受命令行选项和参数。学起来也比较简单,接下来我会详细讲解。 在argparse里面,有位置参数和可选参数。位置参数是必不可少的,
我菜单为什么跟着滑动了?!!—— 固定定位为什么会失效?
背景:最近在写一个H5页面项目,头部有个菜单栏,需要固定在顶部不动,但是滑动之后设置并没有生效,之前开发中也遇到过类似的固定失效的情况,就去详细了解了下有哪些可能导致固定定位失效的情况。希望有些场景能帮助到你。下面我总结和详细说明了会导致失效的情况,那么我们接着往下看...
我菜单为什么跟着滑动了?!!—— 固定定位为什么会失效? 我菜单为什么跟着滑动了?!!—— 固定定位为什么会失效?
DASCTF2022.07赋能赛PWN部分WP
DASCTF2022.07赋能赛PWN部分WP eyfor 程序保护情况 64位ida逆向 可以看见是一个随机数的逻辑,只要我们猜不对4次就可以进入漏洞函数,但是我感觉这原本可能是==号,让用随机数的 那我们就4次不输入一个数就可以进入漏洞函数,这里注意这个a1就是我们进入漏洞函数之前要输入的值,可
DASCTF2022.07赋能赛PWN部分WP DASCTF2022.07赋能赛PWN部分WP DASCTF2022.07赋能赛PWN部分WP
.Net 6.0 Web API 项目生成镜像并上传到私有仓库 Harbor
本文首先简单介绍了 Dockerfile 内容和常用命令;然后是在 Windows 环境 Docker desktop 的安装和配置;最后创建了 Web API 示例项目,并简单说明了从构建到推送至 Harbor 镜像仓库的步骤。
.Net 6.0 Web API 项目生成镜像并上传到私有仓库 Harbor .Net 6.0 Web API 项目生成镜像并上传到私有仓库 Harbor .Net 6.0 Web API 项目生成镜像并上传到私有仓库 Harbor