【Linux】监控系统Zabbix的安装与配置
文章目录
- 一、前期准备
- 1、安装LAMP
- 2、配置SELinux与防火墙
- 3、测试Apache
- 4、配置数据库
- 5、创建zabbix数据库及应用
- 二、server端安装配置
- 1、软件包安装
- 2、配置数据库
- 3、zabbix访问测试
- 4、配置web界面
- 三、Agent端安装配置
- 1、安装zabbix-agent
- 2、配置
- 3、启动zabbix-agent
- 4、配置防火墙和SELinux
- 四、连通性测试
- 五、谢谢观看!
一、前期准备
1、安装LAMP
下载最新的YUM源:
wget -P /etc/yum.repos.d http://mirrors.aliyun.com/repo/Centos-7.repo
使用yum命令安装MariaDB、PHP以及httpd
yum -y install mariadb mariadb-server php php-mysql httpd
2、配置SELinux与防火墙
1、关闭SELinux:
sudo setenforce 0
2、开启80端口:(apache通过HTTP协议传输数据,而http协议默认使用服务器主机的80端口)
firewall-cmd --zone=public --add-port=80/tcp --permanent
使防火墙重新加载配置信息,更新相关配置
firewall-cmd --reload
3、测试Apache
启动HTTP服务:
systemctl start httpd
将HTTP服务设置为开机自启动:
systemctl enable httpd
测试Apache服务:在浏览器中输入Apache所在主机ip地址,出现以下界面(我使用的主机ip为192.168.58.131)
4、配置数据库
将数据库设置为开机启动,并开启:
systemctl enable mariadb #开机启动
systemctl start mariadb #开启数据库
初始数据库root用户密码为空,故要为root用户设置密码,并初始化数据库选项:
mysql_secure_installation
其中,密码输入可自己设。
剩下选项均为y
5、创建zabbix数据库及应用
1、创建zabbix数据库
mysql -uroot -pitcast -e "create database zabbix default character set utf8 collate utf8_bin;" #其中的itcast为root用户密码
使用root用户创建了一个名为zabbix的数据库,并设置数据库的字符编码格式为utf8
2、创建zabbix用户
useradd zabbix
passwd zabbix
创建了新用户为zabbix,密码设为了zabbix123
3、为新用户赋予操作权限
mysql -uroot -pitcast -e "grant all on zabbix.* to 'zabbix'@'%' identified by 'zabbix123';"
其中的zabbix分别为数据库名、用户名、用户密码,itcast为数据库密码
4、测试zabbix用户
检测该用户是否可以连接到MariaDB数据库:
mysql -uzabbix -pzabbix123 #用户名、密码,使用zabbix登录数据库
二、server端安装配置
我这里server端的主机地址为192.168.58.131
1、软件包安装
获取yum源
sudo rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
通过yum命令按照zabbix server端软件包:
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-get
2、配置数据库
1、导入表结构
cd /usr/share/doc/zabbix-server-mysql-3.0.32
zcat create.sql.gz | mysql -uroot -pitcast zabbix
2、修改配置文件zabbix_server.conf
rpm -ql zabbix-server-mysql #查询sql文件位置
vi /etc/zabbix/zabbix_server.conf #编辑该文件
找到DBPassword,将其修改为所设密码
DBHost=localhost
DBPassword=数据库密码
修改配置文件zabbix.conf
cd /etc/httpd/conf.d
vi /etc/httpd/conf.d/zabbix.conf
取消注释,进行时区的修改
3、启动zabbix-server
systemctl start zabbix-server
systemctl enable zabbix-server
3、zabbix访问测试
1、重启apache
systemctl restart httpd
2、访问
通过地址http://ip地址/zabbix/setup.php
4、配置web界面
这里的Name可以不写
三、Agent端安装配置
zabbix-agent是zabbix的客户端程序,用来采集数据,将数据发送给zabbix server。被监听主机应安装zabbix-agent。我的agent端主机地址为192.168.58.128。server端也需要安装配置zabbix-agent
1、安装zabbix-agent
sudo rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
yum -y install zabbix-agent
2、配置
将文件/etc/zabbix/zabbix_agentd.conf中的Server、ServerActive、Hostname修改为:
vi /etc/zabbix/zabbix_agentd.conf
Server=192.168.58.131 #zabbix服务器地址
ServerActive=192.168.58.131 #代理服务器地址,若没有代理服务器,仍配为zabbix服务器地址
Hostname=192.168.58.128 #被控端地址,即agent端地址
其中,server端配置如下:
Server=192.168.58.131 #zabbix服务器地址
ServerActive=192.168.58.131
Hostname=192.168.58.131
3、启动zabbix-agent
systemctl start zabbix-agent
systemctl enable zabbix-agent
4、配置防火墙和SELinux
设置防火墙,开启10050端口:
firewall-cmd --zone=public --add-port=10050/tcp --permanent
关闭防火墙和SELinux
sudo systemctl stop firewalld #关闭防火墙
sudo systemctl status firewalld #查看防火墙状态
sudo setenforce 0 #关闭selinux
getenforce #查看selinux状态
四、连通性测试
1、在服务机192.168.58.131上通过ping 192.168.58.128(客户机),尝试是否能够ping通
ping 192.168.58.128
2、在服务机通过zabbix_get命令来获取客户机的操作系统名称
zabbix_get -s 192.168.58.128 -k system.uname #获取客户机的操作系统名称
五、谢谢观看!
参考资料:《Linux系统管理与自动化运维》黑马程序员/编著
相关文章:

