rocky 9.5系统安装zabbix监控实现邮件告警

rocky 9.5系统安装zabbix监控实现邮件告警

前期准备:

服务器数量:2台

服务器系统:rocky 9.5,Ubuntu20.04系统各一台

rocky 9.5:https://dl.rockylinux.org/vault/rocky/9.5/isos/x86_64/

Ubuntu20.04:https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/20.04/

1.基础配置

关闭防火墙SELinux

bash 复制代码
systemctl stop firewalld
setenforce 0

2.安装基础软件

tar:解压缩工具

net-tool :网络管理工具

wget:下载工具

bash 复制代码
cat /etc/os-release #查看rocky版本
yum install vim tar net-tools wget -y 

安装lnmp核心软件

l:linux

n:nginx

m:数据库

php:执行web上的各种程序

bash 复制代码
#更新系统软件包索引
yum install nginx    安装nginx主程序
yum  install php php-fpm  安装php
yum  install mysql-server  安装数据库
yum  install php-mysqlnd   安装数据库扩展程序
 #一键安装指令
yum install nginx php php-fpm mysql-server php-mysqlnd

验证安装

bash 复制代码
systemctl status nginx
systemctl status php-fpm  # 注意:版本号可能因 Ubuntu 版本不同(如 php7.4-fpm、php8.2-fpm 等)
systemctl status mysqlnd

先安装zabbix官方yum源

bash 复制代码
rpm -Uvh https://repo.zabbix.com/zabbix/7.2/release/centos/9/noarch/zabbix-release-latest-7.2.el9.noarch.rpm

再安装zabbix相关软件

bash 复制代码
yum install zabbix-server-mysql -y   #-y自动确认参数
yum install zabbix-web-mysql -y 
yum install zabbix-nginx-conf -y
yum install zabbix-sql-scripts -y
yum install zabbix-selinux-policy -y
yum install zabbix-agent -y
#一键安装指令
yum install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent -y

3.数据库配置

数据库基础环境配置

bash 复制代码
systemctl start mysqld  启动服务

mysql -uroot -p  进入数据库
bash 复制代码
mysql_secure_installation

创建zabbix的数据库和用户

bash 复制代码
按zabbix的官方说明,创建数据库,并导入表项
create database zabbix character set utf8mb4 collate utf8mb4_bin;
create user 'zabbix'@'%' identified by '123456';  #用户名zabbix,by后面是密码
grant all privileges on zabbix.* to 'zabbix'@'%';
set global log_bin_trust_function_creators = 1;  #高权限
quit;

导入zabbix数据库表项

bash 复制代码
zcat /usr/share/zabbix/sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix

接下来要输入密码

最后,将mysql的log_bin_trust_function相关权限设置恢复

mysql -uroot -p密码

bash 复制代码
mysql -uroot -p
set global log_bin_trust_function_creators = 0; #关闭高权限
quit;

4.nginx配置

配置文件zabbix.conf

bash 复制代码
cd /etc/nginx/conf.d/
vim zabbix.conf

vim /etc/nginx/conf.d/zabbix.conf

打开监听端口不一定设置8080

保存退出

启动nginx服务,并检查

bash 复制代码
systemctl start nginx
netstat -nltp

5.zabbix服务器配置

编辑配置文件

bash 复制代码
vim /etc/zabbix/zabbix_server.conf

把DBPassword参数设置为我们的密码

启动相关服务,有概率报错

bash 复制代码
systemctl restart zabbix-server zabbix-agent nginx php-fpm
systemctl enable zabbix-server
systemctl enable zabbix-agent
systemctl enable nginx
systemctl  status zabbix-server
systemctl  status zabbix-agent
systemctl  status nginx

6.登陆zabbix ui界面

作者的访问地址:http://192.168.57.99:8080
作者遇到的问题
如果zabbix-server zabbix-agent nginx php-fpm相关服务都启动了
访问不了
可能是防火墙没关

bash 复制代码
# 防火墙状态
firewall-cmd --list-all
# 临时关闭防火墙测试
systemctl stop firewalld
# SELinux 状态
getenforce
# 临时禁用 SELinux 测试
setenforce 0

安装中文包

