DevOps 10大IT管理工具(翻译)

    使用最新的IT管理工具就像尝试星巴克的最新饮品。下面我们简单的过一下从监控到DevOps编排以及APM最常用的工具。

    IT管理工具进入一个全盛时期,这需要感谢云计算、DevOps及移动的到来。基于新的基础设施、软件及开发方法,开发者和IT经理期待每一天都是简单且自动化。但今天市面上数以百计IT管理与DevOps工具,无论开源或商业的,已经让他们无所适从。

    据Technavio的统计,到2019年,全球DevOps工具市场将有望达到30亿美金。有许多的应用可供选择,我们编制了一份推荐的清单。其中一些是验证可行的,而另外一些是仍在早期的试用阶段。


微软SCOM(系统中心运维管理)

IT运维管理和IT服务管理

微软SCOM是一款企业遗留基础设施的监控和管理工具,可以综合监控管理微软生态的资产与设备,无论它们装于本地数据中心还是云上。经多年发展,SCOM也可以对基于Unix系统的网络与存储实施监控。

注意:SCOM是一款深度监控工具,它从各种不同的系统中收集数据,并产出海量的数据与警告,这些数据与警告可能会击垮系统管理员和IT经理:-(。


Vistara

这里写图片描述
http://www.vistarait.com/

IT运维管理与IT服务管理

Vistara是一款综合性监控工具,它可以监控云上云下(本地安装)的各异构厂商资产与设备。功能涵盖了微软与Unix的应用和系统、主要的企业供应商如甲骨文(Oracle),赛门铁克(Symantec)、大的存储与网络技术。与此同时,Vistara还很好的集成了其他监控工具。Vistara的最大特点是记录所有用户的会话,因此可以对系统变更和其他一些事件进行审计。

注意:Vistara是一款强大、多功能的工具,必须恰当设置方能发挥其最大效用。(翻译注:直白点讲就是安装配置复杂,不容易掌握。)


SolarWinds

这里写图片描述
http://www.solarwinds.com/

网络监控

SolarWins是一款分布式网络环境性能监控管理的优秀工具,支持多厂商产品。工具提供了许多有用的指标,包括:性能、容量和停机时间(Downtime)。对需要多地办公的企业特别适用,例如:零售品牌,拥有大量分支机构的全国性或国际性的公司。

注意:SolarWinds不提供服务器与存储的综合监控。


Nimsoft (CA)

http://www.ca.com/us/products/manage-monitor.html?intcmp=headernav

网络监控

Nimsoft是另一款优秀的网络监控工具,但它最适合是在本地安装(内部数据中心)的环境:一些标准化的设备、变更频率低。企业如果频繁增加新技术和设备建议另找其他工具:-)。

注意:一款老工具,对快速多变的IT环境来说并非理想选择。

译注:Nimsoft 2010年被CA 3.5亿美元收购。


ServiceNow

这里写图片描述
https://www.servicenow.com/

IT服务管理

ServiceNow是一款行业知名的综合服务管理工具,提供服务级别(Service Level)管理、财务管理、事件管理、能力管理、变更与发布管理等等能力。ServiceNow基本涵盖所有的ITIL活动,是服务管理的事实标准。特别适合于向企业转变的小公司。

注意:这个工具特别灵活,可以根据你的组织结构特定要求进行便捷的个性化(客户化)。但需要注意的是,你需要一个全职的管理员来管理和客户化系统。


Chef/Puppet

这里写图片描述
https://puppet.com/
这里写图片描述
https://www.chef.io/

DevOps自动化与管理

当它们作为云应用开发与部署的工具时,Chef与Puppet在开发者中几乎成为了一种文化。虽然公司有时会同时用到它们,但两者是存在功能重叠的。Chef是DevOps开通(Porvisioning)、编排与配置管理的理想工具,而且它本身是一个灵活的平台,支持版本和回退。Chef同时提供了指标、信息的实时可视能力。Puppet是DevOps自动化与管理最佳工具:高度标准化、过程(流程)驱动(不容许走捷径),简直是运维人员的福音。

注意:Chef和Puppet首要面向的是开发者而非IT运维,特别要注意的是,开发者可能在管理工具方面花的精力多于代码编写。


Docker

这里写图片描述
https://www.docker.com/

DevOps容器

