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

发送邮箱

收件邮箱

相关推荐
淮北4942 小时前
如何在ubuntu调用exe文件
linux·运维·ubuntu
HIT_Weston7 小时前
26、【Ubuntu】【远程开发】内网穿透:密钥算法介绍(二)
linux·运维·ubuntu
请叫我阿杰11 小时前
Ubuntu系统安装.NET SDK 7.0
数据库·ubuntu·.net
路人甲ing..16 小时前
Ubuntu 怎么把树莓派内存卡备份制作成为镜像
linux·运维·ubuntu
longerxin202018 小时前
ubuntu所有版本镜像下载链接
linux·运维·ubuntu
李昊哲小课21 小时前
Ubuntu 24.04 安装开源WebRTC信令服务器
服务器·ubuntu·mediasoup·janus·信令服务器
wsad05321 天前
Ubuntu 24.04 更换国内软件源(以阿里云为例)
linux·ubuntu·阿里云
玖剹1 天前
多线程编程:从日志到单例模式全解析
java·linux·c语言·c++·ubuntu·单例模式·策略模式
BD_Marathon1 天前
将 CentOS 风格的命令行提示符(如 [root@slave1 ~]#)修改为 Ubuntu 风格
linux·ubuntu·centos
q***96581 天前
如何在 Ubuntu 22.04 上安装 MySQL
linux·mysql·ubuntu