我们耐心按照顺序依次排查下,一般就如下这几个原因,挺简单的
1、 可能是agent主机ping不通server主机,或访问不到server端口
我们可以在agent主机使用ping [server主机IP]
和telnet [server主机IP] 9999
来测试连通性
也可以看看agent/log下的日志文件,是否有什么错误提示信息
2、 检查下agent配置文件的serverUrl
可能是其中的字符格式有问题,比如逗号和冒号写成了中文字符,也可能是IP或者端口书写错误
3、 server和agent的主机系统时间差不能大于16个小时
若时间差不超过16小时打印【防篡改校验错误】类似信息,忽略即可,不会有影响
4、 是不是agent的进程wgcloud-agent被kill掉了,或者agent主机重启或断电,导致agent没有运行
我们再把agent启动就可以了
5、 wgcloud-server-release.jar不要编辑修改
也不要改文件名称,若编辑过,请还原到安装包里的原始wgcloud-server-release.jar即可
6、 server和agent要保持同一个版本号
7、server端的守护进程(wgcloud-daemon-release)不要关闭
特别是Windows不要关闭守护进程窗口。若是Linux,守护进程可能是被kill了,查看守护进程是否还存活(ps -ef | grep wgcloud
)
还有一种可能是server部署在Windows,不小心左键点击守护进程的窗口,进入编辑模式了,右击恢复就好了
如果是此原因导致的话,重启server即可(守护进程会随着server启动),1小时内所有被控端agent会陆续恢复上线,也可以手动重启agent(立即上线)
8、 修改了守护进程wgcloud-daemon-release的默认端口导致的,但是server配置文件中没有同步修改守护进程端口
9、查看server本机是否能正常访问http://localhost:9997
获得返回值
如:2faa233a1400201bedc199fe1d8ab393,若server主机的localhost不能使用,可以在配置文件server/config/application.yml,将如下配置项中的localhost改成server主机ip
注意,如果改成IP后,检查下是否有防火墙拦截该端口9997
10、在server日志看看,是不是server连不上数据库了
如果是这种情况的话,处理好server后,agent就会在1小时内陆续上线,也可以重启agent会立即上线
11、server如果运行在ARM、MIPS等CPU架构的系统,需要将守护进程wgcloud-daemon-release替换为对应的版本
12、如果server或守护进程(wgcloud-daemon-release)长时间没有启动运行
那么当server重新启动后,agent会在1小时内陆续自动恢复上线,不用重启agent。也可以手动重启agent,会立刻恢复上线
13、检查是不是有安全软件,设置了一些过滤规则,导致agent无法将数据上报给server
有的防火墙设置了规则很奇怪,agent可以从server请求获取数据,但是无法给server提交上报数据
14、如果是在docker部署 server
我们检查下是否把config/application.yml中的守护进程url中的localhost改为宿主机ip了,如下
一般需要改下,除非是docker容器内可以访问http://localhost:9997
的话,那就可以不改
15、一般就如上这些原因