开发运维工具与软件开发领域的最佳实践密切相关,也与必要的规范密切相关。在整个开发生命周期涉及到一大批新旧工具,从规划、编码、测试、发布到监控。本文介绍你应该考虑添加到工具箱中的20种开发运维工具,供大家参考。
开发运维是那些还没有得到明确定义,就流传开来的科技时髦词之一。这种情况时不时出现,某个好的概念问世后,人们还无法实际上解释它为何物,就趋之若鹜。
所以,考虑到开发运维本身在大家的头脑中还是一片模糊,开发运维工具怎么样呢?
有必要说清一点:开发运维是开发和运维的混合体,因为它代表了开发实践方面的文化变化,非开发人员也参与到软件开发过程中。开发人员之外的IT专业人员参与到构建应用程序的协作和沟通过程,让产品开发完毕后使用产品的人有机会在开发过程中,而不是在开发结束后,对应用程序的构建发表意见。
成熟的开发运维环境往往遵循一种常见模式:一种灵活的软件定义平台上的迭代自动化。所以,许多开发运维工具采用了某种迭代动作。采用开发运维工具的 成功的流程既需要公司里面的文化变化,又需要实现这种变化的新工具。这意味着,在整个开发生命周期涉及到一大批新旧工具,从规划、编码、测试、发布到监 控。下面是你应该考虑添加到工具箱中的20种开发运维工具,但绝不是全部。
1.Jira Software来自Altassian的JIRA软件是一款流行的软件开发工具,用于开发运维的一个关键部分:敏捷开发,处理项目中的多个步骤。这款开发运维工具 用于规划和跟踪工作,并确定优先级,处理产品发布,产品交付后监控性能。它与本文介绍的其他工具整合起来,提供基于云的服务这种形式。
相关链接:https://www.atlassian.com/software/jira
2.GITGit是一种免费的开源分布式版本控制系统,既可以处理单个的小项目,也可以处理庞大的企业项目。它极其轻便,专注于速度和处理分布式项目。它脱胎于Linux内核开发,该公司的GitHub网站对开源项目来说是一个非常流行的软件库。
相关链接:https://git-scm.com/
3.Visual Studio有许多开发运维工具、实际上是软件开发平台,不过论全面性,没有一个比得上微软的Visual Studio,它支持多种语言,包括Python(一种流行的开发运维语言),支持针对Windows、安卓和iOS平台的开发,并支持基于云的协作开发。
相关链接:https://www.visualstudio.com/en-us/visual-studio-homepage-vs.aspx
4.JenkinsJenkins是一种跨平台的持续集成和交付的应用软件,它便于不断稳定地交付新的软件版本,并提高你的工作效率。这款开发运维工具还让开发人员更容易把项目的变化整合起来,并使用大量的测试和部署技术。
相关链接:https://jenkins.io/index.html
5.SlackSlack是一种基于云的团队协作开发运维工具,它最初是游戏开发公司使用的一种内部工具,而如今本身已是一种商业产品。它主要基于一种类似互联网 中继聊天(IRC)的实时聊天技术,但是有更多的控件、支持直接聊天、拖放式文件共享,并与开发工具整合,那样它们都可以从Slack界面来运行。
相关链接:https://slack.com/
6.IBM Security AppScanIBM Security AppScan用于在开发过程中测试Web和移动应用程序的安全性,不仅改善应用程序的安全性,还可检查应用程序,确保合规。该产品可了解应用程序的行为,并开发一个程序,旨在测试所有功能,查找常见安全漏洞和应用程序特有的安全漏洞。
相关链接:
7.SolarWindsSolarWinds的软件用于管理大小企业网络上的网络流量。网络设备监控器可监控你网络上的任何一个设备,查找各种提示或错误。该公司专注于错误和性能管理产品、配置和合规产品以及网络管理工具。它还支持监控多租户甲骨文数据库的性能。
相关链接:
8.亚马逊网络服务(AWS)AWS堪称云计算领域的巨无霸,它为开发人员提供了许多选择,比如计算、存储、分发、数据库和网络。其分析服务面向性能管理、应用程序服务、开发人员和管理工具,既有云方案又有混合方案。寻求开发运维工具的那些人无疑会在AWS环境中找到所需工具。
相关链接:https://aws.amazon.com/cn/?tag=vig-20
9.Pivotal作为知名的平台即服务(PaaS)提供商之一,Pivotal建立在VMware Cloud Foundry上,可以在本地运行,也可以在云端运行。应用程序可以扩展到几百个实例,它随带诸多服务,比如负载均衡、自动化健康管理、日志及审计以及自动化配置。
相关链接:
10.DockerDocker是容器市场的领导者。容器被认为是比较小巧、比较轻便的虚拟机,开销却低得多,那样多个容器可以在一个Linux实例里面运行。它可以封装任何Linux服务器上的应用程序及依赖项,从虚拟系统到基于云的实例,不一而足。
相关链接:https://www.docker.com
11.Octopus Deploy