云计算和容器如何重写监视和管理规则手册

2018-12-21 16:58:36 浏览数 (1)

在获得数据中心转型的一些成功之后,很多过于心急的企业在实施中希望尽可能多地消除IT数据中心成本。这可能会需要采用多种云服务、实验融合基础架构和软件堆栈,以及采用DevOps友好型技术,例如容器化。这些技术都可以帮助减少日益繁琐的资本支出,并提高敏捷性。

尽管如此,在这种数据中心整合的过程中,人们可能会忽略一些重要的事情。云计算和容器的应用规模非常巨大,并且具有更加广阔的前途,但通常他们根本没有通过完整的企业管理和经过考验的安全性,或者正如专家所述,其不能保证服务水平。

融合、云计算和容器都是热门技术。它们提供的价值是增加工作负载和基础设施之间的抽象。对于新的分布式的、面向DevOps的世界而言,有更多的抽象是有用的,但它也往往会掩盖对提高IT性能的最终可见性。

有很多方法可以衡量性能,而将工作负载响应时间作为衡量最终用户对IT体验的满意程度的重要指标之一。想象一下,图表中的CPU利用率在X轴上从0%线性增加到100%。如果在Y轴上绘制该CPU的平均交互式交易性能,最终会得到一个指数曲线,从合理的服务时间的0%开始,但是在100%的利用率下,将向无穷大发展。(注意:对于数学上的思考,可以使用排队理论对响应时间曲线进行建模,以计算日益繁忙的资源的概率等待时间。)

通过增加负载来尽可能提高基础设施资源的利用率,最终会在IT绩效管理方面产生相反的效果。

确实,批量工作负载更多地是通过吞吐量来衡量的,吞吐量可以达到最大利用率。但是,响应时间对任何交互式工作负载都至关重要。在当今的快速数据世界中,通过交互式操作和应用程序近乎实时地处理更多的数据源和数据流。如今的大数据是尽可能收集数据带来尽可能多的信息。

云计算和容器各自以不同的方式改变IT性能管理,虽然变化可能很显著,但IT管理人员可以通过多种方式确保性能保持在可接受的范围内。

云计算应用程序设计人员倾向于将关键代码的某些部分视为可替代的实例,而不像他们过去在传统数据中心基础设施孤岛中的历史实例。用户需要仔细监控和管理任务关键型应用程序及其资源,任何偏离正常的情况都会立即进行分类。对于当今的许多云计算应用程序,性能偏差将导致应用程序重新配置更好的新的云计算实例。

要理解这一点,需要了解虚拟化,它带来了许多好处,但并不总是更好的性能。在虚拟化主机中,保证实际响应时间性能一直是一个问题。

虽然虚拟管理员可以将主机资源配额(就利用率而言)分配给给定虚拟机,但是根据定义,每个主机资源可以同时由多个虚拟机共享。一旦了解响应时间性能相对于系统总利用率是非线性的,就可以立即看到如何在频繁使用的虚拟服务器上出现嘈杂邻居问题,即使关键虚拟机具有有保证的利用率。

例如,考虑给定主机服务器上的所有虚拟机如何具有有保证的容量片段。如果足够的虚拟机同时使用其容量来将服务器的总利用率提高到50%-60%以上,则响应时间将因所有这些而降低。在一定的利用率阈值远低于100%的情况下,底层服务器资源仍然具有剩余容量,但经验丰富的性能可能会降低一半。随着利用率接近100%,响应性可能降低到甚至很少有实际工作通过系统的程度。

如果人们将云计算(公共云或私有云)视为大型虚拟服务器场,就可以看到为什么云计算机器实例可能无法始终提供应得的性能。当用户支付费用采用云计算服务器时,云计算服务提供商承诺提供一定的资源利用率。但是,云计算提供商通常不会证明用户的特定计算机实例不会与许多其他竞争实例共存。这意味着在繁忙时段,许多托管计算机实例将无法提供与其底层云计算基础设施不到一半空闲时相同的性能级别。

从根本上说,云计算是经济高效的,因为它们尽可能广泛地共享基础设施。用户在经济上鼓励云计算服务提供商,将尽可能多的虚拟实例填充到给定的云计算基础设施的足迹中。实际上,云计算提供商的利润率的关键领域之一是能够在多个租户中尽可能多地超额预订真实的基础设施,许多机器实例在很多时候都没有得到充分利用。

因此,Web应用程序管理员和明智的DevOps管理人员谨慎地对待他们的云计算应用程序。他们跨多个机器实例以分布式方式构建其Web应用程序,这样如果该池中的任何一个机器实例的性能受到影响,那么它们只会将其终止,并重新启动它。当企业的服务提供商规模足够大时,重启操作几乎可以保证新实例将在云计算基础架构的不同区域生成,远离嘈杂的邻居。值得注意的是,这种方法在应用不太广泛的私有云上可能效果不佳。

容器的可见度

对于容器化来说,微服务大量应用的性能可能更不透明。原始定义的单个微服务即使其性能很糟糕,但不会持续很长时间。对于大规模容器化的应用程序来说,可能只看到总体最终结果的性能不佳。而且由于微服务可能是短暂的,无法更好地进行管理。

当将微服务分配到他们自己的隔离基础设施时,端到端基础设施性能管理工具使IT管理员能够识别并纠正明显的性能问题。虽然虚拟化开始使IT性能管理变得混乱,但仍然存在将应用程序性能与虚拟化基础设施相关联的有效方法。但是,一旦我们将应用程序迁移到公共云,管理顶级性能就变得更像一种猫捉老鼠的游戏。现在随着容器的兴起,管理绩效是一个更大的挑战。

而好消息是,通过容器架构,可以在应用程序中轻松地在非常精细的级别上添加性能检测。鉴于新一批高度可扩展且响应迅速的管理工具,应该可以使用智能的IT操作自动化(可能基于有效使用机器学习)将大量的容器迁移到性能更好的服务器中。

对于技术组织而言,真正的诀窍是,如果不是可预测并持续存在,需要在实施选择成本支出政策的同时,实现更高的性能。在某些方面,云计算和容器的这种平衡行为变得更加困难,这是因为增加了不透明性和可扩展性,但是采用分布式数据和处理技术将会使其更容易实施。

(来源:企业网D1Net)

如果您在企业IT、网络、通信行业的某一领域工作,并希望分享观点,欢迎给企业网D1Net投稿

0 人点赞