软件的持续自动化部署解决方案 - Dreadnot
fmms
13年前
Rackspace公司近日 <a href="/misc/goto?guid=4959500503590804616" target="_blank">开源</a>了他们的一个用于软件部署的解决方案——Dreadnot,该方案可以实现软件的自动化以及多区域部署功能,项目代码已托管于 <a href="/misc/goto?guid=4959500503797841963" target="_blank">GitHub</a>。 <br /> <br /> 据Rackspace介绍,Dreadnot是个由Node.js编写的“一键”部署工具,它受 <a href="/misc/goto?guid=4958964268717125972" target="_blank">Etsy的Deployinator</a>的灵感启发,基于Web框架 <a href="/misc/goto?guid=4958522262563415188" target="_blank">Express</a>和 <a href="/misc/goto?guid=4958326721136670172" target="_blank">推ter的Bootstrap JS与CSS工具</a>构建。 <br /> <br /> <img style="width:640px;height:359px;" title="09140126_mwu9.png" border="0" alt="09140126_mwu9.png" src="https://simg.open-open.com/show/0698c17efdcdc43800c39e9189888698.png" /> <p><br /> Dreadnot的目标是帮助实现“持续部署”。Rackspace的工程师Paul Querna写到:</p> <div> 引用 </div> <div> 与少部署而多进行手动测试不同,我们认为应更加频繁一些进行部署,这有赖于测试驱动开发(TDD)、代码复查(code review)以及质量保证文化的养成,以便尽早发现bug并减少服务中断的次数。我们的格言是,新来的工程师也能够在工作第一天将代码带入生产中。 </div> <p><br /> 对敏捷开发和DevOps而言,持续部署理念极为重要。它使得开发团队能够更加快速引入新特性,修复bug,减少管理多个版本及开发分支的复杂性与差异性。</p> <p>对Rackspace来说,他们最初使用的是Deployinator工具,不过之后他们认为Deployinator并不能完全满足需 求:“Deployinator是设计用于单区域部署,走了一些捷径,但基本思路还是正确的。我们在Rackspace内部的诸多产品中对 Deployinator进行了研究,每个团队都面临着对Deloyinator进行定制以便能够适应我们的模型的问题。”鉴于上述原 因,Rackspace开发出了Dreadnot。</p> <p>Rackspace表示,Dreadnot的设计旨在帮助实现多区域部署,这通过对部署过程实现高度自动化以及跨区域的冗余来实现。此外它提供了 一个控制机制以及易于访问的视图用于部署过程中。如果期间中出现任何失败,Dreadnot将暂停其操作,并等待开发人员解决。对于复杂或是出现致命错误 (fetal error)的部署,开发人员也可以在不受Dreadnot干扰的情况下手动完成。</p> <p>介绍内容来自:<a href="/misc/goto?guid=4959500504075791067" target="_blank">http://www.iteye.com/news/23948</a></p>