当前位置: 首页 > news >正文

在国产麒麟V10上手动编译Zabbix-Agent,我踩过的坑和最佳实践

在国产麒麟V10上手动编译Zabbix-Agent的深度实践指南麒麟操作系统作为国产化替代的重要选择在信创领域扮演着关键角色。而Zabbix作为企业级监控解决方案其客户端部署在国产环境中的适配往往充满挑战。本文将分享我在麒麟V10arm64架构上从源码编译Zabbix-Agent的全过程特别是那些官方文档未曾提及的坑与解决方案。1. 环境准备与依赖处理1.1 系统基础检查在开始编译前必须确认系统环境符合要求。执行以下命令检查系统信息uname -a cat /etc/os-release典型输出应显示类似内容Linux hostname 4.19.90-24.4.v2101.ky10.aarch64 #1 SMP Mon Jan 18 17:03:23 CST 2021 aarch64 aarch64 aarch64 GNU/Linux NAMEKylin Linux Advanced Server VERSIONV10 (Tercel)常见问题1麒麟V10的默认软件源可能缺少部分开发依赖包。解决方法是通过以下命令添加必要的软件源sudo tee /etc/yum.repos.d/extra.repo -EOF [extra] nameExtra Packages baseurlhttp://archive.kylinos.cn/kylin/KYLIN-ALL/10.1/partner/aarch64/ enabled1 gpgcheck0 EOF1.2 依赖库安装Zabbix-Agent编译需要以下关键依赖依赖包作用安装命令gcc编译器sudo yum install gccmake构建工具sudo yum install makepkg-config库配置工具sudo yum install pkgconfigopenssl-devel加密支持sudo yum install openssl-develzlib-devel压缩支持sudo yum install zlib-devel注意麒麟V10特有的依赖问题某些情况下需要额外安装libevent-devel如果遇到configure: error: Invalid OpenSSL library尝试指定openssl路径export LDFLAGS-L/usr/lib64/openssl export CPPFLAGS-I/usr/include/openssl2. 源码获取与编译优化2.1 源码下载策略推荐从Zabbix官方下载稳定版本同时考虑国内网络环境wget https://cdn.zabbix.com/zabbix/sources/stable/6.0/zabbix-6.0.9.tar.gz验证完整性echo a1b2c3d4e5f6... zabbix-6.0.9.tar.gz | sha256sum -c2.2 编译参数调优针对arm64架构的编译优化配置./configure \ --prefix/usr/local/zabbix \ --sysconfdir/etc/zabbix \ --enable-agent \ --enable-ipv6 \ --with-openssl \ --with-libcurl \ --with-libpthread \ --with-libmodbus关键参数解析--enable-agent仅编译agent组件--with-openssl启用加密通信--sysconfdir指定配置文件目录常见编译错误处理若出现undefined reference to clock_gettime在LDFLAGS中添加-lrt内存不足时可添加-j2参数限制并行编译任务数3. 系统服务集成与权限管理3.1 专用用户创建安全最佳实践是使用专用用户运行Zabbix-Agentsudo groupadd --system zabbix sudo useradd --system -g zabbix -d /usr/lib/zabbix \ -s /sbin/nologin -c Zabbix Monitoring System zabbix目录权限设置sudo mkdir -p /usr/lib/zabbix /run/zabbix sudo chown zabbix:zabbix /usr/lib/zabbix /run/zabbix sudo chmod 750 /usr/lib/zabbix3.2 systemd服务文件定制麒麟V10使用systemd管理服务创建/usr/lib/systemd/system/zabbix-agent.service[Unit] DescriptionZabbix Agent Afternetwork.target syslog.target [Service] Typeforking Restarton-failure PIDFile/run/zabbix/zabbix_agentd.pid ExecStart/usr/local/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf ExecStop/bin/kill -SIGTERM $MAINPID Userzabbix Groupzabbix RestartSec10s [Install] WantedBymulti-user.target关键配置项说明TypeforkingZabbix-Agent以守护进程方式运行Restarton-failure异常退出时自动重启User/Group指定运行身份启用服务sudo systemctl daemon-reload sudo systemctl enable --now zabbix-agent4. 配置调优与连通性验证4.1 关键配置参数/etc/zabbix/zabbix_agentd.conf核心配置Server192.168.1.100 # Zabbix Server IP ServerActive192.168.1.100 # 主动检查的Server IP HostnameKylin-V10-Node1 # 客户端主机标识 PidFile/run/zabbix/zabbix_agentd.pid LogFile/var/log/zabbix/zabbix_agentd.log LogFileSize10 EnableRemoteCommands0 Timeout30安全增强建议设置AllowKeysystem.run[*]限制可执行命令通过TLSConnectpsk和TLSAcceptpsk启用加密通信4.2 连通性测试方法被动模式测试zabbix_get -s 127.0.0.1 -k system.cpu.load[all,avg1]主动模式检查tail -f /var/log/zabbix/zabbix_agentd.log | grep sending防火墙配置sudo firewall-cmd --permanent --add-port10050/tcp sudo firewall-cmd --reload5. 疑难问题排查指南5.1 常见错误与解决方案问题1服务启动失败日志显示cannot create PID file解决方案sudo mkdir -p /run/zabbix sudo chown zabbix:zabbix /run/zabbix问题2Server端显示host [xxx] not found排查步骤确认agent配置中的Hostname与Server端定义一致检查DNS解析或/etc/hosts配置验证网络连通性5.2 性能监控与日志分析关键监控指标zabbix_agentd.ping基础存活检查proc.num[zabbix_agentd]进程数监控system.cpu.utilCPU使用率日志分析技巧journalctl -u zabbix-agent -f --since 1 hour ago对于高频监控需求建议调整StartAgents3 BufferSize1006. 高级配置与安全加固6.1 PSK加密通信配置生成PSK密钥openssl rand -hex 32 /etc/zabbix/zabbix_agentd.psk chown zabbix:zabbix /etc/zabbix/zabbix_agentd.psk chmod 400 /etc/zabbix/zabbix_agentd.psk配置zabbix_agentd.confTLSConnectpsk TLSAcceptpsk TLSPSKIdentityKylin_PSK_01 TLSPSKFile/etc/zabbix/zabbix_agentd.psk6.2 自定义监控项开发示例监控麒麟系统特定指标创建自定义配置文件/etc/zabbix/zabbix_agentd.d/kylin.confUserParameterkylin.version,cat /etc/os-release | grep PRETTY_NAME | cut -d -f2 UserParameterkylin.security.update,dnf check-update --security | wc -l测试自定义监控项zabbix_agentd -t kylin.version6.3 资源限制配置通过cgroups限制资源使用sudo tee /etc/systemd/system/zabbix-agent.service.d/limits.conf -EOF [Service] MemoryLimit512M CPUQuota50% EOF应用配置sudo systemctl daemon-reload sudo systemctl restart zabbix-agent
http://www.rkmt.cn/news/1373758.html

