【Zabbix】Zabbix 保姆级安装指南:从零开始打造高效监控系统,轻松掌握运维利器!

Zabbix:企业级开源监控解决方案官网

一、Zabbix介绍

Zabbix是一个基于Web界面的开源监控解决方案,主要用于分布式系统和网络监控。 它能够监视各种网络参数,确保服务器系统的安全运营,并提供灵活的通知机制,帮助系统管理员快速定位和解决问题。

Zabbix 的基本功能与特点

Zabbix 是一个强大的监控工具,主要用于监控服务器、网络设备、应用程序等的状态和性能。它的核心功能可以总结为以下几点:

  1. 数据收集

    • Zabbix 可以通过 Agent(代理)收集服务器的硬件信息,比如 CPU 使用率、内存占用、磁盘空间等。
    • 它还能监控网络设备的运行状态,比如路由器、交换机的流量、端口状态等。
  2. 网络监控

    • Zabbix 支持多种监控方式,比如 SNMP(简单网络管理协议)、Ping、端口监控等。
    • 它可以监控远程服务器的可用性,比如检查服务器是否在线、网络是否通畅。
  3. 灵活的告警机制

    • 用户可以自定义监控的阈值(比如 CPU 使用率超过 80%),当超过阈值时,Zabbix 会自动触发告警。
    • 告警可以通过邮件、短信等方式发送,帮助运维人员快速发现问题。
  4. 数据可视化与报告

    • Zabbix 提供了丰富的图表和仪表盘,可以直观地展示监控数据。
    • 它还支持生成报告,帮助管理员进行容量规划和性能分析。
  5. 高度可配置

    • Zabbix 非常灵活,可以监控各种复杂的场景,比如 Web 集群、数据库、应用程序等。
    • 它还支持自定义监控项和脚本,满足个性化需求。

Zabbix 的发展现状与市场定位

Zabbix 由 Alexei Vladishev 创建,目前由 Zabbix SIA 公司维护和支持。它是一个开源的、企业级的监控解决方案,适用于各种规模的组织,从小型企业到大型企业都可以使用。

  • 跨平台支持:Zabbix 可以在多种操作系统上运行,包括 Linux、Windows、Solaris 等。
  • 开源免费:Zabbix 是完全开源的,用户可以免费使用,同时也有商业支持服务可供选择。

Zabbix 的架构与组件

Zabbix 的架构主要由以下几个核心组件组成:

  1. Server(服务器)

    • Zabbix Server 是核心组件,负责处理监控数据、存储配置信息、触发告警等。
    • 它接收来自 Agent 或 Proxy 的数据,并进行分析和存储。
  2. Web 界面

    • Zabbix 提供了一个直观的 Web 界面,用户可以通过浏览器查看监控数据、配置监控项、管理告警等。
  3. Database(数据库)

    • Zabbix 使用数据库(如 MySQL、PostgreSQL)来存储监控数据、配置信息和历史记录。
  4. Proxy(代理)

    • 在大型网络中,Zabbix Proxy 可以代替 Server 收集数据,减轻 Server 的负载。
    • 它还适用于跨机房、跨网段的监控场景。
  5. Agent(代理程序)

    • Zabbix Agent 安装在被监控的设备上,负责收集本地数据(如 CPU、内存使用率)并发送给 Server。

选择 Zabbix 的理由

  1. 高可用性和集群支持

    • Zabbix 支持高可用架构,可以部署多个 Server 和 Proxy,确保监控系统稳定运行。
  2. 开源免费

    • Zabbix 是完全开源的,用户可以免费使用,同时也有活跃的社区支持。
  3. 强大的监控功能

    • 它支持多种监控方式,可以满足各种复杂的监控需求。
  4. 灵活的自定义和扩展性

    • 用户可以根据需要自定义监控项、告警规则和脚本。
  5. 易于部署和操作简便

    • Zabbix 的安装和配置相对简单,Web 界面也非常直观,易于上手。
  6. 高可用性和安全可靠

    • Zabbix 提供了多种安全机制,确保监控数据的安全性和系统的稳定性。
  7. 社区支持和活跃的开发者社区

    • Zabbix 拥有一个活跃的社区,用户可以在社区中获取帮助、分享经验。

Zabbix功能特性

在这里插入图片描述
Zabbix-Agent获取数据 --发送给–>Zabbix-Server服务端—数据会被存放-> 数据库 <— Zabbix Web 页面展示数据


二、Zabbix安装

以下是在 CentOS 7 上安装 Zabbix 的步骤:

准备工作

配置静态网络

在这里插入图片描述

