37 | 快速构建持续交付系统(四):Ansible 解决自动部署问题
王潇俊
该思维导图由 AI 生成,仅供参考
今天这篇文章,已经是实践案例系列的最后一篇了。在《快速构建持续交付系统(二):GitLab 解决配置管理问题》和《快速构建持续交付系统(三):Jenkins 解决集成打包问题》这两篇文章中,我们已经分别基于 GitLab 搭建了代码管理平台、基于 Jenkins 搭建了集成与编译系统,并解决了这两个平台之间的联动、配合问题,从而满足了在代码平台 push 代码时,驱动集成编译系统工作的需求。
算下来,我们已经通过前面这两篇文章,跑完了整个持续交付体系三分之二的路程,剩下的就是解决如何利用开源工具搭建发布平台完成代码发布,跑完持续交付最后一公里的问题了。
利用 Ansible 完成部署
Ansible 是一个自动化运维管理工具,支持 Linux/Windows 跨平台的配置管理,任务分发等操作,可以帮我们大大减少在变更环境时所花费的时间。
与其他三大主流的配置管理工具 Chef、Puppet、Salt 相比,Ansible 最大的特点在于“agentless”,即无需在目标机器装安装 agent 进程,即可通过 SSH 或者 PowerShell 对一个环境中的集群进行中心化的管理。
所以,这个“agentless”特性,可以大大减少我们配置管理平台的学习成本,尤其适合于第一次尝试使用此类配置管理工具。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文深入介绍了如何利用Ansible解决自动化部署的问题,并结合实际案例详细阐述了部署Java应用的过程。文章首先介绍了Ansible的特点和安装方法,然后重点讲解了使用Ansible进行Java应用部署的步骤,包括初始化Tomcat、部署业务代码和重启Tomcat服务。此外,还提到了使用Ansible Tower来解决用户体验和统一管理问题,并介绍了灰度发布的处理方法。另外,文章还分享了在Jar包发布和Docker处理方面的经验和建议,包括使用Maven Enforcer插件进行构建检测和推荐使用Spinnaker作为Docker编排平台的第一选择。总的来说,本文通过实践经验和技术建议,为读者提供了完整的持续交付系统搭建过程,涵盖了从代码管理到集成编译再到程序发布上线的完整流程。读者可以从中学习到如何利用Ansible系统的能力搭建部署系统,以及如何管理部署目标和编写部署过程的具体逻辑。整体而言,本文对于需要了解自动化部署和持续交付的读者具有很高的参考价值。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《持续交付 36 讲》,新⼈⾸单¥59
《持续交付 36 讲》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(5)
- 最新
- 精选
- 铭熙如果jenkins有多个slave,每个slave节点都要装ansible吧?这些slave节点上的ssh key怎么保持一致性呢?
作者回复: 这个文章里已经介绍了呢,可以使用ansible tower,把ansible作为一个独立服务看待,而不是安装在slave上
2018-09-274 - kkgoansible tower收费的吧2018-10-1035
- 天煜怎么快速的在大规模集群中发布大的代码包?例如,5000台机器,发布1G的代码包。2019-12-053
- 黄云龙ansible 与 Docker 有什么区别2018-09-2812
- 戴斌我们也是用Ansible发布的2020-03-25
收起评论