【转】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://files.cnblogs.com/files/haochuang/alipay-RedEnvelopes.bmp)
赠人玫瑰
手留余香
我们曾如此渴望命运的波澜,到最后才发现:人生最曼妙的风景,竟是内心的淡定与从容……我们曾如此期盼外界的认可,到最后才知道:世界是自己的,与他人毫无关系!-杨绛先生
如果,您希望更容易地发现我的新博客,不妨点击一下绿色通道的