业务端口被Agent占用该如何处理?
云监控服务的Agent插件会使用HTTP请求上报数据,使用过程中会随机占用动态端口,范围取自/proc/sys/net/ipv4/ip_local_port_range。若发现使用的业务端口与Agent使用的端口冲突,可以修改/proc/sys/net/ipv4/ip_local_port_range,并重启Agent解决此问题。
约束与限制
当前章节的修复方式只支持新版本Agent,若Agent版本为老版本,建议先升级到新版本。
查看当前Agent版本的命令为:
if [[ -f /usr/local/uniagent/extension/install/telescope/bin/telescope ]]; then /usr/local/uniagent/extension/install/telescope/bin/telescope -v; elif [[ -f /usr/local/telescope/bin/telescope ]]; then echo "old agent"; else echo 0; fi
- 返回“old agent”,表示使用老版本Agent。
- 返回版本号,表示使用新版本Agent。
- 返回“0”,表示未安装Agent。
操作步骤
- 使用root用户登录主机。
- 执行如下命令,打开sysctl.conf文件。
- (永久修改)在sysctl.conf文件添加新的端口配置。
- 执行如下命令,使修改生效。
- 永久性修改,重启主机后依旧生效。
- 若要临时修改(重启主机后失效),请执行# echo 49152 65536 > /proc/sys/net/ipv4/ip_local_port_range。
- 请执行如下命令,重启Agent。
- Windows系统下:
- 在Agent安装包存放目录下,先双击执行shutdown.bat脚本,停止Agent,再执行start.bat脚本,启动Agent。
- Linux系统下:
- 执行以下命令查看telescope的PID。
- ps -ef |grep telescope
- 强制关闭进程后等待3-5分钟telescope可实现自动重启,操作示例如图1所示。
- kill -9 PID
- Windows系统下: