当前位置: 代码网 > it编程>数据库>Mysql > 如何在Ubuntu 24.04上部署Zabbix 7.0对服务器进行监控

如何在Ubuntu 24.04上部署Zabbix 7.0对服务器进行监控

2025年07月07日 Mysql 我要评论
软硬件信息服务器阿里云ecs * 3 4核8g 100g操作系统ubuntu24.04架构一台阿里云ecs实例部署 zabbix server + mariadb两台阿里云ecs实例(被监控服务器)网

软硬件信息

  • 服务器

    • 阿里云ecs * 3 4核8g 100g
  • 操作系统

    • ubuntu24.04
  • 架构

    • 一台阿里云ecs实例部署 zabbix server + mariadb

    • 两台阿里云ecs实例(被监控服务器)

  • 网络要求

    • 所有ecs实例需公网ip或vpc内网通信。
    • 开放以下端口:
      • zabbix server:10051(tcp,zabbix server接收agent数据)、80/443(http/https,web界面)。
      • 被监控服务器:10050(tcp,zabbix agent监听)。
    • 阿里云安全组配置:确保上述端口已开放(参考阿里云控制台)。
  • 权限:root或sudo权限。

  • 软件:zabbix 7.0支持mariadb,需与zabbix server同机部署。

部署步骤

步骤 1:安装并配置mariadb

  1. 更新系统

    sudo apt update && sudo apt upgrade -y
  2. 安装mariadb

    sudo apt install mariadb-server -y
  3. 保护mariadb安装

    sudo mysql_secure_installation
    • 设置root密码(记录下来)。
    • 回答提示
      • 启用密码验证(y)
      • 移除匿名用户(y)
      • 禁用远程root登录(y)
      • 移除测试数据库(y)
      • 刷新权限(y)
  4. 创建zabbix数据库和用户

    sudo mysql -uroot -p

    在mariadb提示符下执行:

    create database zabbix character set utf8mb4 collate utf8mb4_bin;
    create user 'zabbix'@'localhost' identified by 'strongpassword123';
    grant all privileges on zabbix.* to 'zabbix'@'localhost';
    flush privileges;
    exit;
    • 替换strongpassword123为强密码并记录。

步骤 2:安装zabbix 7.0 server

  1. 添加zabbix 7.0仓库

    wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_7.0-1+ubuntu24.04_all.deb
    sudo dpkg -i zabbix-release_7.0-1+ubuntu24.04_all.deb
    sudo apt update
  2. 安装zabbix server、frontend和agent

    sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent -y
    • 注:zabbix-server-mysql兼容mariadb,无需额外包。
  3. 导入zabbix数据库架构

    zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix
    • 输入strongpassword123(步骤2设置的密码)。
    • 导入可能需要几分钟。
  4. 配置zabbix server
    编辑/etc/zabbix/zabbix_server.conf

    sudo nano /etc/zabbix/zabbix_server.conf

    设置以下参数(替换密码):

    dbname=zabbix
    dbuser=zabbix
    dbpassword=strongpassword123

    保存并退出(ctrl+x,y,enter)。

  5. 启动zabbix server和agent

    sudo systemctl start zabbix-server zabbix-agent
    sudo systemctl enable zabbix-server zabbix-agent

步骤 3:配置apache和php

  1. 安装apache和php依赖
    zabbix前端需要apache和php模块,步骤3已安装部分依赖,确认安装:

    sudo apt install apache2 libapache2-mod-php php-mysql php-gd php-xml php-bcmath php-mbstring -y
  2. 配置php
    编辑/etc/php/8.3/apache2/php.ini(ubuntu 24.04默认php 8.3):

    sudo nano /etc/php/8.3/apache2/php.ini

    确保以下设置:

    memory_limit = 256m
    upload_max_filesize = 16m
    post_max_size = 16m
    max_execution_time = 300
    max_input_time = 300
    max_input_vars = 10000
    date.timezone = asia/shanghai

    保存并退出。

  3. 配置apache
    确保zabbix前端配置文件已启用:

    # 如果次数启动时,提示error: conf zabbix-frontend-php does not exist!
    # 可以查看/etc/apache2/conf-available目录下是否有zabbix.conf文件
    # 如果有将zabbix-frontend-php换成zabbix
    sudo a2enconf zabbix-frontend-php
    sudo systemctl restart apache2

步骤 4:完成zabbix web界面配置

  1. 打开浏览器,访问http://<zabbix-server-ip>/zabbix
  2. 按照向导操作:

欢迎页面:点击“next step”。

检查先决条件:确保所有值显示“ok”,点击“next step”。

  • 配置数据库

    • database type: mysql(mariadb兼容)

    • database host: localhost

    • database name: zabbix

    • user: zabbix

    • password: strongpassword123

    • 点击“next step”。

  • 服务器详情

    • host: 留空或输入zabbix服务器ip。
    • port: 10051
    • name: 可选(如“zabbix server”)。
    • 点击“next step”。
  • 预安装摘要:确认配置,点击“next step”。

  • 完成:点击“finish”,生成配置文件/etc/zabbix/web/zabbix.conf.php

  1. 登录zabbix仪表板:
    • url:http://<zabbix-server-ip>/zabbix
    • 默认凭据:用户名admin,密码zabbix(立即更改密码)。

