jenkins ansible 实现自动化部署

本文介绍如何利用Jenkins与Ansible自动化发布过程,通过Ansible脚本实现Tomcat内存管理,解决内存溢出问题,并自动部署更新项目,避免手动操作带来的不便。

   我们在用jenkins 与tomcat热部署实现自动化的时候,经常会发现 tomcat报内存溢出,导致发布经常失败。

还有就是如果项目当中有socket 长连接应用的时候,也就只能手动停止tomcat,再启动。

   所以,为了解决以上的问题。用jenkins+ansible 完美解决。

具体如下:(ansible,jenkins具体安装与配置需自己baidu一下,这里不多讲解)

 1.创建ansible 脚本 vim automaticRelease.yml

- hosts: '{{hosts}}'  //指定要发布的机器(也可以指定多台)
  tasks:
   - name: "stop tomcat"
     shell: "ps -ef |grep tomcat | grep -v grep |awk '{print $2}'|xargs kill -9"  //杀掉tomcat
   - name: "clean the directory"
     command: rm -rf /data/tomcat/webapps/  //删除老版本的包
   - name: "delivery the war to the remote_host"            
     copy:
       src=/maven/root/.jenkins/jobs/项目名称/workspace/项目名称/target/xxx.war  //cp 项目war包
       dest=/usr/tomcat/webapps/  //cp 到tomcat的webapps目录
   - name: "start the tomcat"
     shell: chdir=/data/tomcat/bin nohup ./catalina.sh start   //启动tomcat

 2. jenkins 配置:

   

 

 

ansible-playbook automaticRelease.yml --extra-vars "hosts=all"  //hosts 为指定的要发布的tomcat机器.all表示集群所有机器

 

JenkinsAnsible是两个广泛使用的自动化工具,可以帮助简化软件开发和部署过程。 Jenkins是一个开源的持续集成和自动化工具,常用于编译代码、运行测试、部署软件等任务。它提供了一个易于使用的用户界面,可以通过配置和连接各种工具和插件实现自动化流程。Jenkins可以与版本控制系统(如Git)集成,可以通过定时触发或通过触发特定的事件来自动执行任务。 Ansible是一个自动化工具,用于配置管理、应用程序部署和任务执行。它采用基于SSH的无需客户端的架构,可以通过编写简单的YAML文件来描述服务器的配置和应用的部署Ansible可以在本地或远程执行任务,并可以轻松地进行水平扩展。 结合JenkinsAnsible可以实现更高效和灵活的自动化部署流程。可以将Jenkins用作任务调度和流程控制的中心,通过Jenkins的插件支持,与Ansible进行集成。通过在Jenkins中配置Ansible插件,可以直接在Jenkins上运行Ansible Playbook,并灵活地控制各个部署和配置任务。 使用JenkinsAnsible可以实现以下功能: 1. 通过Jenkins触发自动化部署任务,对软件进行编译、测试和打包。 2. 使用Jenkins上的用户界面配置Ansible的执行环境和主机清单。 3. 创建和管理Ansible Playbook来描述服务器的配置和应用的部署过程。 4. 在Jenkins中通过添加Ansible插件来执行Ansible Playbook,自动部署软件和配置环境。 5. 通过Jenkins的日志和报告功能,可以方便地查看和分析部署过程中的问题和错误。 总之,JenkinsAnsible的结合可以大大简化软件开发和部署过程,提高工作效率和软件质量。不仅可以实现简单的部署任务,还可以通过灵活的配置和扩展,满足不同项目和环境的需求。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值