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

【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>() }如上代码&#xff0c;第一行赋值语句是OK的&#xff0c;第二行赋值语句在编辑器上直接就报错…...

第三百二十五节 Java线程教程 - Java Fork/Join框架

Java线程教程 - Java Fork/Join框架 fork/join框架通过利用机器上的多个处理器或多个内核来解决问题。 该框架有助于解决涉及并行性的问题。 fork/join框架创建一个线程池来执行子任务。 当线程在子任务上等待完成时&#xff0c;框架使用该线程来执行其他线程的其他未决子任…...

网络游戏安全现状及相关应对方案

中国网络游戏历经十余年的飞速发展&#xff0c;取得了显著成就&#xff0c;但与此同时&#xff0c;也陷入了诸多安全问题的泥沼。 一、中国网络游戏发展中的安全困境 &#xff08;一&#xff09;灰色产业链滋生 外挂、私服、盗号、打金工作室以及网络信息诈骗等灰色产业链在…...

uniapp h5地址前端重定向跳转

简单说下功能&#xff0c;就是在地址输入http://localhost:8080/home 会自行跳转到http://localhost:8080/pages/home/index&#xff0c;如果有带参数的话也会携带上去。 ps&#xff1a;只能在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的运行日志&#xff0c;这次使用--log-file&#xff0c;因为它可以配置日志的级别、格式和每行日志的生成时间。 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&#xff0c;可以按照以下步骤操作&#xff1a; 安装NuGet包&#xff1a; 安装MiniProfiler.AspNetCore.Mvc包以集成MiniProfiler。安装MiniProfiler.EntityFrameworkCore包以监…...

视频会议接入GB28181视频指挥调度,语音对讲方案

传统的视频会议指挥调度系统目前主流的互联网会议大部分都是私有协议&#xff0c;功能都很独立。目前主流的视频监控国标都最GB平台&#xff0c;新的需求要求融合平台要接入监控等设备&#xff0c;并能实现观看监控接入会议&#xff0c;实时语音设备指挥现场工作人员办公实施。…...

深度学习和图像处理

看来你对深度学习和图像处理很感兴趣呢&#xff0c;让我来一一解答你的疑惑吧。 深度学习高纬度特征 首先&#xff0c;我猜你是想问“深度学习中的高维特征”吧。在深度学习中&#xff0c;随着网络层数的加深&#xff0c;网络的感受野逐渐变大&#xff0c;语义表达能力也随之增…...

〔 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表中建立属性列&#xff1a; 列名称&#xff0c;类型在后 n…...

云安全之云计算基础

0x00 前言 本文主要是针对云计算相关的基础梳理和整理。 云计算 NIST 800-145ISO/IEC 17788ISO/IEC 17789云安全 NIST 500-299 云安全ISO / IEC FDIS 27017 云安全0x01 云计算基础 什么是云计算: 一种新的运作模式和一组用于管理计算资源共享池的技术。云计算是一种颠覆性的…...

PostgreSQL pg-xact(clog)目录文件缺失处理

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

《ElementPlus 与 ElementUI 差异集合》Icon 图标 More 差异说明

参考 《element plus 使用 icon 图标(两种方式)》使用 icon 升级 Vue2 升级 Vue3 项目时&#xff0c;遇到命名时的实心与空心点差异&#xff01; ElementUI&#xff1a; 实心是 el-icon-more空心是 el-icon-more-outline ElementPlus&#xff1a; 实心是 el-icon-more-fill…...

基于碎纸片的拼接复原算法及MATLAB实现

一、问题描述 破碎文件的拼接在司法物证复原、历史文献修复以及军事情报获取等领域都有着重要的应用。传统上&#xff0c;拼接复原工作需由人工完成&#xff0c;准确率较高&#xff0c;但效率很低。特别是当碎片数量巨大&#xff0c;人工拼接很难在短时间内完成任务。随着计算…...

苍穹外卖 软件开发流程

软件开发的流程&#xff1a; 1.需求分析 完成需求规格说明书、产品原型。 需求规格说明书&#xff1a;一般而言是word文档描述当前项目的各个组成部分&#xff0c;如&#xff1a;系统定义、应用环境、功能规格、性能需求等&#xff0c;都会在文档中描述。 …...

mysqldump导出表结构和表数据和存储过程和函数