【Linux】监控系统Zabbix的安装与配置
文章目录 一、前期准备1、安装LAMP2、配置SELinux与防火墙3、测试Apache4、配置数据库5、创建zabbix数据库及应用 二、server端安装配置1、软件包安装2、配置数据库3、zabbix访问测试4、配置web界面 三、Agent端安装配置1、安装zabbix-agent2、配置3、启动zabbix-agent4、配置防…...
Springboot定时任务
Component EnableScheduling public class SpringBootTestJob {Scheduled(cron "0/5 * * * * ?")public void testScheduled(){System.out.println("SpringBootTestJob test");} }这段代码使用了 Spring Boot 自带的定时任务机制。解释如下: …...
node.js知识点总结
1、Node.js Node. js是一个基于 Chrome v8引擎的服务器端 JavaScript运行环境;Node. js是一个事件驱动、非阻塞式I/O的模型,轻量而又高效;Node. js的包管理器npm是全球最大的开源库生态系统。 2、数据处理中的buffer: 具体…...
Kotlin中泛型的协变
interface Shapeclass Circle : Shapefun main() {val shapes1: List<Shape> listOf<Circle>()val shapes2: MutableList<Shape> mutableListOf<Circle>() }如上代码,第一行赋值语句是OK的,第二行赋值语句在编辑器上直接就报错…...

