备受喜爱的五种DevOps工具
2017-04-06
DevOps这个词在几年前从欧美流入中国,主要反映了开发与运维两类专业人士之间的矛盾与磨合。从单词的角度分析,DevOps是开发(Development)和运维(Operations)合并在一起的缩写,形成了一个新概念,可以理解为是一组过程、方法与系统的统称,用于促进开发(应用程序、软件工程)、技术运营以及质量保障(QA)部门之间的沟通、协作与整合工作。
DevOps这种概念的出现打破了之前很多公司的开发同运维分离与固化的矛盾,相反DevOps让使用产品的人有机会在开发过程中,而不是在開发完全结束后,对应用程序的构建发表意见,强调开发与运维的沟通与协作能力。
DevOps的出现是由于软件行业日益清晰地认识到,为了按时交付软件产品和服务,开发和运营工作必须紧密合作。近年来,DevOps已然走入很多企业的IT技术生产中,如今有哪些备受喜爱的DevOps工具呢?
GIT 在开源的潮流中,GIT作为一个免费的开源分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。与GitHub一样,GIT因为免费、team集成、代码质量分析和项目平台演示等特点已经获得了很多开发运维人员的喜爱。
Chef Chef与Puppet十分相似,都属于服务器的构成管理工具,均有配置中心服务器,基于ruby语言,也都拥有自己的扩展方式。同时,Chef拥有三种管理模式,Chef-Solo、Client-Server和Opscode Platform。
简单来说,Chef 是一个系统集成框架,可以为整个架构提供配置管理功能。宾夕法尼亚大学沃顿商学院的技术总监Sanjay Modi在Chef网站的个案分析上说:“Chef也将为组织内的协作和工作效率提高带来更多的可能性。”
Puppet Puppet属于集中配置管理系统,适用平台包括Linux、Unix、windows,使用自有的puppet描述语言,可管理配置文件、用户、cron任务、软件包以及系统服务等,其中Puppet Enterprise专门管理基础设施即代码(IAC)。
斯坦福大学的Bess Sadler在Puppet网站的视频推荐中表示:“斯坦福大学采用Puppet的开源版本来解决开发新型数字图书馆服务和保持这些服务高性能安全运行之间的矛盾。”
Docker 近年来在软件领域,除了开源这个概念外,容器技术也绝对称得上是热门,在所有容器中,又不得不提Docker。Docker最初属于dotCloud,开源后获得了社区的欢迎以及开发者的喜爱,应该说Docker是一个开源的应用容器引擎,成为容器市场的领导者。
可以说Docker是一个重新定义了程序开发测试、交付和部署过程的开放平台,可以简称为“构建一次,到处运行”,这就是Docker提出的“Build once,Run anywhere”。如今Docker逐渐受到市场的喜爱,在部分企业中已经开始取代虚拟机,运用于生产场景中。
Splunk Splunk是一个运维智能平台,属于机器数据的引擎。Splunk通过监控和分析客户的点击流、交易数据、信息安全事件和网络活动,帮助获得机器生成数据中富有价值的运维智能,它使开发者能够直接看到生产环境中的数据,无需访问生产机器,协助用户进行DevOps过程,包括持续的集成和资源配置。