步骤 5:在两台阿里云ecs上安装zabbix agent

在每台被监控的ecs实例(称为ecs1和ecs2)上执行:

  1. 登录ecs实例ssh root@<ecs-ip>)。

  2. 添加zabbix仓库

    wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_7.0-1+ubuntu24.04_all.deb
    sudo dpkg -i zabbix-release_7.0-1+ubuntu24.04_all.deb
    sudo apt update
  3. 安装zabbix agent

    sudo apt install zabbix-agent -y
  4. 配置zabbix agent
    编辑/etc/zabbix/zabbix_agent.conf

    # /etc/zabbix这个目录下的是zabbix_agentd.conf就编辑zabbix_agentd.conf
    # 如果这个目录下的是zabbix_agentd2.conf,就编辑zabbix_agentd2.conf
    sudo vim /etc/zabbix/zabbix_agentd.conf

    设置以下参数:

    server=<zabbix-server-ip>
    serveractive=<zabbix-server-ip>
    hostname=<unique-hostname>
    • 替换<zabbix-server-ip>为zabbix server公网ip。
    • 替换<unique-hostname>为唯一主机名(如ecs1ecs2)。
    • 保存并退出。
  5. 开放端口10050

    • 在阿里云控制台为ecs1和ecs2的安全组添加入站规则,允许tcp 10050。
    • 本地防火墙(如ufw):
      sudo ufw allow 10050/tcp
  6. 重启zabbix agent

    sudo systemctl restart zabbix-agent
    sudo systemctl enable zabbix-agent

步骤 6:在zabbix server上添加监控主机

  1. 登录zabbix web界面(http://<zabbix-server-ip>/zabbix)。
  2. 导航至 monitoring > hosts > create host
  3. 为每台ecs配置:
    • host name:输入唯一主机名(与agent配置中的hostname一致,如ecs1)。
    • groups:选择或创建主机组(如“alicloud ecs”)。
    • interfaces
      • type: agent
      • ip address: 输入ecs的公网ip(如ecs1的ip)。
      • port: 10050
    • templates:点击“select”,选择“template os linux by zabbix agent”。
    • status:确保为“enabled”。
  4. 点击“add”保存。
  5. 重复为ecs2配置(主机名如ecs2)。

步骤 7:验证监控

  1. 等待5-10分钟,zabbix server开始收集数据。
  2. 导航至 monitoring > latest data,选择主机组或主机(如ecs1ecs2),检查cpu、内存、磁盘等指标。
  3. 若无数据,检查:
    • zabbix server日志:sudo tail -f /var/log/zabbix/zabbix_server.log
    • zabbix agent日志:sudo tail -f /var/log/zabbix/zabbix_agentd.log
    • 确保阿里云安全组和本地防火墙允许10050/10051端口。

步骤 8:优化和安全

  1. 更改默认密码

    • 导航至 administration > users,更新admin用户密码。
  2. 启用https

    • 使用let’s encrypt配置ssl:
      sudo apt install certbot python3-certbot-apache
      sudo certbot --apache
      • 按提示配置域名或ip,重启apache:
        sudo systemctl restart apache2
  3. 优化zabbix server(若监控更多设备):
    编辑/etc/zabbix/zabbix_server.conf

    sudo vim /etc/zabbix/zabbix_server.conf

    添加:

    startpollers=100
    startpollersunreachable=50
    startpingers=50
    starttrappers=10
    startdiscoverers=10
    cachesize=128m
    historycachesize=64m
    historyindexcachesize=32m
    trendcachesize=32m
    valuecachesize=256m

    重启:

    sudo systemctl restart zabbix-server
  4. 备份数据库

    mysqldump -u zabbix -p zabbix > zabbix_backup.sql

步骤 9:故障排查

  • zabbix server未运行
    • 检查状态:sudo systemctl status zabbix-server
    • 检查配置文件:/etc/zabbix/zabbix_server.conf
    • 验证数据库连接:mysql -uzabbix -p -e "select 1"
  • agent无法连接
    • 确保serverserveractive设置为zabbix server ip。
    • 检查阿里云安全组和ufw规则。
  • web界面错误
    • 验证php配置:/etc/php/8.3/apache2/php.ini
    • 检查apache日志:sudo tail -f /var/log/apache2/error.log

最终结果

完成以上步骤后,zabbix 7.0将在ubuntu 24.04上运行,使用mariadb数据库(同机部署),成功监控两台阿里云ecs服务器(ecs1和ecs2)。通过web界面(http://<zabbix-server-ip>/zabbix)可查看实时数据、设置警报和生成报告。

参考资料

  • zabbix官方文档:https://www.zabbix.com/documentation/7.0/
  • alibaba cloud ecs文档:https://www.alibabacloud.com/help/
  • mariadb官方文档:https://mariadb.com/kb/en/

到此这篇关于如何在ubuntu 24.04上部署zabbix 7.0对服务器进行监控的文章就介绍到这了,更多相关zabbix服务器监控内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com