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

  • 相关阅读:
    搭建个人Spring-Initializr服务器
    “不蒜子”统计总访问人数脚本
    基于Hazelcast及Kafka实现的分布式锁与集群负载均衡
    虚拟机部署hadoop集群
    程序员、黑客及开发者之间的区别
    今日校园自动登录教程
    逆向DES算法
    来自穷逼对HttpCanary的蹂躏
    今日校园提交签到和查寝-Java实现
    JS 判断数据类型方法
  • 原文地址:https://www.cnblogs.com/zc1741845455/p/11045937.html
Copyright © 2011-2022 走看看