zoukankan      html  css  js  c++  java
  • ansible结合playbook批量部署war包项目上线

    批量部署jenkins.war包实现上线

    用于测试war包上线

    [root~localhost]~#vim /etc/ansible/test.yml

    - hosts: test

      vars:     tomcat: /usr/local/tomcat8   

    remote_user: root  

    tasks:    - name: "创建备份目录backup"     

    file: dest={{ tomcat }}/backup owner=root group=root state=directory mode=0755     

    ignore_errors: True   

    - name: "创建新war包所在的目录newwar"     

    file:          

    dest={{ tomcat }}/newwar owner=root group=root state=directory mode=0755     

    ignore_errors: True   

    #- name: "备份旧的 war"     

    #shell: cp -r {{ tomcat }}/webapps/test.war  {{ tomcat }}/backup/test-`date '+%F'`.war   

    - name: "拷贝新的war包到远程服务器,把war包位置放在创建的新目录下"     

    copy:       

    src=/tmp/jenkins.war       

    dest={{ tomcat }}/newwar   

    - name: "停止tomcat服务"     

    shell: ps -ef | grep tomcat | grep {{ tomcat }} | grep -v grep | awk '{print $2}' | xargs kill -9     

    tags: stop     

    ignore_errors: True   

    #- name: "删除webapps下旧war包"     

    #file: dest={{ tomcat }}/webapps/test.war state=absent   

    - name: "拷贝新的war包到webapps"     

    shell: mv {{ tomcat }}/newwar/jenkins.war {{ tomcat }}/webapps

    #  - name: "删除临时文件"     

    #shell: rm -rf {{ tomcat }}/temp/*  

    #- name: "删除项目缓存"     

    #shell: rm -rf {{ tomcat }}/work/Catalina/localhost/test

       - name: "启动tomcat服务"     

    shell: nohup {{ tomcat }}/bin/startup.sh &

    [root~localhost]#~ ansible-playbook /etc/ansible/test.yml

    每台机器才执行一下启动,脚本启动shell模块不支持

    [root~localhost]#~/usr/local/tomcat8/bin/startup.sh

    访问http://192.168.30.21:8080/jenkins

  • 相关阅读:
    代码重构技术方法
    《算法导论》为什么经典
    BeagleBone Black教训四局:简单LED对照实验
    linux(Ubuntu)安装QQ2013
    ubuntu卸载qq2012
    android弧形进度条,有详细注释的,比较简单
    Android自定义进度条
    AndroidのUI设计研究(一)——自定义ProgressBar
    介绍几个工作开发中封装的好用的android自定义控件
    android自定义viewgroup之我也玩瀑布流
  • 原文地址:https://www.cnblogs.com/zc1741845455/p/11045937.html
Copyright © 2011-2022 走看看