相关文章:

  • 告别U盘!用Samba在Ubuntu 22.04上给Windows建个‘云盘’(保姆级图文)
  • 保姆级排查:CentOS7 GNOME桌面黑屏,从tty2终端一步步救回图形界面
  • CVE-2017-0144漏洞原理与企业级SMB安全加固指南
  • 基于一致性哈希的 Harness 有状态路由
  • crAPI靶场实战:API安全漏洞深度解析与Burp Suite攻防技巧
  • 随机数值线性代数:从子空间嵌入到机器学习优化实战
  • 张正友标定法到底在干啥?用大白话和Python代码带你理解相机畸变与内参矩阵
  • 从科研到落地:手把手教你用Python预处理PhysioNet ECG数据(附PTB-XL实战代码)
  • 棋牌网站渗透测试实战:弱口令与SQL注入组合利用
  • 【ChatGPT】未来先进CMP(化学机械抛光)设备及其控制系统软硬件架构的深度拆解、爆炸图、信息图、C++代码框架
  • Armv8-A架构扩展:安全防护与高性能计算解析
  • K6 HTTP性能测试实战:请求控制、指标可信与检查可追溯
  • JMeter、ab、Postman并发压测原理与避坑指南
  • 2026监狱门厂家怎么选:监狱门/防弹门窗/防爆墙/防爆窗/防爆门/防辐射门/隔声门/隧道防护门/密闭窗/工业门/选择指南 - 优质品牌商家
  • 告别驱动冲突:在预装NVIDIA驱动的Deepin V23 Beta3上干净安装指定版本显卡驱动
  • Mac上mitmproxy HTTPS抓包实战:证书配置与Python脚本化
  • Unity生存游戏底层架构:资源约束与状态耦合引擎设计
  • Unity生存游戏开发:ECS架构下的物理化生存系统实现
  • 2026年5月更新:广东定制卡通公仔实力厂家的选型指南与趋势洞察 - 2026年企业推荐榜
  • 2026可靠婚庆公司推荐榜:启动道具租赁、奠基仪式、奠基石、婚庆公司、婚庆策划公司、封顶仪式策划公司、庆典公司选择指南 - 优质品牌商家
  • AICore:达芬奇架构的心脏怎么跳
  • 解决Ubuntu 22.04下载慢/连不上?一键脚本+图形化界面,双管齐下搞定DNS和APT源
  • 北京游学机构哪家好?包含鸟巢水立方路线的研学机构推荐 - 品牌2025
  • 2026扁钢技术全解析:兰州三通/兰州不锈钢板/兰州不锈钢管/兰州中厚板/兰州保温管/兰州冷板/兰州变径/兰州圆钢/选择指南 - 优质品牌商家
  • Arm嵌入式开发中的代码覆盖率分析实践
  • Fiddler HTTPS抓包失败原因与证书信任机制详解
  • Ubuntu 20.04上源码编译ROS2 Humble,我踩过的那些坑和最终解决方案
  • 探索2026年现阶段展厅展馆新趋势,蓝海文化科技如何引领行业升级 - 2026年企业推荐榜
  • 全局门量子电路:突破贫瘠高原,实现高表达与可训练性平衡
  • OTSU算法实战:用Python+NumPy从零实现图像二值化(附常见坑点解析)