CPU和内存将会对应用性能带来哪些影响?

日期: 2016-01-12 作者:Brian Kirsch翻译:张冀川 来源:TechTarget中国 英文

随着数据中心越来越依赖于虚拟化,我们需要确保虚拟基础设施做好了充分的准备。数据中心变化莫测,底层硬件有众多选择,比如机械硬盘、闪存、融合以及超级融合基础设施。但不幸的是,在大多数情况下硬件设备并非放之四海而皆准。 尽管某些厂商可能不同意上述观点,实际情况是虚拟基础设施是为支持应用而生。

很多组织有数百个应用而且每个应用的性能需求都需要被评估。虚拟化对硬件进行了抽象化,将便携性、可扩展性、灵活性变成了现实,之前没有任何技术能够满足上述要求。然而,伴随着硬件被抽象化,限制以及性能约束条件仍旧存在。 几年以前,提升应用性能往往是使用性能最快的服务器,但这往往不满足组织在硬件成本上的要求。

虚拟资源与应用……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

随着数据中心越来越依赖于虚拟化,我们需要确保虚拟基础设施做好了充分的准备。数据中心变化莫测,底层硬件有众多选择,比如机械硬盘、闪存、融合以及超级融合基础设施。但不幸的是,在大多数情况下硬件设备并非放之四海而皆准。

尽管某些厂商可能不同意上述观点,实际情况是虚拟基础设施是为支持应用而生。很多组织有数百个应用而且每个应用的性能需求都需要被评估。虚拟化对硬件进行了抽象化,将便携性、可扩展性、灵活性变成了现实,之前没有任何技术能够满足上述要求。然而,伴随着硬件被抽象化,限制以及性能约束条件仍旧存在。

几年以前,提升应用性能往往是使用性能最快的服务器,但这往往不满足组织在硬件成本上的要求。虚拟资源与应用之间并非一对一匹配,虚拟环境往往是更紧密地集成为一个共享的沙箱,为找到多少虚拟机能够共用一个硬件平台而不会有性能问题并且能节省成本,需要知道应用的配置需求。尽管每个应用的配置都是独特的,但它们往往共享四个常见的关键指标:网络、I/O、CPU以及内存。使用虚拟化,你能够控制甚至限制上述所有指标,因为hypervisor实现了硬件抽象化。然而,你无法增加超过硬件本身所能够提供的资源。抽象并非意味着创造硬件,而仅仅是分配现有硬件资源。

管理CPU容量

谈到处理器时通常的想法是处理器速率越高越好。多核处理器已经改变了这种思维模式——但这并非总是更好的解决方案。CPU资源难以捉摸,因为有几种不同的选项可能会带来很多不同的影响。就CPU而言,可以做出一些选择,这取决于你想要的是多个核心、更低的频率还是更高的频率、更少的核心。你甚至可以在核心与频率之间取一个中间值。你的决定很可能取决于应用本身。即使在今天,你都无法假定所有应用是多线程的、能够使用多个核心,很多应用都无法使用一个或两个以上的核心。现在可能有一个核心应用是多线程的,但你必须测试以了解其是单线程还是基于会话的。这将帮助你确定你是否需要更高的频率还是更多的核心。

应用配置可能是分割虚拟工作负载以更好地使用硬件资源的缘由之一。混合环境比如VDI,往往需要大量的核心但对CPU频率的要求较低,这可能会对需要更高频率环境中的生产服务器造成显著的影响。这恰恰是VDI不会共享同一个生产基础设施的原因之一。因此,更大并非总是意味着更好,而是一定要关注应用配置并发现需要的是多线程并且基于会话还是单线程。获取相关数据后就可以基于核心以及频率针对特定的应用选择具体的CPU配置。这将会提供一个基准,但并非万事大吉,你还必须将过量分配以及今后会出现的故障考虑在内。

内存容量以及性能关注点

第二个也是最需要关注的一个方面是内存。在虚拟化之前内存往往是最令人混淆的资源之一,因为几乎没有工具能够告诉我们服务器内部在发生什么。与服务器内的其他资源不同,内存往往被缓存供今后使用。尽管在某些情况下缓存内存能够提升性能,但这会曲解性能使用数据,因为内存被操作系统占用但并不是活动的。幸运的是,虚拟化利用hypervisor级的监控,允许管理员看到哪些内存是活动的而不仅仅是被操作系统缓存了。这样我们就能够对需求有一个真正的理解,这有利于消除之前普遍存在的问题:内存过量分配却几乎没有给应用带来任何好处。

内存同样具有其他资源所不具备的独特性。内存可以使用硬盘容量进行增补——固态硬盘以及机械硬盘都可以,允许更大程度地过量分配内存资源。机械硬盘过量分配往往会对性能产生实质性影响,应该不惜一切代价避免。交换到固态硬盘稍微有一些不同,因此很多人认为固态硬盘的速度几乎可以和内存划等号。这并不准确,因为固态硬盘的性能峰值为600MB/s,由于内存并不存在同样的限制,内存的转移速度接近于15000MB/s。应该尽管不排斥使用固态硬盘用于增加内存容量,但更理想的选择是仅仅在发生故障时紧急使用固态硬盘用于内存交换。

翻译

张冀川
张冀川

TechTarget中国特约专家,任职于某国企信息中心,负责数据中心硬件基础设施及信息系统运维管理工作,对虚拟化及云计算技术有浓厚兴趣,并在工作中积极应用

相关推荐