jenkins默认在build结束后会kill掉所有的衍生进程
在使用jenkins进行自动化部署服务的过程中,发现调用服务器的shell命令无法正常启动tomcat,但是构建日志显示是成功执行的,而手动在服务器却是可以正常启动tomcat。
原因:jenkins默认在build结束后会kill掉所有的衍生进程
Jenkins提供了hudson.util.ProcessTree.disable和hudson.util.ProcessTreeKiller.disable两个属性来控制些特性,值为true将禁用此特性。hudson.util.ProcessTree.disable从Jenkins 1.260开始使用,而使用1.315之前的Hudson时只能使用hudson.util.ProcessTreeKiller.disable,为了版本兼容,在Jenkins 1.260后这两个属性都可能使用,建议使用1.260之的Jenkins用户使用hudson.util.ProcessTree.disable属性。
解决方案:
- 针对每个item:在execute shell输入框中加入BUILD_ID=DONTKILLME,即可防止jenkins杀死启动的tomcat进程
2.永久方案:启动jenkins 的时候禁止jenkins杀死衍生进程
● 使用java -jar启动,-Dhudson.util.ProcessTree.disable=true -jar jenkins.war
● 使用Tomcat启动,Linux系统修改catalina.sh,在环境变量的说明后,脚本开始前加上这句话
JAVA_OPTS="$JAVA_OPTS -Dhudson.util.ProcessTree.disable=true";
修改好Tomcat的配置文件后重新启动Tomcat
jenkins默认在build结束后会kill掉所有的衍生进程的更多相关文章
- centos下shell脚本kill掉mysql锁表进程【笔记】
前几天发现服务器上的mysql出现锁表了,show processlist后发现好多都是因为写进session才锁表的,看到这个想起了会不会是硬盘空间不够了,马上查看了服务器硬盘空间,发现都100%了 ...
- MySQL中kill掉所有表的进程
同事打电话告诉我用户数据库挂掉了. 我起床看一下进程列表. mysql>show processlist; 出来哗啦啦好几屏幕的, 没有一千也有几百条, 查询语句把表锁住了, 赶紧找出第一个Lo ...
- kill 掉 占据端口的进程
netstat -anp | grep 80kill -9 进程号
- 修改Jenkins启动衍生进程的生命周期
Jenkins+jmeter 多线程测试java接口时爆错,导致无法生成html报告. 先介绍下场景: 在Jenkins中新建了一个Job,假设你在一些列Build Step之前/之后,启动了一个进程 ...
- Android 保持Service不被Kill掉的方法--双Service守护 && Android实现双进程守护
本文分为两个部分,第一部分为双Service守护,第二部分为双进程守护 第一部分: 一.Service简介:Java.lang.Object ↳Android.content.Context ↳an ...
- 保持Service不被Kill掉的方法--双Service守护 && Android实现双进程守护
本文分为两个部分,第一部分为双Service守护,第二部分为双进程守护 第一部分: 一.Service简介:Java.lang.Object ↳Android.content.Context ↳an ...
- kill -9杀掉nginx主进程、reload失败解决办法
前言: 无意间使用 kill -9 命令杀掉了nginx的主进程,当我再次使用 ./nginx -s reload 重新刷新nginx的时候,一直出现了下面的错误信息: nginx: [alert] ...
- 表被占用住,提示资源正忙的处理方式。kill掉表的操作。
1)查找死锁的进程: SELECT s.username,l.OBJECT_ID,l.SESSION_ID,s.SERIAL#,l.ORACLE_USERNAME,l.OS_USER_NAME,l ...
- 利用脚本kill掉进程, 语法:运行脚本+进程名
下面附上脚本, 权限需要附X执行 #!/bin/sh #pid kill thread for chenglee #if fileformat=dos, update fileformat=unix ...
随机推荐
- FMX中实现PostMessage的方法
首先,做为一个从Windows下转过来的开发人员,许多时候,我们喜欢用PostMessage来触发一些异步执行的代码,但遗憾的是,FMX做为EMB的跨平台库的基础,只提供了SendMessage方法, ...
- CEGUI 0.7.7 VS2010+SP3 编译过程
1 在官方网站http://www.cegui.org.uk/ 下载最新的CEGUI 源代码 版本是0.7.7 2 下载编译需要用到的依赖文件包 将解压后的文件夹 Dependencies 和CEGU ...
- 数据备份服务商Rubrik获4000万美元B轮融资
搜狐科技 文/丽丽卡 5月27日,数据备份服务商Rubrik获Greylock Partners领投的4000万美元B轮融资,Lightspeed Venture Partners及其现有投资者跟投, ...
- spring通过注解方式依赖注入原理 (私有成员属性如何注入)
一.spring如何创建依赖的对象 用过spring的都知道我们在dao.service层加上@repository.@Service就能将这两个对象交给spring管理,在下次使用的时候使用@res ...
- play框架之ORM
初次接触play2,采用的ebeans作为ORM框架.网上的资料并不多,总结如下: 数据的查询可以放在model类里,也可以放在controllers里面,我更倾向于后者,感觉数据流比较完整,好理解, ...
- Centos6 samba服务配置
1.在阿里虚拟机中配置包源 在ecs的 /etc/yum.repos.d 创建个 alios.repo,内容如下 [alios.$releasever.base.$basearch] name=al ...
- html、jsp页面标签的遍历
应用场景:最近的项目中二级子页面遍历生成.操作表格比较多,记录一下一直用的遍历方法. 一般此类表格都是通过ajax请求数据,然后从callbackFunction中获取数据集合,遍历生成表: eg: ...
- Atlassian In Action - (Atlassian成长之路)
Atlassian是我工作过程中,使用过的最满意的研发团队管理套装.使用的主要软件包括Jira Software,Confluence,Fisheye/Crucible.理论上还可以再加上Bitbuc ...
- 浅说——数位DP
老子听懂了!!!!! 好感动!!! 不说多了:Keywords: 数位DP,二进制,异或. “在信息学竞赛中,有一类与数位有关的区间统计问题.这类问题往往具有比较浓厚的数学味道,无法暴力求解,需要在数 ...
- Linux命令及安装
1.三大操作系统 1.Unix Solaris(SUN) IOS(Aplle移动端) Mas OS(Aplle平板,电脑端) 2.Windows XP win7 win8 win10 3.Linux ...