Docker是DevOps 应用容器化部署 自动化的行业领导工具。它可运用于任意软件项目和基础设施环境,对依赖管理和版本不一致的情况特别有帮助。它不走寻常路,简化了部署复杂度。Docker容器将软件封装在一个可“便携式(可以迁移)”的单元(unit)中,该单元包含运行的所有东西:代码、运行环境、系统工具、系统库等等。

注意:这种方式在安全方面尚未得到验证,一些人认为它还没有达到企业安全的标准。


Apache Mesos/Google Kubernetes

这里写图片描述
http://mesos.apache.org/
这里写图片描述
http://kubernetes.io/

DevOps集群

Apache Mesos是DevOps领域最佳的分布式应用集群管理工具。Google Kubernetes则是跨集群自动化部署、伸缩及应用运维的理想工具。集群工具通过有效的负载管理和资源共享提升硬件的使用效率。它们均适用于公有云及私有云环境,跨平台,能够让IT组织在相同的硬件上承载更大的负载。这两个工具都非常新,Mesos发展时间更久一些,也更适合于重管理与伸缩的大规模环境。

注意:对于小规模集群,特别是小于12节点的环境,Mesos就过于复杂了。


New Relic

这里写图片描述
https://newrelic.com/

应用监控

New Relic是一款以实时监控管理著称的工具,它能够实时监控和管理云上、云下及混合云上的各类Web应用和移动应用。作为APM工具,New Relic擅长识别服务器相关的性能问题。它能够跟踪用户页面的真实性能,通过它你可以看到某类用户比其他用户的性能更糟糕。

注意:New Relic不会捕捉100%的交易,而是采用抽样方式。这种方式的好坏完全依赖于你的业务需要,某种程度上说有些僵硬,特别对有大量微服务的环境来说不够灵活。


Graphite/Grafana

这里写图片描述
http://graphite.wikidot.com/
这里写图片描述
http://grafana.org/

仪表盘

Graphite与Grafana是两个最主要的图形化与仪表盘Builder,用于做时间序列指标可视化。这两个工具特别适合于分析 来自本地、公有云、私有云及物联网系统的指标及各类型数据。

Grafana最常用在互联网环境下的时间系列指标可视化和应用分析。当然它也可以用在工业传感器、家庭自动化、天气及流程控制等领域。

Graphite在数据与指标可视化方面非常出色。

注意:你需要进行复杂的数据库配置与计算引擎配置,才能收集数据和生成仪表盘。


关于作者/Ravikumar Raghavenderrao

    Ravi RRK,NetEnrich服务交付副总裁。主要负责服务交付管理、客户服务及新服务推介。Ravi所带领的团队同时负责保障NetEnrich的质量与规范标准的执行。

    Ravi有20多年的IT行业经验,主要的领域是基础设施远程管理、交付及大客户管理。加入NetEnrich之前,Ravi在Wipro Technologies供职20多年,先后从事各个岗位的工作。Ravi拥有奥斯马尼亚大学(机械)工程学士学位和印度科学研究所(机械)工程硕士学位。

原文链接

Top 10 IT Management Tools