bash 复制代码
yum install glibc-common glibc-locale-source glibc-langpack-zh -y
localedef -c -f UTF-8 -i zh_CN zh_CN.UTF-8

显示都OK

用户名:Admin

密码:zabbix

7.添加被监控的服务器

此处添加被监控的是Ubuntu20.04系统

首先安装必要的依赖工具(用于添加 HTTPS 源和处理 GPG 密钥):

bash 复制代码
sudo apt update
sudo apt install -y wget apt-transport-https

导入 Zabbix 官方 GPG 密钥

bash 复制代码
 wget https://repo.zabbix.com/zabbix-official-repo.key -O- | sudo apt-key add -

添加 Zabbix 官方源,添加源后,更新本地包缓存

bash 复制代码
sudo sh -c 'echo "deb https://repo.zabbix.com/zabbix/6.0/ubuntu focal main" > /etc/apt/sources.list.d/zabbix.list'
sudo apt update

安装 zabbix agent

bash 复制代码
sudo apt install -y zabbix-agent

防火墙拦截,在 Agent 主机上开放 10050 端口

bash 复制代码
# 若使用 ufw 防火墙
sudo ufw allow 10050/tcp

# 若使用 firewalld
sudo firewall-cmd --add-port=10050/tcp --permanent
sudo firewall-cmd --reload

配置agent

修改两项参数

Server=192.168.57.99 zabbix服务器的ip地址

Hostname=192.168.57.100 被监控对象ip地址

bash 复制代码
vim /etc/zabbix/zabbix_agentd.conf

启动agent服务

bash 复制代码
sudo systemctl start zabbix-agent

等一会

8.告警和邮件告警配置

压力测试,触发告警


CPU达80%以上告警

分配 4GB 内存,持续 120 秒(确保空闲内存足够,避免系统卡顿)

bash 复制代码
stress --cpu 4 --timeout 120s

邮箱告警配置

安装发邮件的软件,最新版系统是s-nail,非最新版是mailx

bash 复制代码
yum install s-nail -y 
或
yum install mailx -y 

修改文件权限

bash 复制代码
chmod +w s-nail.rc
vim /etc/s-nail.rc

再最后一行添加以下代码,保存退出

bash 复制代码
set v15-compat
set from="1787xxxxxxxx@163.com"
set mta=smtps://1787xxxxxxxx%40163.com:NPkvdsN5nQ5saKYD@smtp.163.com:465
set smtp-auth=login

测试邮件

bash 复制代码
echo '邮件内容' | mail -s '邮件主题' xxxxx@189.cn
echo 'zabbix测试' | mail -s '测试主题' 2654583xxxx@qq.com

创建媒介类型

配置如下

拉到最下面------>测试------输入另外一个邮箱------>测试------取消

动作媒介配置


用户配置

被监控的服务器进行压力测试

bash 复制代码
stress --cpu 4 --timeout 120s

发送邮箱

收件邮箱

相关推荐
Web极客码1 小时前
如何在Ubuntu服务器上安装和配置BIND9
服务器·数据库·ubuntu
一叶龙洲3 小时前
解决Ubuntu25.04无法使用快捷键打开
ubuntu
知识分享小能手5 小时前
Ubuntu入门学习教程,从入门到精通,Ubuntu 22.04中的Java与Android开发环境 (20)
java·学习·ubuntu
oMcLin8 小时前
如何在 Ubuntu 22.04 服务器上实现分布式数据库 Cassandra 集群,优化数据一致性与写入吞吐量
服务器·分布式·ubuntu
DigitalOcean9 小时前
Ubuntu服务器快速上手:初始配置与安全设置教程
ubuntu
习惯就好zz10 小时前
在 Ubuntu 18.04 旧系统上部署新版 GitHub Actions Runner 的终极方案
linux·ubuntu·github·cicd·action
白驹过隙^^10 小时前
VitrualBox及ubuntu系统安装
linux·运维·ubuntu
PoppyBu10 小时前
Ubuntu20.04版本上安装最新版本的scrcpy工具
android·ubuntu
烤鱼骑不快11 小时前
ubuntu系统安装以及设置
linux·数据库·ubuntu
HIT_Weston11 小时前
89、【Ubuntu】【Hugo】搭建私人博客:侧边导航栏(三)
linux·运维·ubuntu