第三百二十五节 Java线程教程 - Java Fork/Join框架
Java线程教程 - Java Fork/Join框架 fork/join框架通过利用机器上的多个处理器或多个内核来解决问题。 该框架有助于解决涉及并行性的问题。 fork/join框架创建一个线程池来执行子任务。 当线程在子任务上等待完成时,框架使用该线程来执行其他线程的其他未决子任…...
网络游戏安全现状及相关应对方案
中国网络游戏历经十余年的飞速发展,取得了显著成就,但与此同时,也陷入了诸多安全问题的泥沼。 一、中国网络游戏发展中的安全困境 (一)灰色产业链滋生 外挂、私服、盗号、打金工作室以及网络信息诈骗等灰色产业链在…...
uniapp h5地址前端重定向跳转
简单说下功能,就是在地址输入http://localhost:8080/home 会自行跳转到http://localhost:8080/pages/home/index,如果有带参数的话也会携带上去。 ps:只能在h5中使用 首先需要用到query-string 安装query-string npm install query-string…...
uniapp隐藏自带的tabBar
uniapp隐藏自带的tabBar 场景: 微信小程序在使用自定义tabBar组件时, 隐藏uniapp自带的tabBar <template> <!-- index页面 --> </template> <script setup> import { onShow } from /utils/wxUtils onShow(() > {uni.hideTabBar() // 隐藏自带的tab…...
使用--log-file保存pytest的运行日志
前面使用了tee和重定向来保存pytest的运行日志,这次使用--log-file,因为它可以配置日志的级别、格式和每行日志的生成时间。 pytest -q -s -ra --count100 test_open_stream.py --alluredir./report/CXL --log-filepytest_log.txt 【pytest.ini】 使用…...

WebAPI性能监控-MiniProfiler与Swagger集成
Net8_WebAPI性能监控-MiniProfiler与Swagger集成 要在.NET Core项目中集成MiniProfiler和Swagger,可以按照以下步骤操作: 安装NuGet包: 安装MiniProfiler.AspNetCore.Mvc包以集成MiniProfiler。安装MiniProfiler.EntityFrameworkCore包以监…...

视频会议接入GB28181视频指挥调度,语音对讲方案
传统的视频会议指挥调度系统目前主流的互联网会议大部分都是私有协议,功能都很独立。目前主流的视频监控国标都最GB平台,新的需求要求融合平台要接入监控等设备,并能实现观看监控接入会议,实时语音设备指挥现场工作人员办公实施。…...
深度学习和图像处理
看来你对深度学习和图像处理很感兴趣呢,让我来一一解答你的疑惑吧。 深度学习高纬度特征 首先,我猜你是想问“深度学习中的高维特征”吧。在深度学习中,随着网络层数的加深,网络的感受野逐渐变大,语义表达能力也随之增…...

〔 MySQL 〕数据类型
目录 1.数据类型分类 2 数值类型 2.1 tinyint类型 2.2 bit类型 2.3 小数类型 2.3.1 float 2.3.2 decimal 3 字符串类型 3.1 char 3.2 varchar 3.3 char和varchar比较 4 日期和时间类型 5 enum和set mysql表中建立属性列: 列名称,类型在后 n…...
云安全之云计算基础
0x00 前言 本文主要是针对云计算相关的基础梳理和整理。 云计算 NIST 800-145ISO/IEC 17788ISO/IEC 17789云安全 NIST 500-299 云安全ISO / IEC FDIS 27017 云安全0x01 云计算基础 什么是云计算: 一种新的运作模式和一组用于管理计算资源共享池的技术。云计算是一种颠覆性的…...

PostgreSQL pg-xact(clog)目录文件缺失处理
一、 背景 前些天晚上突然收到业务反馈,查询DB中的一个表报错 Could not open file "pg-xact/005E": No such file or directory. 两眼一黑难道是文件损坏了...登录查看DB日志,还好没有其他报错,业务也反馈只有这一个表在从库查询报…...

《ElementPlus 与 ElementUI 差异集合》Icon 图标 More 差异说明
参考 《element plus 使用 icon 图标(两种方式)》使用 icon 升级 Vue2 升级 Vue3 项目时,遇到命名时的实心与空心点差异! ElementUI: 实心是 el-icon-more空心是 el-icon-more-outline ElementPlus: 实心是 el-icon-more-fill…...
基于碎纸片的拼接复原算法及MATLAB实现
一、问题描述 破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。传统上,拼接复原工作需由人工完成,准确率较高,但效率很低。特别是当碎片数量巨大,人工拼接很难在短时间内完成任务。随着计算…...
苍穹外卖 软件开发流程
软件开发的流程: 1.需求分析 完成需求规格说明书、产品原型。 需求规格说明书:一般而言是word文档描述当前项目的各个组成部分,如:系统定义、应用环境、功能规格、性能需求等,都会在文档中描述。 …...
mysqldump导出表结构和表数据和存储过程和函数
0、查看表结构信息 (1) 只查看表结构的注释信息 select table_name,table_comment from information_schema.tables where table_schema 表所在的库 and table_name 表名 ; mysql> select table_name,table_comment from information_schema.tables where tabl…...
常见的排序算法及分类对比
虽然在竞赛和编程语言中用到的排序算法主要是时间复杂度为 O ( n log n ) O(n \log n) O(nlogn) 的高效算法,但作为算法学习,我们要从简单到复杂,认识常见的排序算法,并理解其算法思想。本文列出几乎所有的排序算法并进行分类对比。 排序算法总表 以下是一个对比表格…...
Oracle查询表空间大小
1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...

定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...
LangChain知识库管理后端接口:数据库操作详解—— 构建本地知识库系统的基础《二》
这段 Python 代码是一个完整的 知识库数据库操作模块,用于对本地知识库系统中的知识库进行增删改查(CRUD)操作。它基于 SQLAlchemy ORM 框架 和一个自定义的装饰器 with_session 实现数据库会话管理。 📘 一、整体功能概述 该模块…...

Kafka入门-生产者
生产者 生产者发送流程: 延迟时间为0ms时,也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于:异步发送不需要等待结果,同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...
作为测试我们应该关注redis哪些方面
1、功能测试 数据结构操作:验证字符串、列表、哈希、集合和有序的基本操作是否正确 持久化:测试aof和aof持久化机制,确保数据在开启后正确恢复。 事务:检查事务的原子性和回滚机制。 发布订阅:确保消息正确传递。 2、性…...
Qt 事件处理中 return 的深入解析
Qt 事件处理中 return 的深入解析 在 Qt 事件处理中,return 语句的使用是另一个关键概念,它与 event->accept()/event->ignore() 密切相关但作用不同。让我们详细分析一下它们之间的关系和工作原理。 核心区别:不同层级的事件处理 方…...
绕过 Xcode?使用 Appuploader和主流工具实现 iOS 上架自动化
iOS 应用的发布流程一直是开发链路中最“苹果味”的环节:强依赖 Xcode、必须使用 macOS、各种证书和描述文件配置……对很多跨平台开发者来说,这一套流程并不友好。 特别是当你的项目主要在 Windows 或 Linux 下开发(例如 Flutter、React Na…...
第八部分:阶段项目 6:构建 React 前端应用
现在,是时候将你学到的 React 基础知识付诸实践,构建一个简单的前端应用来模拟与后端 API 的交互了。在这个阶段,你可以先使用模拟数据,或者如果你的后端 API(阶段项目 5)已经搭建好,可以直接连…...

医疗AI模型可解释性编程研究:基于SHAP、LIME与Anchor
1 医疗树模型与可解释人工智能基础 医疗领域的人工智能应用正迅速从理论研究转向临床实践,在这一过程中,模型可解释性已成为确保AI系统被医疗专业人员接受和信任的关键因素。基于树模型的集成算法(如RandomForest、XGBoost、LightGBM)因其卓越的预测性能和相对良好的解释性…...