Jenkins web页面莫名其妙无法访问

最近几天经常遇到jenkins web无法访问的情况,systemctl restart jenkins.service后就正常了。

现象如下:

1. systemctl status jenkins.service,发现后台service运行正常

2. ps -ef | grep jenkins没有结果;netstat -tnlp | grep 8083也无结果。很好奇,systemctl status和ps查询结果为啥对应不上。。

3. 查询jenkins.log,根据systemctl status jenkins.service可知启动文件位置,再找到jenkins.log位置

 发现莫名其妙启动jenkins,而且出现端口占用的异常,实在没想明白。

4. top操作,发现jenkins内存占用一直11.7%以上,16G内存,也就是长期占用接近2G,是否可能是linux的OOM-killer造成的?

5. 查询linux主动kill的进程日志,发现28323就是之前jenkins的pid

为确认kill进程的原因,查询内核日志,dmesg -T -d | grep java

的确是因为OOM,jenkins服务占用内存一度达到10G。。原因还未搞清楚【Out Of Memory Errors

【补充】最近jenkins服务又频繁down掉,查看OOM-killer日志确认:

(1) cat /var/run/jenkins.pid获取jenkins进程id

(2) dmesg -T -d | grep <jenkins进程id>

jenkins服务占用内存一度达到10G。。。

(3) 查看jenkins log,看看jenkins服务down掉时有哪几个job在运行,发现有两个。重启jenkins再手动触发这两个job,top命令观察jenkins以及启动job占用内存变化(当时也使用远程jvisualvm观察jenkins vm堆变化)。最终复现问题(jenkins服务down掉),发现是两个job的前端构建,node中vue-cli-service build消耗内存太大,每个几乎占用8G。。。交由前端处理

 

6. 设置jvm启动/运行时参数,限制堆内存, -Xms1024m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=512m

6. 监控下gc,jstat -gcutil 13771,服务启动后一天内FullGC4次,时间0.448s,还可以。Jenkins web无法访问的问题算是解决了。

 

posted on 2022-02-11 18:52  -赶鸭子上架-  阅读(2231)  评论(0编辑  收藏  举报