【转】DevOps相关工具整理

 

敏捷开发软件开发是近数十年软件开发实践中革命性的改变之一。它提倡适应计划、进化发展、早期交付和持续改进,它鼓励快速和灵活应对变化。为了实现这一点,需优化整体的开发生命周期。至于优化,只要有可能,自动化关键部分——这是显而易见的。

 

 

什么该自动化?

 

每个软件和软件开发的每个阶段都该自动化。

 

一些人可能认为自动化一切是一种野心,甚至是不可能的。不管怎样,我认为我们应该考虑将这个阶段作为我们最后的阶段,并且努力实现它。最后,我们正在实施敏捷开发,这是一个不断持续改进的过程。

 

敏捷开发后的主要观点是迅速、频繁的交付。任何的重复都应该自动化,或者尝试减少在其之上花费的时间。这应该适用于项目中的每个地方。

 

 

DevOps工具链

 

我给SDLC每个阶段做了一些分类,包括DevOps工具。我们应该至少尝试采用每个类别中的一种工具来处理解决方案。

 

计划与分析

  • 捕捉和追踪 (JIRA, ServiceNow).

  • 文件或 Wiki页面 (Confluence).

  • 协同(Slack, HipChat).

 

设计与实现

  • SCM (Subversion, Git, Mercurial).

  • IDE (Eclipse, IntelliJ, Visual Studio).

 

构建与发布(CI/CD)

  • 资源库管理(Artifactory, Nexus).

  • 构建工具 (Jenkins, Bamboo).

  • 配置管理(Chef, Puppet, Ansible).

  • 云(AWS, Azure, OpenStack).

  • 容器 (Docker).

 

集成与测试

  • 源代码验证 (SonarQube).

  • 安全测试 (HP Fortify).

  • 功能测试(JUnit, Cucumber, Selenium).

  • 性能测试 (SOASTA).

 

运营

  • 监控 (Splunk).

  • 分析 (Adobe Analytics, Flurry, TeaLeaf).

  • BI (Kibana, Tableau).

 

摘自:http://mp.weixin.qq.com/s?__biz=MzAxOTAzMDEwMA==&mid=2652502392&idx=1&sn=8b3211b52c11ee5bc0f3f822afa60d80&chksm=80201043b7579955091ddb3e90ee00e5ffda00abf22cfece4cf75021271ae91931640a75f963&mpshare=1&scene=23&srcid=0315XE0j4iGYaUfcTmNd6gqE#rd

 

posted @ 2017-03-16 09:57  念槐聚  阅读(278)  评论(0编辑  收藏  举报