# 学习阶段关闭防火墙
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
#关闭Selinux,将enforcing改成disabled,并重启
[root@localhost ~]# vim /etc/sysconfig/selinux
[root@localhost ~]# reboot

zabbix-server+页面(前端)

1、nginx

配置yum源

备份原始yum源,并移到/root目录下
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# tar -czvf repo.gz.tar *.repo
[root@localhost yum.repos.d]# mv repo.gz.tar  /root
vim /etc/yum.repos.d/nginx.repo

[nginx-stable] 
name=nginx stable repo 
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ 
gpgcheck=1 
enabled=0 
gpgkey=https://nginx.org/keys/nginx_signing.key 
module_hotfixes=true

在这里插入图片描述
安装测试

yum install -y nginx --enablerepo=nginx-stable
rpm -qa | grep nginx
nginx-1.26.1-2.el7.ngx.x86_64


2、php
2.1 php安装

在CentOS 7 系统上配置 YUM 仓库(包括 CentOS 基础仓库、EPEL 仓库和 Webtatic 仓库),然后安装 PHP 7.2 及其常用扩展。通过使用阿里云的镜像仓库,可以加快软件包的下载速度。
nginx 1.26.1 php7.2

#配置Centos仓库,如果有就不用配
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 
#安装 EPEL 仓库
yum install epel-release.noarch -y 
#配置 EPEL 仓库
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo 
#添加webtatic源 
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm 
#安装 PHP 7.2 及其扩展
yum -y install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-fpm php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml php72w-process

检查环境:13个php扩展和一个nginx,一个都不能少

rpm -qa |egrep 'nginx|php72w'

在这里插入图片描述

2.2 nginx+php配置

加入启动项

systemctl enable nginx php-fpm.service
systemctl start nginx php-fpm.service

nginx配置

vim /etc/nginx/conf.d/zbx.oldboylinux.cn.conf

server { 
    listen 80; 
    server_name 10.0.0.15;  #改成服务器ip
    root /app/code/zbx;
    location / { 
        index index.php; 
    } 
    location ~ \.php$ { 
        fastcgi_pass 127.0.0.1:9000; 
        fastcgi_index index.php; 
        fastcgi_param SCRIPT_FILENAME /app/code/zbx$fastcgi_script_name; 
        include fastcgi_params; 
    } 
}

注释:
1. 监听 80 端口,处理来自 服务器IP(10.0.0.15) 的 HTTP 请求。
2. 将网站的根目录设置为 /app/code/zbx,所有请求的文件都会从这个目录中查找。
3. 默认返回 index.php 文件。
4. 将所有 .php 请求转发到本地的 PHP-FPM 服务(127.0.0.1:9000)进行处理。
[root@m03 ~]# nginx -t 
输出ok,successful表示nginx配置正确
[root@m03 ~]# systemctl reload nginx

在这里插入图片描述

php配置

修改php用户和所属组
准备php会话保持目录

sed -ri '/^(user|group)/s#apache#nginx#g' /etc/php-fpm.d/www.conf

egrep '^(user|group)' /etc/php-fpm.d/www.conf

user = nginx 
group = nginx

配置nginx session

#查找会话路径
grep 'var/lib/php/session' /etc/php-fpm.d/www.conf
php_value[session.save_path] = /var/lib/php/session 
#创建会话路径
[root@m03 ~]# mkdir -p /var/lib/php/session 
#更改会话权限
[root@m03 ~]# chown nginx:nginx /var/lib/php/session
#检测并重启php
php-fpm -t
systemctl reload php-fpm.service

在这里插入图片描述
php+nginx测试 (给php创建资源目录)

[root@m03 ~]# mkdir -p /app/code/zbx
[root@m03 ~]# chown nginx:nginx /app/code/zbx
[root@m03 ~]# vim /app/code/zbx/info.php 

<?php 
phpinfo(); 
?> 

权限设置

# 查看文件权限
 ls -l /app/code/zbx/info.php

# 递归修改目录权限(示例以用户 www-data 为例)
chown -R nginx:nginx /app/code/zbx
 # 目录权限:755
find /app/code/zbx -type d -exec chmod 755 {} \; 
# 文件权限:644
find /app/code/zbx -type f -exec chmod 644 {} \;  

cat /app/code/zbx/info.php 

在这里插入图片描述
测试
请添加图片描述
查看日志

tail -f /var/log/nginx/error.log
PHP-FPM 日志(默认位置)tail -f /var/log/php-fpm.log

3、数据库
yum install -y mariadb-server

#启动mariadb 并加入自启动
systemctl start mariadb
systemctl enable mariadb

#免密登录mysql
mysql -u root

