搭建Zabbix6.0版本

2023-05-16

Zabbix简介

Zabbix是一个企业级的开源分布式监控解决方案,由C语言编写而成的底层架构(server端和agent端),由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费的技术支持赢利。

Zabbix运行条件:

Server:

Zabbix Server需运行在LAMP(Linux+Nginx+Mysql+PHP)环境下,对硬件要求低

Agent:

目前已有的agent基本支持市面常见的OS,包含Linux、HPUX、Solaris、Sun、windows等

SNMP:

支持各类常见的网络设备

zabbix是一个监控软件:

它是一个C/S架构,还是一个B/S架构,zabbix软件的前端是由PHP语言写的

zabbix数据采集:

主动模式 被监控端主动将采集的数据发送给监控端

被动模式 zabbix默认的模式 监控端定时向被监控端拿数据

zabbix监控对象:

  1. 系统的性能

内存使用率 cpu负载 网络以及磁盘I/O

Tcp的各种连接状态

  1. 应用程序

首先监控应用程序是否正常运行(端口|进程)

监控应用程序的性能

zabbix的优点:有报警、有图形化、可以监控服务器和网络设备,还可以实现自动发现

开始搭建zabbix

搭建zabbix6.0之前首先需要搭建LNMP或LAMP,并且最低需要MySQL8.0版本,PHP最低需要7.0版本暂不支持8.0版本的PHP。搭建LNMP可以看这两篇文章编译安装LNMPYUM安装LNMP

安装php

[root@localhost ~]# yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
[root@localhost ~]# yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm
[root@localhost ~]# yum install yum-utils
[root@localhost ~]# yum -y install php74-php-fpm.x86_64 php74-php-common.x86_64 php74-php-cli.x86_64 php74-php-gd.x86_64 php74-php-ldap.x86_64 php74-php-mbstring.x86_64 php74-php-mysqlnd.x86_64 php74-php-xml php74-php-bcmath.x86_64 php74-php
[root@localhost ~]# systemctl enable nginx --now
[root@localhost ~]# ss -tln | grep 9000
LISTEN     0      128    127.0.0.1:9000                     *:*      

其他的去看上面两个超链接

安装zabbix server服务端

创建zabbix用户zabbix组

[root@localhost ~]# groupadd zabbix
[root@localhost ~]# useradd -r -g zabbix zabbix

下载zabbix所需依赖包

[root@localhost ~]# yum -y install mysql-devel net-snmp-devel libevent-devel curl-devel libxml2 libxml2-devel

升级gcc为8.0版本以上不然make isntall 会报错
[root@localhost ~]# yum -y install centos-release-scl 
[root@localhost ~]# yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils 
[root@localhost ~]# scl enable devtoolset-9 bash
永久设置
[root@localhost ~]# echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile

安装zabbix

下载并上传zabbix包
[root@localhost ~]# wget https://cdn.zabbix.com/zabbix/sources/stable/6.0/zabbix-6.0.13.tar.gz

解压配置zabbix包
[root@localhost ~]# tar zxvf zabbix-6.0.13.tar.gz -C /usr/src/
[root@localhost ~]# cd /usr/src/zabbix-6.0.13/
[root@localhost zabbix-6.0.13]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
[root@localhost zabbix-6.0.13]# make install

创建mysql数据库并授权,在8.0版本授权之前需要先创建用户

[root@localhost ~]# mysql -uroot -pABc123...
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user zabbix@'%' identified by 'Abc123...';
mysql> grant all on zabbix.* to zabbix@'%' with grant option;
mysql> flush privileges;

导入数据库架构及数据

[root@localhost ~]# mysql -uroot -pABc123... zabbix < /usr/src/zabbix-6.0.13/database/mysql/schema.sql
[root@localhost ~]# mysql -uroot -pABc123... zabbix < /usr/src/zabbix-6.0.13/database/mysql/images.sql
[root@localhost ~]# mysql -uroot -pABc123... zabbix < /usr/src/zabbix-6.0.13/database/mysql/data.sql

创建zabbix日志存储位置和pid存储位置并设置属主属组

[root@localhost ~]# mkdir /usr/local/zabbix/{logs,pid}
[root@localhost ~]# chown zabbix:zabbix /usr/local/zabbix/ -R 

修改配置zabbix server文件

[root@localhost ~]# vim /usr/local/zabbix/etc/zabbix_server.conf
:%g/^#/d
:%g/^$/d

