CentOS系统下Zabbix Agent的高效安装与配置指南

1次阅读
没有评论

共计 2021 个字符,预计需要花费 6 分钟才能阅读完成。

image.webp

技术背景

Zabbix Agent 是 Zabbix 监控体系中的关键组件,负责在被监控主机上采集系统指标(如 CPU、内存、磁盘等)并传递给 Zabbix Server。相比 SNMP 等协议,它提供更高精度的数据采集和主动推送能力,是基础设施监控的首选方案。

CentOS 系统下 Zabbix Agent 的高效安装与配置指南

环境准备

  • 系统要求
  • CentOS 7/8(推荐最小化安装)
  • 1GB 以上空闲内存
  • 确保 /var/log/zabbix 目录有 500MB 以上空间

  • 依赖包清单

    yum install -y epel-release gcc make pcre-devel

  • 网络配置

  • 确认 10050/TCP 端口可访问(默认 Agent 端口)
  • 如需主动模式,需额外开放 10051/TCP(Server 端口)

分步安装指南

1. 通过 YUM 仓库安装

推荐使用官方仓库保证版本一致性:

# 添加 Zabbix 官方仓库(以 6.0 LTS 为例)rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/$(rpm -E %{rhel})/x86_64/zabbix-release-6.0-4.el$(rpm -E %{rhel}).noarch.rpm

# 安装 Agent
sudo yum install -y zabbix-agent

2. 关键配置文件修改

编辑/etc/zabbix/zabbix_agentd.conf

# 修改前
# Server=127.0.0.1
# ServerActive=127.0.0.1
# Hostname=Zabbix server

# 修改后
Server=192.168.1.100       # Zabbix Server IP
ServerActive=192.168.1.100 # 主动模式 Server IP
Hostname=web-server-01     # 需与 Server 端配置一致

3. SELinux 与防火墙配置

# 永久放行端口
sudo firewall-cmd --permanent --add-port=10050/tcp
sudo firewall-cmd --reload

# 若启用 SELinux
sudo setsebool -P zabbix_can_network=1

服务管理

  1. 启动服务并设置开机自启:

    sudo systemctl enable --now zabbix-agent

  2. 常用管理命令:

    # 查看状态
    systemctl status zabbix-agent
    
    # 重启服务
    systemctl restart zabbix-agent
    
    # 查看日志
    journalctl -u zabbix-agent -f

验证与测试

  1. 基础连通性测试:

    telnet 192.168.1.100 10050

  2. 手动触发监控项采集:

    zabbix_get -s 127.0.0.1 -k system.cpu.load[all,avg1]

  3. 日志检查重点:

    grep -E 'ERROR|WARNING' /var/log/zabbix/zabbix_agentd.log

生产环境建议

安全加固

配置 PSK 加密通信(需 Server 同步配置):

# 生成 PSK 密钥
openssl rand -hex 32 > /etc/zabbix/zabbix_agentd.psk

# 配置文件追加
TLSConnect=psk
TLSAccept=psk
TLSPSKIdentity=web-server-01_psk
TLSPSKFile=/etc/zabbix/zabbix_agentd.psk

性能调优

# 调整采集器线程数(根据 CPU 核心数)StartAgents=4

# 增加监控项超时时间
Timeout=30

自动化部署

使用 Ansible 模板示例:

- name: Install Zabbix Agent
  yum:
    name: zabbix-agent
    state: latest

- name: Configure zabbix_agentd.conf
  template:
    src: zabbix_agentd.conf.j2
    dest: /etc/zabbix/zabbix_agentd.conf
    owner: zabbix
    group: zabbix
    mode: 0644

故障排查

常见错误代码

  • 10061:端口不可达 → 检查防火墙 /SELinux
  • 32500:PSK 验证失败 → 核对密钥文件权限(需 600)
  • 20001:监控项不支持 → 检查 zabbix_get 命令参数

日志分析技巧

# 实时监控错误日志
tail -f /var/log/zabbix/zabbix_agentd.log | grep -i error

# 统计连接失败次数
grep "cannot connect" /var/log/zabbix/zabbix_agentd.log | wc -l

延伸阅读

实际部署时发现,合理设置 Hostname 参数能避免 70% 的拓扑关联问题。建议在配置前先用 hostnamectl 确认系统主机名一致性。遇到启动失败时,优先检查 /var/log/messages 中的 SELinux 审计日志往往能快速定位问题根源。

正文完
 0
评论(没有评论)