#删除多余root账户
delete from user where user='root' and host='127.0.0.1';
delete from user where user='root' and host='::1';

在这里插入图片描述

给mysql root设置密码

mysql_secure_installation
这里设置的密码12456
yy回车yy

在这里插入图片描述

#查看数据库
select user,host from mysql.user ;
#显示数据库
show databases;
#配置数据库
create database zabbix charset utf8 collate utf8_bin; 
grant all on zabbix.* to 'zabbix'@'localhost' identified by '123456' ; #改成自己设置的密码
grant all on zabbix.* to 'zabbix'@'10.0.0.%' identified by '123456' ; #改成自己设置的密码和ip段

MariaDB [(none)]> show databases; 
MariaDB [(none)]> select user,host from mysql.user;

在这里插入图片描述
修改root 远程链接

use mysql;
update user set host='%' where user='root';
FLUSH PRIVILEGES;

在这里插入图片描述
测试数据库
在Navicat创建Zabbix数据库并连接
在这里插入图片描述


4、zabbix-server

Zabbix官网安装教程
在这里插入图片描述

准备工作
但我们是在一台机子上部署,所以下面的操作可以不进行

关闭SELinux及防火墙
1)关闭防火墙
systemctl stop firewalld && systemctl disable firewalld

2)永久禁用SELinux
vi /etc/sysconfig/selinux 
将SELinux=enforcing改为SELinux=disabled

3)重启
reboot

注意:如果不关闭selinux,参照设置:https://www.zabbix.com/documentation/6.0/zh/manual/installation/install_from_packages/rhel_centos#%E9%85%8D%E7%BD%AE-selinux

如果不关闭防火墙,参照设置:
a.开放端口
firewall-cmd --zone=public --add-port=10050/tcp --permanent
firewall-cmd --zone=public --add-port=10051/tcp --permanent
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent
b.重新载入防火墙使设置生效
firewall-cmd --reload

注释:
10050是Zabbix agent端口
10051是Zabbix server端口
3306是mariadb端口
80是nginx的端口

安装zabbix yum源

#安装 Zabbix 官方仓库配置文件
rpm -Uvh https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm 
#替换 Zabbix 仓库源为清华大学镜像
sed -i 's#http://repo.zabbix.com#https://mirrors.tuna.tsinghua.edu.cn/zabbix#g' 

vim /etc/yum.repos.d/zabbix.repo

[zabbix] 
name=Zabbix Official Repository - $basearch 
baseurl=https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/5.0/rhel/7/$basearch/ 
enabled=1 
gpgcheck=0
[zabbix-frontend] 
name=Zabbix Official Repository frontend - $basearch 
baseurl=https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/5.0/rhel/7/$basearch/frontend 
enabled=0 
gpgcheck=0
[zabbix-debuginfo] 
name=Zabbix Official Repository debuginfo - $basearch 
baseurl=https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/5.0/rhel/7/$basearch/debuginfo/ 
enabled=0 
gpgcheck=0
[zabbix-non-supported] 
name=Zabbix Official Repository non-supported - $basearch 
baseurl=http://repo.zabbix.com/non-supported/rhel/7/$basearch/ 
enabled=1 
gpgcheck=0

安装server

yum install -y zabbix-server-mysql zabbix-agent2
#zabbix 数据库导入数据
zcat /usr/share/doc/zabbix-server-mysql-5.0.46/create.sql.gz |mysql -uzabbix -p1 zabbix
#配置连接数据库
vim /etc/zabbix/zabbix_server.conf
grep ^DB /etc/zabbix/zabbix_server.conf
:91

91:DBHost=localhost 
100:DBName=zabbix 
116:DBUser=zabbix 
124:DBPassword=1

启动zabbix-server

#启动zabbix-server 
systemctl enable zabbix-server.service 
systemctl start zabbix-server.service 

ss -lntup|grep zabbix

在这里插入图片描述


5、web部署

源码包下载
选择zabbix-5.0.18.tar.gz下载

