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无法访问的问题算是解决了。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~