这个就是个记录,方便查找问题
一开始就是shell 执行 ,没有这个问题,想改成ansible
另外脚本不用写java的环境变量
网上的办法都是说在catalina.sh加上java的环境变量,这个确实得加上
JAVA_HOME=/usr/local/jdk
但是我加上后,还是不起作用
然后又找了找,好多千篇一律的文章,后来找到一个管用的
在ansible执行启动脚本时,加一个“nohup”参数就可以解决
ansible group -m shell -a 'nohup sh /server/scripts/tomcat.sh' --sudo
他会得到
ansible group -m shell -a nohup sh /server/scriptstomcat.sh --sudo
172.25.24.57 | CHANGED | rc=0 >>
Tomcat started.nohup: ignoring input
Finished: SUCCESS
然后tomcat进程启动了
原因
ansible执行命令,默认不加载环境变量,nohup参数让脚本在后台执行,就可以加载里面的环境变量。