#使用源码包 
tar xf zabbix-5.0.18.tar.gz 
cd zabbix-5.0.18/ 
cp -a ui/* /app/code/zbx/ 
chown -R nginx.nginx /app/code/zbx/ 

注释:
1. 解压 Zabbix 5.0.18 的源码包。
2. 将前端文件复制到 Web 服务器的根目录(/app/code/zbx/)。
3. 设置正确的文件权限,确保 Web 服务器可以访问这些文件。

在这里插入图片描述


6. 安装zabbix(zabbix 前端页面连接数据库与zabbix-server)

访问 Zabbix 前端
完成上述步骤后,可以通过浏览器访问 Zabbix 前端:
http://10.0.0.15/setup.php

在这里插入图片描述
报错!!!

在这里插入图片描述

修改如下内容:

vim /etc/php.ini 
368:max_execution_time = 300 
378:max_input_time = 600 
656:post_max_size = 80M 
802:max_file_uploads = 20 
877:date.timezone = Asia/Shanghai 

egrep -n '^(max_|date.timezone|post_max)' /etc/php.ini 
368:max_execution_time = 300 
378:max_input_time = 600 
656:post_max_size = 80M 
802:max_file_uploads = 20 
877:date.timezone = Asia/Shanghai 

 systemctl reload php-fpm.service

在这里插入图片描述
报错!!!warning

界面报错 PHP bcmath extension missing (PHP configuration…

yum install php72w-bcmath
# 重启php
systemctl reload php-fpm.service

刷新,web成功连接数据库
密码为数据库密码
在这里插入图片描述
zabbix前端页面安装完成
在这里插入图片描述
登录:用户Admin:;密码:zabbix
在这里插入图片描述
效果
在这里插入图片描述

到此Zabbix安装完成


Zabbix 就像是一个“全天候的IT保姆”,它可以帮你盯着服务器、网络设备、应用程序等的健康状况。如果出现问题(比如 CPU 爆满、硬盘快满了),它会第一时间通知你。你可以通过漂亮的图表和报告,随时了解系统的运行情况。最重要的是,它是免费的,而且非常灵活,几乎可以监控任何你想监控的东西!

03-15
<think>好的,用户想了解或使用WinHex工具,询问它的使用方法和下载方式。首先,我需要确认用户的需求是什么。WinHex是一个十六进制编辑器和磁盘编辑器,常用于数据恢复、计算机取证等场景。用户可能需要进行磁盘分析、文件恢复,或者处理低数据操作。 接下来,我需要检查提供的引用内容。根据引用[1],用户已经提到了使用WinHex工具,并且有下载链接。不过,引用中的链接显示的是WinHex的官方网站,可能需要确认链接是否有效。同时,引用[2]到[4]的内容似乎和WinHex无关,但用户可能在其他上下文中提到过这些,所以需要专注在引用[1]的信息上。 用户的问题分为两部分:使用方法和下载。关于使用方法,我需要简要介绍WinHex的主要功能,比如十六进制编辑、磁盘克隆、数据恢复等,并给出基本步骤。例如,打开文件或磁盘、进行编辑或分析、保存更改。同时,提醒用户谨慎操作,避免数据丢失。 关于下载,引用[1]中提到了下载地址,但实际检查提供的引用链接是否正确。根据引用[1],正确的下载链接应该是WinHex的官方网站。我需要确保提供的链接准确,并且指导用户如何从官网下载,避免第三方下载带来的风险。 另外,需要注意用户可能对计算机取证或数据恢复不熟悉,所以解释时要简明易懂。同时,强调软件的合法使用,遵守相关法律法规。可能还需要提到系统兼容性,比如支持哪些Windows版本,是否有64位版本等。 最后,考虑到用户可能需要进一步帮助,生成相关问题,如系统兼容性、替代软件、数据恢复步骤等,这样用户可以根据自己的需求继续探索。</think>### WinHex工具使用与下载指南 #### 一、WinHex简介 WinHex是由X-Ways公司开发的十六进制编辑器及磁盘编辑工具,支持文件恢复、磁盘克隆、内存编辑等功能,适用于数据恢复、计算机取证等领域[^1]。 #### 二、下载方法 1. **官网下载** 访问[WinHex官方网站](https://www.winhex.com/winhex/),选择对应系统版本(Windows/Linux) *注意:需购买许可证,试用版功能有限* 2. **功能模块** - 十六进制文件编辑 - 磁盘扇区访问 - RAID重组与内存分析 - 数据擦除与哈希校验 #### 三、基础使用步骤(以文件恢复为例) ```python # 伪代码示例:文件头特征扫描 def file_recovery(disk_image): file_signatures = { "JPEG": b"\xFF\xD8\xFF", "PDF": b"\x25\x50\x44\x46" } scan_clusters(disk_image, file_signatures) ``` 1. 启动WinHex后选择"Open Disk"加载存储设备 2. 使用"Search → Find Hex Values"定位文件特征码 3. 通过"Recovery → Recover File"尝试恢复数据 4. 导出恢复文件前验证哈希值 #### 四、注意事项 - 操作前建议创建磁盘镜像(`Tools → Clone Disk`) - 修改原始存储介质可能导致数据不可逆损坏 - 支持NTFS/EXT4等20+文件系统解析
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值