ununtu26下安装zabbix server 7.0 + zabbix agent 7.0

环境:
OS:ubuntu26
zabbix:7.0
机器角色:
192.168.1.100 zabbix server
192.168.1.107 zabbix agent

 

############################zabbix server########################
1.关闭防火墙
sudo ufw disable
sudo ufw status

 

2.设置主机名
hostnamectl set-hostname zabbix-server


3.添加Zabbix7.0官方源
cd /soft
wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_7.0-2%2Bubuntu26.04_all.deb
dpkg -i zabbix-release_7.0-2+ubuntu26.04_all.deb ##会生成apt源 zabbix.sources zabbix-tools.sources
apt update

 

4.安装 MySQL 8.4
ubuntu26 默认是安装mysql8.4了
apt install -y mysql-server
# 启动并开机自启
systemctl enable --now mysql
查看运行状态
systemctl status mysql

 

5.MySQL初始化
这里设置密码为 zabbix@123
root@localhost:/etc/apt/sources.list.d#/usr/bin/mysql_secure_installation

修改root账号的密码,默认是空密码的
mysql -h localhost -uroot
alter user 'root'@'localhost' identified with mysql_native_password by 'zabbix@123';

mysql> alter user 'root'@'localhost' identified with mysql_native_password by 'zabbix@123';
ERROR 1524 (HY000): Plugin 'mysql_native_password' is not loaded

解决办法:
修改 /etc/mysql/mysql.conf.d/mysqld.cnf 永久开启
[mysqld]
mysql_native_password=on

然后重启mysql
systemctl stop mysql
systemctl start mysql

然后重新执行
mysql> alter user 'root'@'localhost' identified with mysql_native_password by 'zabbix@123';
Query OK, 0 rows affected (0.00 sec)

查看用户信息
select user,host,plugin,authentication_string from mysql.user;

 

6.创建 Zabbix 数据库与账号
mysql -h localhost -uroot -p'zabbix@123'

CREATE DATABASE zabbix CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER zabbix@localhost identified BY 'zabbix@123';
GRANT ALL ON zabbix.* TO zabbix@localhost;
FLUSH PRIVILEGES;
exit;

尝试使用zabbix账号登录
mysql -h localhost -uzabbix -p'zabbix@123'

 

7.安装 Zabbix Server + Web + Nginx + PHP
apt clean
apt update
apt install -y zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-agent2 zabbix-sql-scripts


8.导入数据库初始 schema
mysql -h localhost -uroot -p'zabbix@123'
SET GLOBAL log_bin_trust_function_creators = 1;
exit;
root@localhost#zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql -h localhost -uzabbix -p'zabbix@123' -D zabbix

 

9.配置 zabbix-server
vi /etc/zabbix/zabbix_server.conf

DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix@123 # 和数据库创建密码一致


10.Nginx Web 配置调整
vi /etc/zabbix/nginx.conf
修改监听端口,默认 8080,可以改成 80,我这里保持默认的,将注释去掉,server_name 修改为 _
listen 8080;
server_name _;


创建软链接让 nginx 加载站点配置,好像本身已经做好了软连接了的
ln -s /etc/zabbix/nginx.conf /etc/nginx/conf.d/zabbix.conf ##不需要重新执行

root@zabbix-server:/# ls -al /etc/nginx/conf.d/zabbix.conf
lrwxrwxrwx 1 root root 22 Aug 7 09:47 /etc/nginx/conf.d/zabbix.conf -> /etc/zabbix/nginx.conf

systemctl reload nginx ##执行这句即可


11.PHP 参数调优
vi /etc/php/8.5/fpm/php.ini
我这里只修改了date.timezone,其他没有修改
max_execution_time = 300
memory_limit = 256M
post_max_size = 16M
upload_max_filesize = 2M
date.timezone = Asia/Shanghai

 

重启 php-fpm
systemctl status php8.5-fpm
systemctl stop php8.5-fpm
systemctl start php8.5-fpm


