ubuntu 24.04下如何安装zabbix server7.0+ zabbix proxy7.0 +zabbix agent7.0
环境:
OS:ubuntu 24.04
zabbix:7.0
192.168.1.100 zabbix server
192.168.1.103 zabbix proxy
192.168.1.104 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_latest_7.0+ubuntu24.04_all.deb
dpkg -i zabbix-release_latest_7.0+ubuntu24.04_all.deb ##会生成apt源 zabbix.sources zabbix-tools.sources
apt update
4.安装 MySQL 8.0
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';
查看用户信息
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
listen 80;
server_name _;
# listen 8080; #注释掉
创建软链接让 nginx 加载站点配置,好像本身已经做好了软连接了的
ln -s /etc/zabbix/nginx.conf /etc/nginx/conf.d/zabbix.conf ##不需要重新执行
systemctl reload nginx ##执行这句即可
11.PHP 参数调优
vi /etc/php/8.3/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 restart php8.3-fpm
12.启动服务并开机自启
systemctl enable --now zabbix-server zabbix-agent2 nginx php8.3-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.*80|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.3-fpm
15.Web初始化
浏览器输入
http://192.168.1.100:80
配置完成后会出现登录的窗口,默认的账号密码是Admin/zabbix
############################zabbix proxy########################
说明:
Proxy 作用:分布式采集,Proxy独立数据库(轻量库,只存临时采集数据)
Proxy 和 Server 网络互通,Proxy 需要能访问 Server 10051 端口
1.关闭防火墙
sudo ufw disable
sudo ufw status
2.设置主机名
hostnamectl set-hostname zabbix-proxy
3.添加Zabbix7.0官方源
cd /soft
wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest_7.0+ubuntu24.04_all.deb
dpkg -i zabbix-release_latest_7.0+ubuntu24.04_all.deb ##会生成apt源 zabbix.sources zabbix-tools.sources,所在目录 /etc/apt/sources.list.d
apt update
4.安装 MySQL(Proxy 本地数据库)
apt install -y mysql-server
systemctl enable --now mysql
systemctl enable mysql
systemctl status mysql
##初始化
/usr/bin/mysql_secure_installation
5.修改数据库root账号的密码
mysql -h localhost -uroot
alter user 'root'@'localhost' identified with mysql_native_password by 'zabbix@123';
6.创建 Proxy 数据库和用户
mysql -h localhost -uroot -p'zabbix@123'
create database zabbix_proxy character set utf8mb4 collate utf8mb4_unicode_ci;
create user zabbix@localhost identified by 'zabbix@123';
grant all on zabbix_proxy.* to zabbix@localhost;
flush privileges;
exit;
7.安装zabbix-proxy-mysql
apt install -y zabbix-proxy-mysql zabbix-agent2
apt install -y zabbix-sql-scripts
8.导入 proxy 初始化表结构
mysql -h localhost -uroot -p'zabbix@123'
mysql>SET GLOBAL log_bin_trust_function_creators = 1;
mysql>exit;
cat /usr/share/zabbix-sql-scripts/mysql/proxy.sql | mysql -h localhost -uzabbix -p'zabbix@123' -D zabbix_proxy
9.配置 proxy 主配置
vi /etc/zabbix/zabbix_proxy.conf
Server=192.168.1.100 # 填写你的zabbix server地址
Hostname=zabbix-proxy # 【重要】代理名称!后面web页面必须一模一样
DBHost=localhost
DBName=zabbix_proxy
DBUser=zabbix
DBPassword=zabbix@123
# 模式 0=主动模式;1=被动模式;推荐主动模式0
ProxyMode=0
10. 启动Proxy服务
systemctl enable --now zabbix-proxy zabbix-agent2
systemctl status zabbix-proxy
systemctl restart zabbix-proxy
11.停掉该机器的agent
systemctl stop zabbix-agent2
systemctl disable zabbix-agent2
############################zabbix agent########################
1.关闭防火墙
sudo ufw disable
sudo ufw status
2.设置主机名
hostnamectl set-hostname zabbix-agent
3.添加Zabbix7.0官方源
mkdir /soft
cd /soft
wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest_7.0+ubuntu24.04_all.deb
dpkg -i zabbix-release_latest_7.0+ubuntu24.04_all.deb ##会生成apt源 zabbix.sources zabbix-tools.sources,所在目录 /etc/apt/sources.list.d
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.104
Server=192.168.1.103
ListenPort=10050
ListenIP=192.168.1.104
StartAgents=3 --xxx
ServerActive=192.168.1.103
Hostname=zabbix-agent
RefreshActiveChecks=5
BufferSend=20
BufferSize=100
MaxLinesPerSecond=20 --xx
Timeout=3
AllowRoot=1 --xx
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
#######################################zabbix server端配置##############################
1.添加zabbix agent

这里的Proxy名称必须是zabbix proxy主机名称,不能随便填写

2.添加主机

这里的主机名称就是zabbix agent的主机名称,不能随便填写
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
界面配置监控项

触发器

7.0中已经没有str函数了,这里使用find函数替代

浙公网安备 33010602011771号