1、在遠端機器上添加環境變量(強烈要求以後都将java/nginx/mvn等環境變量寫入~/.bashrc ,然後source一下~/.bash_profile)
$ vim ~/.bashrc
export JAVA_HOME=/usr/java/jdk1.8.0_101
export PATH=/usr/java/jdk1.8.0_101/bin:/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/root/.local/bin:/root/bin
export CLASSPATH=.:/usr/java/jdk1.8.0_101/lib/dt.jar:/usr/java/jdk1.8.0_101/lib/tools.jar
$ source ~/.bash_profile
通過ansible批量添加指令
$ ansible -i hosts Zhanjian_Cms_Publish -m blockinfile -a 'path=~/.bashrc block="export JAVA_HOME=/usr/java/jdk1.8.0_101\nexport PATH=/usr/java/jdk1.8.0_101/bin:/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/root/.local/bin:/root/bin\nexport CLASSPATH=.:/usr/java/jdk1.8.0_101/lib/dt.jar:/usr/java/jdk1.8.0_101/lib/tools.jar" create=yes'
$ ansible -i hosts Zhanjian_Cms_Publish -m shell -a 'source ~/.bash_profile'
2、ansible遠端調用startup.sh啟動tomcat,啟動不生效。
解決方法:
ansible調用shell腳本啟動tomcat需要加上nohup…&
- name: start the tomcat
shell:
cmd: "nohup {{ tomcat_publish_dir}}/bin/startup.sh &"
register: start_tomcat_ret