12.启动服务并开机自启
systemctl enable --now zabbix-server zabbix-agent2 nginx php8.5-fpm
# 查看状态
systemctl status zabbix-server
systemctl status mysql

13.删除默认的站点
unlink /etc/nginx/sites-enabled/default
nginx -t
systemctl reload nginx
nginx -T | grep -E 'listen.*8080|server_name'

14.安装中文包
14.1 安装中文包
apt install -y language-pack-zh-hans language-pack-zh-hans-base locales


14.2 编辑locale配置,打开zh_CN.UTF-8
sed -i 's/# zh_CN.UTF-8 UTF-8/zh_CN.UTF-8 UTF-8/' /etc/locale.gen
# 生成locale文件
locale-gen


14.3验证中文 locale 是否生成成功
root@localhost:~# locale -a | grep zh_CN
zh_CN.utf8

14.5 重启 PHP-FPM(最重要,PHP 进程必须重载环境)
systemctl restart php8.5-fpm


15.Web初始化
浏览器输入
http://192.168.1.100:8080
配置完成后会出现登录的窗口,默认的账号密码是Admin/zabbix

 

 

############################zabbix agent########################

192.168.1.107
1.关闭防火墙
sudo ufw disable
sudo ufw status

 

2.设置主机名
hostnamectl set-hostname zabbix-agent

 

3.添加Zabbix7.0官方源
cd /soft
wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_7.0-2%2Bubuntu26.04_all.deb
dpkg -i zabbix-release_7.0-2+ubuntu26.04_all.deb ##会生成apt源 zabbix.sources zabbix-tools.sources
apt update

 

4.安装agent端
apt install -y zabbix-agent2

 

5.编辑配置文件
vi /etc/zabbix/zabbix_agent2.conf

[root@zabbix-agent zabbix]# more zabbix_agentd.conf
PidFile=/run/zabbix/zabbix_agent2.pid
LogFile=/var/log/zabbix/zabbix_agent2.log
LogFileSize=1
DebugLevel=3
SourceIP=192.168.1.107
Server=192.168.1.100
ListenPort=10050
ListenIP=192.168.1.107
ServerActive=192.168.1.100
Hostname=zabbix-agent
RefreshActiveChecks=5
BufferSend=20
BufferSize=100
Timeout=3
Include=/etc/zabbix/zabbix_agentd.d/*.conf
UnsafeUserParameters=1
AllowKey=system.run[*]


6.启动服务
systemctl restart zabbix-agent2
systemctl enable --now zabbix-agent2
systemctl status zabbix-agent2


7.自动发现
若想使用自动发放发现,需要进行如下修改
7.1 修改配置文件


#ServerActive=192.168.1.100 #注释主动模式
#Hostname=zabbix-agent #被动模式下Hostname可以注释,使用HostnameItem
HostnameItem=system.hostname ##原来注释的要启用

 

7.2 重启动
systemctl restart zabbix-agent2

 

7.3 界面启用自动发现

 

image

 

 

image

 

 


7.4 自动发现动作配置

 

image

 

image

 

3.自定义监控项测试

 

mkdir -p /etc/zabbix/scripts ##自定义脚本目录
3.1 在zabbix agent添加脚本

[root@zabbix-agent scripts]# more /etc/zabbix/scripts/es_check_available.sh 
#!/bin/bash
available_flag=1

if [ $available_flag -eq 1 ] ; then
   echo "ok"
else
   echo "failed"
fi

 

配置项
[root@zabbix-agent zabbix_agentd.d]# more /etc/zabbix/zabbix_agent2.d/es.conf
UserParameter=check_es_available,sh /etc/zabbix/scripts/es_check_available.sh

重启zabbix agent服务
systemctl restart zabbix-agent2

 

界面添加监控项和触发器

image

 

 

 

image

 

 

 

 

 

 

 

posted @ 2026-08-07 11:33  slnngk  阅读(22)  评论(0)    收藏  举报