刚刚发布的ThoughtWorks技术雷达 建议技术团队“暂缓或谨慎”使用反模式“CI theatre(伪CI,可以理解为不完整的持续集成)”。 “伪CI”描述的是实践持续集成(CI)过程中的一些错觉,然而这些并不是真正的CI实践。 基于持续集成,我和同事 Emily Luke做了一些研究, 我将分享伪CI是什么样的,为什么我们建议你“暂缓或谨慎使用”,以及预防伪CI的方法。持续集成我最喜欢的CI定义来自于continuousdelivery.comCI开发人员定期(至少每天)将他们所有的工作集成到主干(也称为主线或主干分支)这个引用中暗含了CI实践的两个基本原则。第一个是“把他们所有的工作集成到主干”;第二个是“至少每天”。对于CI还有一系列其他原则和实践,例如:将所有内容都检入您的代码库,构建每个提交,自动化构建,保持快速构建,并有可以自我验证的代码, 还有Martin Fowler 关于持续集成的评论中的可视化故障并立即修复故障等。我个人认为 每天至少检入代码到主干分支一次 是CI的基础。没有达到这一点就只是伪CI而不是真正意义上的CI。伪CI是什么样的?这是我们调研到的一个故事,一位经验丰富的开发人员(让我们称他为David)来自湾区的一个中型创业公司,每周有两次产品交付。 David说他的组织正在践行CI,他说:“是的,我们用Circle CI”,他描述了一个具有挑战性的场景,曾经在一个分支上工作了一段时间,大约修改了100个文件和7000行代码,然后在代码审查阶段就开始招架不住了,因为他要向他的同事解释所有的代码变更的原因。“最具挑战性的事情是你最终要将一大堆功能集中到一个提交里,因为它们都是这个组件的一部分”,他解释说:“我希望有一个更好的方式来分解这些提交,因为很难把所有事情(变更历史)记在脑子里。”如果这个情况你听起来很熟悉,那么你也在做伪CI。 如果有下面的这些场景,那么你们就是在做伪CI:当有人问起你们在实践CI吗? 如果你说我们有一个CI服务器并且我们使用X工具在我们的调查中,只有10%的参与者承认有CI服务器与CI践行不一样。 相反,90%的个人表示他们正在践行CI,无论他们是否有专门从事CI的基础知识。 所以简单的认为只要有一个CI服务器就是“在做CI”,这就清楚地表明是在做“伪CI”。使用长期开发分支,但不会定期检入master主干在David的故事中,他们并没有实践每天检入master主干,这就是“伪CI”的标志。 这是我们在调研中常看到的一种模式,其中团队在master主干上运行CI,但不频繁构建,也不是每天都在提交。 或者他们在分支上运行CI,但不会频繁的集成到master主干。 只对特性分支运行CI,其实应该称之为持续隔离(continuous isolation)才对.合并分支时感到焦虑和疲惫真正的持续集成要把代码所有者的责任意识扩展到整个团队。 这改变了团队内部人员的观点以及他们对失败构建的态度。 不再是“我的宝贵的分支”,或是“我的错误导致构建被破坏”,而是“我们的代码”和“我们的失败”。David遇到焦虑和疲惫的事实清楚地表明,他忽略了CI的一个重要的优势:持续反馈和代码集体所有权。伪CI还有更多的一些现象,虽然我们发现有一些并不那么常见,但它们仍然存在一些问题,构建的时候,仅有极少的测试覆盖允许构建长时间处于失败状态虽然David的团队引入了一个备受尊崇的CI工具和常见的流程,如特征分支和代码审查,但他们并没有实施全套CI实践,因此错过了许多好处。 我们遗憾的发现,在我们的研究的组织中90%发生了这种情况。一些组织实施伪CI中反而错失了CI的主要优势 - 快速反馈,代码集体所有权,并准备达成持续交付如何避免,预防和解决伪CI的问题?如果您确定可能正在遭受伪CI之苦,则可以通过三种方式来解决问题并进行持续改变。1. 提交更频繁回到根本,尽量频繁地提交,每天至少提交一次应该是最低目标。 如果你还没有开始做CI,这就是你可以开始的地方,即使你在做CI,依然会有改进的空间。我喜欢“频率降低难度”的说法。 往往我们在做一些事情时,任务变得越小,则其更容易被实现。 持续集成就是是一个典型例子。 我的建议是要更加频繁地检入你的代码到代码库并且将开发分支集成到主干分支,至少每天集成一次”。2. 基于主干分支开发有很多论坛在讨论基于主干还是基于开发分支进行开发,我不想讨论那些血淋淋的细节。 然而,在我们的调研中,当我们与一些曾经在实践CI过程中感到痛苦的人交谈时,没有引入主干开发的团队对此有更深刻的感受。 DevOps现状调查报告-2016 还发现,基于主干开发和持续集成是达成持续交付的关键因素,同时也能建设更高效能的团队。基于主干的开发肯定会有一定的挑战,但它可以把问题提前暴露出来,而不是要等到代码合并、代码审查甚至到延迟发布的时候。如果你想达到更好效果的CI和CD,我建议在主干上做开发,或者如果你更愿意使用短周期的临时分支(合并到主干之前不到一天)进行开发,那么最好同时不要超过三个以上的活跃分支。3. 自动化自动化是做好持续集成的基石,所以如果你还没有自动化一切,现在是开始的好时机。 如果你认为已经实现了所有自动化的功能,那么每次有人手动地做任何事情超过一次,便要问自己“这个为什么不能自动化”? 我已经观察到自动化不仅可以帮助您在CI中变得更好,还可以帮助您开始持续交付。总结现在你知道什么是伪CI了,如果你的团队正在这么实践伪CI,那么你可以阻止这种情况继续发生了。 如果您仍然感到困惑,我建议你在Martin Fowler的博客“CI Certification test”做一个测试, 以确认你的组织是否正在做可靠的CI。 如果你通过了CI测试,那太好了,现在是考虑您是否准备好实施持续交付的时候了。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值