LogFile=/usr/local/zabbix/logs/zabbix_server.log               ##日志存放路径
PidFile=/usr/local/zabbix/pid/zabbix_server.pid                ##运行的PID文件
DBHost=192.168.43.254                                          ##数据库主机ip
DBSocket=/var/lib/mysql/mysql.sock                             ##mysql.sock
DBName=zabbix                                                  ##数据库名字
DBUser=zabbix                                                  ##mysql授权的用户
DBPassword=Abc123...                                           ##mysql授权的密码
Include=/usr/local/zabbix/etc/zabbix_server.conf.d/*.conf      ##开启附加配置文件目录
LogSlowQueries=3000                                            ##用于服务端数据库慢查询功能,单位是毫秒
StatsAllowedIP=127.0.0.1,192.168.43.0/24                       ##来源IP访问控制限制

修改配置zabbix agent文件

[root@localhost ~]# vim /usr/local/zabbix/etc/zabbix_agentd.conf
:%g/^#/d
:%g/^$/d

LogFile=/usr/local/zabbix/logs/zabbix_agentd.log
PidFile=/usr/local/zabbix/pid/zabbix_agent.pid
Server=192.168.43.254
ServerActive=192.168.43.253                                ####输入agent主机采集到数据发送到的server端
Hostname=Zabbix server
Include=/usr/local/zabbix/etc/zabbix_server.conf.d/*.conf

配置zabbix_server启动脚本

[root@localhost ~]# vim /usr/lib/systemd/system/zabbix.service
[Unit]
Description=Zabbix Server with MySQL DB
After=syslog.target network.target mysqld.service
[Service]
Type=simple
ExecStart=/usr/local/zabbix/sbin/zabbix_server -f   ##zabbix安装目录
User=zabbix
[Install]
WantedBy=multi-user.target   

[root@localhost ~]# systemctl daemon-reload  

启动监控端 
[root@localhost ~]# systemctl enable zabbix --now       
启动agent端
[root@localhost ~]# /usr/local/zabbix/sbin/zabbix_agentd 
[root@localhost ~]# ss -tln | grep 1005
LISTEN     0      128          *:10050                    *:*                  
LISTEN     0      128          *:10051                    *:*                  
LISTEN     0      128       [::]:10050                 [::]:*                  
LISTEN     0      128       [::]:10051                 [::]:*                  

需要修改php参数(网页预配置必要条件)

[root@localhost ~]# vim /etc/opt/remi/php74/php.ini
修改date.timezone = Asia/Shanghai
修改post_max_size为16M
修改max_execution_time为300
修改max_input_time为300

移动前端文件至web服务的根目录并授权

root@localhost ~]# cp -r /usr/src/zabbix-6.0.13/ui/* /usr/share/nginx/html/zabbix
[root@localhost ~]# chown -R nginx:nginx /usr/share/nginx/html/zabbix/
[root@localhost ~]# chown -R nginx:nginx /etc/opt/remi/php74/php.ini 

测试

浏览器输入主机ip并加入zabbix前端文件路径

192.168.43.254/zabbix

选择语言Chinese(zh_CN)

查看条件是否全部OK全部OK的下一步

Zabbix主机名称随便起

确认信息后下一步

下载配置文件将它传到以下目录里然后刷新网页

默认账号Admin密码zabbix

安装成功

解决zabbix显示图像下边文字乱码情况:

[root@localhost ~]#  cd /usr/share/nginx/html/zabbix/assets/fonts
删除默认的语言
[root@localhost fonts]# rm -rf *
上传新的语言
进入windows C:\Windows\Fonts目录下下载自己想要的语言传到服务器上并改成系统默认语言的名字
[root@localhost fonts]# mv simkai.ttf DejaVuSans.ttf

修改语言和默认密码

点击User settings-->Profile

搭建zabbix_agent端

[root@localhost ~]# yum -y install mysql-devel net-snmp-devel libevent-devel curl-devel libxml2 libxml2-devel

升级gcc为8.0版本以上不然make isntall 会报错
[root@localhost ~]# yum -y install centos-release-scl 
[root@localhost ~]# yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils 
[root@localhost ~]# scl enable devtoolset-9 bash
永久设置
[root@localhost ~]# echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile

创建zabbix用户和组

[root@localhost ~]# groupadd zabbix
[root@localhost ~]# useradd -r -g zabbix zabbix
下载并上传zabbix包
[root@localhost ~]# wget https://cdn.zabbix.com/zabbix/sources/stable/6.0/zabbix-6.0.13.tar.gz

解压配置zabbix包
[root@localhost ~]# tar zxvf zabbix-6.0.13.tar.gz -C /usr/src/
[root@localhost ~]# cd /usr/src/zabbix-6.0.13/
[root@localhost zabbix-6.0.13]# ./configure --prefix=/usr/local/zabbix --enable-agent  --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
[root@localhost zabbix-6.0.13]# make install

修改权限
[root@localhost ~]# chown -R zabbix:zabbix /usr/local/zabbix/
[root@localhost ~]# vim /usr/local/zabbix/etc/zabbix_agentd.conf
:%g/^#/d
:%g/^$/d

LogFile=/usr/local/zabbix/logs/zabbix_agentd.log
PidFile=/usr/local/zabbix/pid/zabbix_agent.pid
Server=192.168.43.254
ServerActive=192.168.43.253                                ####输入agent主机采集到数据发送到的server端
Hostname=Zabbix server
Include=/usr/local/zabbix/etc/zabbix_server.conf.d/*.conf

编写系统启动脚本

cat <<EOF > /etc/systemd/system/zabbix-agent.service
[Unit]
Description=Zabbix Agent
After=syslog.target network.target network-online.target
Wants=network.target network-online.target

[Service]
Type=simple
User=root
ExecStart=/usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/etc/zabbix_agentd.conf
RemainAfterExit=yes

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

搭建Zabbix6.0版本 的相关文章

  • 数据结构——平衡二叉树(AVL树)之插入

    文章目录 前言一 定义二 基本操作1 查找 xff0c 2 插入 如何调整 如何调整代码实现插入 前言 首先我们来思考一下一个普通二叉树保存数据 xff0c 如果想查找一个数据 xff0c 由于普通二叉树保存数据是随机的 xff0c 要找到
  • C++之引用怎么用

    1 引用的概念 引用并不是新定义一个变量 xff0c 而是给一个已存在的变量取一个别名 编译器并不会为引用变量开辟空间 xff0c 它和它应用的变量共用一块空间 也就是说引用是同一块变量空间的不同名字 格式 xff1a 类型 amp 引用变
  • 完全背包问题

    目录 一 什么是完全背包 二 完全背包问题的里外层循环可以交换吗 三 题 3 1 求组合数 3 2 求排列和 3 3 求最小值 一 什么是完全背包 完全背包问题一般是指 xff1a 有N件物品和一个能背重量为W的背包 xff0c 第i件物品
  • 如何从GitHub上下载开源项目

    作为开源代码库以及版本控制系统 xff0c Github拥有超过900万开发者用户 随着越来越多的应用程序转移到了云上 xff0c Github已经成为了管理软件开发以及发现已有代码的首选方法 GitHub上有无数优秀开发者正在开发和维护的
  • 进程间通信之共享内存

    目录 一 共享内存实现进程间通信的原理 二 管理共享内存的数据结构 三 共享内存函数 四 实现进程间通信 接博客 xff1a 进程间通信之管道 一 共享内存实现进程间通信的原理 共享内存实际是操作系统在实际物理内存中开辟的一段内存 共享内存
  • ICMP协议详解

    ICMP协议 一 概念 ICMP协议是一个网络层协议 和IP协议处于同一层 xff0c 但是ICMP协议底层用的是IP协议 一个搭建好的网络 xff0c 往往需要先进行简单的测试 xff0c 来验证网络是否通畅 单单使用IP协议并不提供可靠
  • C++11——右值引用

    目录 前言 一 右值引用的概念 1 1 左值和右值的概念 1 2 引用和右值引用比较 二 右值引用的作用 2 1引用的缺陷 2 1 移动语义 2 2 右值引用的具体应用 2 3 对比引用总结 三 右值引用引用左值 move 四 完美转化 前
  • C++11——lambda表达式

    目录 前言 一 lambda表达式用法 二 lambda表达式语法 三 lambda表达式的原理 前言 在显示生活中 xff0c 我们在用手机购物时 总是可以在页面上看到下面这样的选项 我们知道底层这是通过排序来完成的 xff0c 但是当我
  • MySQL索引

    目录 前言 一 认识磁盘 二 MySQL与磁盘的交互基本单位 三 索引的理解 3 1 引出索引 3 2 MySQL管理Page 3 2 1 单个Page的情况 3 2 2 多page的情况 3 3 什么是索引 四 聚簇索引和非聚簇索引 4
  • 100道测试工程师笔试的Linux笔试题及答案

    单选题 xff1a 1 cron 后台常驻程序 daemon 用于 xff1a A 负责文件在网络中的共享 B 管理打印子系统 C 跟踪管理系统信息和错误 D 管理系统日常任务的调度 2 在大多数Linux发行版本中 xff0c 以下哪个属
  • Redis应用问题及解决

    目录 一 缓存穿透 1 1 问题描述 1 2 解决方案 二 缓存击穿 2 1 问题描述 2 2 解决方案 三 缓存雪崩 3 1 问题描述 3 2 解决方案 当数据库压力变大 xff0c 导致服务访问数据库响应变慢 xff0c 导致服务的压力
  • Shell脚本练习

    求100以内正奇数和 注意点 xff1a 和 xff1a 是进行数学运算的 支持 43 xff1a 分别为 加 减 乘 除 取模 但是注意 xff0c bash只能作整数运算 xff0c 对于浮点数是当作字符串处理的 a b xff1a 表
  • sed命令_Linux sed命令:替换、删除、更新文件中的内容

    sed 是 stream editor 的缩写 xff0c 中文称之为 流编辑器 sed 命令是一个面向行处理的工具 xff0c 它以 行 为处理单位 xff0c 针对每一行进行处理 xff0c 处理后的结果会输出到标准输出 xff08 S
  • 《国产操作系统之银河麒麟》银河麒麟服务器操作系统引导过程

    目录 系统引导过程 01 系统启动流程概述 系统启动总流程 第一阶段 xff1a BIOS初始化 编辑 第二阶段 GRUB2启动引导 编辑 第三阶段 内核引导 编辑 第四阶段 systemd进程 02 固件与BIOS BIOS启动流程 BI
  • Spring MVC基础配置

    Spring MVC 使用步骤 xff1a 1 在web xml中的配置DispatcherServlet span class token tag span class token tag span class token punctua
  • 对Redis布隆过滤器的实现

    目录 实现思路 首先最重要的自定义hash 然后就是将key放入bitSet 然后就是判断布隆过滤器bitSet数组中是否含有对应的key 代码 实现思路 39条消息 Redis布隆过滤器 Fairy要carry的博客 CSDN博客 首先最
  • Keil uVision5修改工程名字

    目录 1 打开文件中mdk的文件夹 xff1a 2 把Listings和Objects里边东西全部删除 xff1a 3 删除文件夹之外的东西 xff0c 并且绿色这个文件改名 xff1a 4 打开Keil uVision5 xff0c 点开

随机推荐

  • Redis的Java客户端

    1 快速入门 Jedis使用的基本步骤 xff1a 1 引入依赖 2 创建Jedis对象 xff0c 建立连接 3 使用Jedis xff0c 方法名与Redis命令一致 4 释放资源 lt jedis依赖 gt lt dependency
  • linux下使用rpm安装mysql

    1 get mysql rpm package mysql rpm install https www aliyundrive com s 6xUyXcdqYJF 点击链接保存 xff0c 或者复制本段内容 xff0c 打开 阿里云盘 AP
  • python爬取豆瓣T250电影及保存excel(易上手)

    网址 xff1a 豆瓣电影 Top 250 目录 一 bs4和re正则爬取 二 xpath爬取 一 bs4和re正则爬取 源代码 xff1a import urllib request urllib error import re from
  • qt发布的程序时如何将依赖的dll分开放在不同目录

    SetDllDirectory设定DLL加载路径 include 34 Windows h 34 切换工作目录 xff0c 到指定目录查找依赖的dll文件 QString s 61 34 debug 34 LPCWSTR path 61 s
  • Android项目目录结构和资源管理

    项目目录结构和资源管理 项目目录结构默认结构形式真正的结构形式app包里结构src包里的目录 资源的管理和使用图片资源布局资源字符串资源样式颜色资源 项目目录结构 默认结构形式 新建的项目会默认使用Android模式的项目结构 xff0c
  • jupyter notebook无法打开(或无法用终端打开)

    报错如下 xff1a 解决方法 xff1a 添加这三个环境变量 注 xff1a 这三个路径虽然短 xff0c 但是一定要复制粘贴进去 xff0c 手写很容易报错 xff0c 即使你路径手写是对的 其他问题解决方法 xff1a xff08 1
  • Spring Aop通知注解的执行顺序

    spring4和spring5有所不同 spring4没异常有异常执行顺序从上往下 64 Around通知前 64 Aroud通知前 64 Before通知 64 Before通知业务代码 64 After通知 64 Around通知后 6
  • vcruntime140_1.dll无法继续执行代码如何修复?

    vcruntime140 1 dll是电脑系统动态链接中非常重要的文件 xff0c 主要用于处理各种程序 每台计算机上都有相当多的DLL文件 xff0c 不同的程序会使用不同的DLL文件 电脑系统如果丢失dll文件 xff0c 会导致很多软
  • Linux基础指令的基本操作(一)

    文章目录 Linux用户管理 xff1a 1 adduser添加用户2 passwd修改用户密码3 userdel删除用户 其他指令alias指令 取别名 whoami指令man指令 重要 bc指令unamefreedf h Linux 访
  • Linux 权限(二)权限掩码 粘滞位 详细

    文章目录 Linux权限的概念Linux权限管理01 文件访问者的分类 xff08 人 xff09 02 文件类型和访问权限 xff08 事物属性 xff09 拥有者 xff0c 所属组 xff0c other vs root 和普通用户a
  • Linux——基础IO

    文章目录 先来段代码回顾C文件接口写文件读文件输出信息到显示器 xff0c 你有哪些方法 默认打开的三个流 stdin amp stdout amp stderr系统接口openclosewriteread文件描述符fd文件描述符的分配规则
  • boost字符串库简单使用

    boost字符串库简单使用 说明用法大小写转换字符串分割去掉字符串两边空格替换字符串 replace first replace first copy 说明 写c 43 43 程序的时候 xff0c 虽然std string有数百余函数 x
  • 线程安全下单例模式

    文章目录 什么是单例模式单例模式的特点定义对象的本质什么时候创建对象饿汉实现方式和懒汉实现方式饿汉方式实现单例模式懒汉方式实现单例模式懒汉方式实现单例模式 线程安全版本 什么是单例模式 单例模式是一种 经典的 常用的 常考的 设计模式 单例
  • Linux 线程池

    文章目录 线程池的定义使用线程池的原因基于POSIX实现的线程池基于block队列的线程池实现基于ring队列的线程池实现 设计单例模式线程池 线程池的定义 线程池就一堆已经创建好的任务线程 xff0c 初始它们都处于空闲等待状态 xff0
  • 魔都,3年,程序员到CTO

    过一个平凡无趣的人生实在太容易了 xff0c 你可以不读书 xff0c 不冒险 xff0c 不运动 xff0c 不写作 xff0c 不外出 xff0c 不折腾 但是 xff0c 人生最后悔的事情就是 xff1a 我本可以 陈素封 我可以 在
  • TCP协议

    文章目录 1 保证可靠性机制1 1 确认应答机制1 1 1确认应答机制概念1 1 2常规确认应答的工作方式1 1 3报文按序到达1 1 4 如何确认历史数据被收到1 1 5 16位序号和16确认序号 xff08 字段讲解 xff09 tcp
  • 1 对数器,二分查找,

    文章目录 对数器二分查找 1 有序序列二分查找 2 在一个有序数组中 xff0c 找 lt 61 某个数最右侧的位置 3 在一个有序数组中 xff0c 找 gt 61 某个数最左侧的位置 4 无序序列二分查找 xff0c 求局部最小值 对数
  • 2 异或位运算大厂必刷题

    文章目录 如何不用额外变量交换两个数一个数组中有一种数出现了奇数次 xff0c 其他数都出现了偶数次 xff0c 怎么找到并打印这种数怎么把一个int类型的数 xff0c 提取出最右侧的1来怎么把一个int类型的数 获取位数为1的数量一个数
  • 链表,栈,队列,递归行为,哈希表,有序表

    文章目录 链表1 单链表 双链表的反转2 删除链表中指定的值 队列1 数组循环队列的实现2 双向链表实现双端队列 栈1 用数组实现栈 栈和队列的面试题1 实现最小栈2 两个栈实现一个队列3 两个队列实现一个栈4 用栈实现图的广度优先遍历5
  • 搭建Zabbix6.0版本

    Zabbix简介 Zabbix是一个企业级的开源分布式监控解决方案 xff0c 由C语言编写而成的底层架构 xff08 server端和agent端 xff09 xff0c 由一个国外的团队持续维护更新 xff0c 软件可以自由下载使用 x