0、查看表结构信息 (1) 只查看表结构的注释信息 select table_name,table_comment from information_schema.tables where table_schema 表所在的库 and table_name 表名 &#xff1b; mysql> select table_name,table_comment from information_schema.tables where tabl…...

常见的排序算法及分类对比

虽然在竞赛和编程语言中用到的排序算法主要是时间复杂度为 O ( n log ⁡ n ) O(n \log n) O(nlogn) 的高效算法,但作为算法学习,我们要从简单到复杂,认识常见的排序算法,并理解其算法思想。本文列出几乎所有的排序算法并进行分类对比。 排序算法总表 以下是一个对比表格…...

多窗口切换——selenium

获取窗口句柄&#xff08;以Python Selenium为例&#xff09; current_window_handle方法 用于获取当前窗口的句柄。句柄是一个标识符&#xff0c;用于唯一标识一个窗口。示例代码&#xff1a; from selenium import webdriverdriver webdriver.Chrome() driver.get("…...

LFD STM32编程规范20241111

1. 源文件和头文件放同一目录bsp文件夹顺序文件注释防重复设置#include#defineenum类型声明、定义 包括struct union typedef全局变量声明文件级变量声明全局或文件级函数声明函数实现。按函数声明顺序文件尾注释。/**************END FILE**************/引用头文件不用绝对路…...

Python学习------第八天

函数 函数的传入参数 掌握函数返回值的作用 掌握函数返回值的定义语法 函数的嵌套调用&#xff1a; 函数的局部变量和全局变量 局部变量的作用&#xff1a;在函数体内部&#xff0c;临时保存数据&#xff0c;即当函数调用完成后&#xff0c;则销毁局部变量。 money 5000000 n…...

【扩散——BFS】

题目 代码 #include <bits/stdc.h> using namespace std; const int t 2020, off 2020; #define x first #define y second typedef pair<int, int> PII; int dx[] {0, 0, 1, -1}, dy[] {-1, 1, 0, 0}; int dist[6080][6080]; // 0映射到2020&#xff0c;2020…...

C++ 编程基础(5)类与对象 | 5.5、多态

文章目录 一、多态1、概念2、多态实现方式3、动态绑定与静态绑定4、虚函数4.1、声明与定义4.2、虚函数的工作原理4.3、虚函数的优点与注意事项 5、不能声明为虚函数的函数6、纯虚函数7、抽象类8、总结 前言&#xff1a; 在C编程语言中&#xff0c;多态性&#xff08;Polymorphi…...

客户端发送http请求进行流量控制

客户端发送http请求进行流量控制 实现方式 1&#xff1a;使用 Semaphore (信号量) 控制流量 asyncio.Semaphore 是一种简单的流控方法&#xff0c;可以用来限制并发请求数量。 import asyncio import aiohttp import timeclass HttpClientWithSemaphore:def __init__(self, …...

STM32 低功耗模式详解

目录 一、什么是低功耗 二、低功耗的核心思想 三、STM32的3种低功耗模式 1、睡眠模式 (Sleep Mode) 2、停止模式 (Stop Mode) 3、 待机模式 (Standby Mode) 四、相关电源管理寄存器 1、PWR_CR (Power Control Register, 电源控制寄存器) 2、PWR_CSR (Power Control/St…...

我的第一个PyQt5程序

PyQt5的开发环境配置完成之后&#xff0c;开始编写第一个PyQt5的程序。 方法一&#xff1a;使用将.ui转换成.py文件的方法 import sys from FirstPyQt import Ui_MainWindow from PyQt5.QtWidgets import *#QtCore,QtGui,QtWidgets # from QtTest import Ui_MainWindow#导入Q…...

Unity调用Python

代码如下&#xff1a; if (useAI){/** 通过PaddlePaddle进行合成处理* */// 创建线程参数对象ThreadParameters parameters new ThreadParameters(){pythonPath "python", // 如果 Python 在系统路径中&#xff0c;可以直接使用 "python"pythonScript U…...

前端,location.reload刷新页面

location.reload() 是 JavaScript 中的一个方法&#xff0c;它用于重新加载当前页面。当你调用这个方法时&#xff0c;浏览器会重新加载当前页面的资源&#xff0c;就像用户点击了浏览器的刷新按钮一样。 基本用法 // 刷新当前页面 location.reload();带参数的用法 location…...