如何[礼貌地?] 告诉软件供应商他们不知道他们在说什么

Sim*_*lin 62 virtualization performance performance-monitoring vmware-esxi vmware-vsphere

不是技术问题,但仍然是一个有效的问题。设想:

HP ProLiant DL380 Gen 8 配备 2 个 8 核 Xeon E5-2667 CPU 和 256GB RAM,运行 ESXi 5.5。给定供应商的系统的八个 VM。四个 VM 用于测试,四个 VM 用于生产。每个环境中的四个服务器执行不同的功能,例如:Web 服务器、主应用程序服务器、OLAP DB 服务器和 SQL DB 服务器。

CPU 共享配置为阻止测试环境影响生产。SAN 上的所有存储。

我们对性能有一些疑问,供应商坚持认为我们需要为生产系统提供更多内存和 vCPU。但是,我们可以从 vCenter 中清楚地看到,现有的分配没有受到影响,例如:主应用服务器上 CPU 利用率的月度视图徘徊在 8% 左右,奇数峰值高达 30%。峰值往往与备份软件启动一致。

RAM 上的类似故事 - 服务器的最高利用率约为 35%。

因此,我们一直在使用 Process Monitor (Microsoft SysInternals) 和 Wireshark 进行一些挖掘,我们向供应商建议他们首先进行一些 TNS 调整。然而,这不是重点。

我的问题是:我们如何让他们承认我们发送给他们的 VMware 统计数据足以证明更多的 RAM/vCPU 无济于事?

--- 更新 12/07/2014 ---

有趣的一周。我们的 IT 管理层已经说过我们应该对 VM 分配进行更改,我们现在正在等待业务用户的一些停机时间。奇怪的是,业务用户会说应用程序的某些方面运行缓慢(相比之下,我不知道),但是当我们可以关闭系统时,他们会“让我们知道”(抱怨,抱怨!)。

顺便说一句,系统的“慢”方面显然不是 HTTP(S) 元素,即:大多数用户使用的“瘦应用” 。这听起来像是主要金融机构使用的“胖客户端”安装,这显然是“慢”的。这意味着我们现在正在调查中考虑客户端和客户端-服务器交互。

由于该问题的最初目的是寻求帮助,以确定是否沿着“戳它”路线,或者只是进行更改,而我们现在正在进行更改,因此我将使用longneck的答案关闭它。

谢谢大家的意见; 像往常一样,serverfault 不仅仅是一个论坛——它也有点像心理学家的沙发:-)

lon*_*eck 94

我建议您进行他们要求的调整。然后对性能进行基准测试,向他们表明它没有区别。您甚至可以使用 LESS 内存和 vCPU 对其进行基准测试,以表明您的观点。

此外,“我们付钱给你,用实际的解决方案来支持软件,而不是猜测。”

  • ...明智的话。我认为这可能是前进的方向,尽管做出改变让我们很痛苦。好的 (?) 事情是更改将需要重新启动,我们可以向我们的业务用户明确这是由于供应商的要求......这几乎肯定会被证明是毫无意义的。听起来我越来越小气了,但我们越来越厌倦供应商明显缺乏适当的故障排除。 (10认同)
  • 供应商玩这种噱头并不罕见。我认为这部分取决于服务水平指标 - 关闭,询问更多信息并建议(无意义的)解决方法,因为至少在某些时候,问题会在此期间消失/得到修复。如果您“拉”了供应商,与客户经理交谈可能会奏效。但不要屏住呼吸。 (6认同)
  • 很好的建议。没有什么比数据更能让人闭嘴了。“我们会按照你的建议进行更改。如果它没有带来预期的改进,你就要承担成本。” 不确定这里有多少系统受到影响,但您证明它们错误的时间很快变得比插入一些额外的 RAM 更昂贵。 (2认同)

Mat*_*Ife 67

如果您确信自己符合他们记录的给定系统规范。

然后,他们就需要更多 RAM 或 CPU 提出的任何声明都应该能够备份。作为他们系统中的专家,我要求人们对此负责。

向他们询问具体情况。

  • 系统上提供的哪些信息表明需要更多 RAM,您是如何解释的?

  • 系统上提供的哪些信息表明需要更多 CPU,您是如何解释的?

  • 我拥有的数据 - 乍一看 - 与您告诉我的内容相矛盾。你能向我解释为什么我可能会错误地解释这个吗?

  • 我将这个[明显的数据系列]解释为[明显的解释]。你能确认我对我的问题的解释正确吗?

在过去处理过支持后,我问过同样的问题。有时我是对的,他们没有正确地将注意力集中在我的问题上。然而,其他时候,我错了,我错误地解释了数据,或者没有包含对我的分析很重要的其他数据。

无论如何,这两种情况对我来说都是一个净收益,要么我学到了一些我以前不知道的新东西 - 要么我让他们的支持团队更加努力地思考我的问题,以找到一个合适的根本原因。

如果支持团队无法为您提供他们的论点的逻辑扩展,以达到您满意的基础(您需要有一个开放的心态来妥协自己,合理地接受您对数据的解释是错误的)那么它应该在他们的回应中非常活跃。即使在最坏的情况下,您也可以将其用作升级问题的基础。

  • +1 承认人为错误可以有两种方式(并且当他们确实试图“关闭”时使支持有点蠕动)。 (10认同)

Tim*_*ham 17

最重要的是能够证明您正在使用系统分配的最佳实践,特别是 SQL 服务器的 RAM 和 CPU 预留。

综上所述,最简单的事情就是进行所要求的调整,至少是暂时的。如果不出意外,它往往会让供应商拖拖拉拉。我数不清有多少次我需要做这样疯狂的事情来满足另一端的技术人员认为他们的软件确实不正常。


eww*_*ite 17

对于这种特定情况(您有 VMware 和应用程序开发人员或不了解资源分配的第三方),我使用从vCenter Operations Manager(vCops -如果需要下载演示)获得的一周的指标来查明真正的限制、应用程序 VM 的瓶颈和大小要求。

有时,我可以通过修改 VM 预留或更改优先级来处理争用场景,从而满足更顽固的消费者;“如果 RAM|CPU 紧张,您的VM 将优先! ”。当我允许软件供应商在没有真正分析的情况下规定他们对我的 vSphere 集群的要求时,坏事就发生了。

但总的来说,数字和数据应该胜出。


我曾经向 Tomcat 应用程序的开发人员证明 VM 大小合理的示例:

开发VM 需要 MOAR cpu!

嗯,内存是你最大的限制,这里有一张你的表现与时间的热图……周三下午 6 点是压力最大的时期,所以我们可以在那个高峰期进行预测。哦,这是基于过去 6 周生产指标的尺寸建议...

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明

  • 我应该补充一点,基于平均值的分析可能会导致错误的结果。在某些情况下,峰值性能很重要,但当它们明显短于您的收集/平均间隔时,您在负载统计信息中看不到峰值。因此,您可能有一个漂亮的彩色“您的整体利用率 <60%”统计图表,但会看到每小时 8 次同时出现 1 分钟峰值的严重性能下降。 (9认同)
  • @SimonCatlin 你不需要购买它。您可以免费下载演示并使用 60 天。它非常适合这种情况。 (2认同)

war*_*ren 10

我曾经在支持部门工作 - 您所要求的部分内容听起来非常合理(并且可能是):但是在执行他们要求的“性能增强”之前,有几个问题要问自己

  • 您是否至少已按照供应商规定的最低系统要求运行?
  • 如果您至少有最少的 sysreqs,那么您是否已经在他们的“推荐”系统设置中?

供应商在 100 次中有 99 次(根据我的经验 - 在支持方面和客户/现场方面)甚至不处理与性能相关的问题,直到/除非系统符合他们的文档要求。也许这是一个在 1 个 CPU 和 512M RAM 的情况下运行良好的系统,99.5% 的时间 - 但是如果系统要求说 4 个 CPU 和 4G RAM,而您只有 2 个 CPU 和 1G RAM,那么他们完全有权要求分配更多资源*

他们很可能要求你增加系统资源,因为他们在实验室/开发中发现了一些问题,如果你跨越特定阈值,问题就会神奇地消失;如果是这种情况,是的,这是他们最终可能进行不良调试的一个例子,但请记住,他们没有时间消除出现的所有可能的错误/问题 - 有些只需要解决,如果就是这种情况,随它去吧。

您所看到的问题甚至不是“他们的”软件的一部分,而是他们依赖于其他来源(供应商、OSS 库等)的组件,这也有很大的可能性。几年前,我在一个客户那里遇到过这种与交换大小、BEA WebLogic 和Sun JRE相关的确切情况。

tl;博士:

简而言之,与他们的支持团队合作,根据需要升级,直到找到解决方案 - 但当某些建议/调试步骤/修复听起来不合时宜或毫无意义时,请不要感到惊讶。


*如果它真的“不需要”那些额外的资源,你可能可以为未来的版本提交文档错误/RFE——但在你证明它不是问题在手
^我写的一本电子书可能对您有帮助:调试和支持软件系统

  • 任何与性能相关的事情都需要花费大量时间和资源来进行故障排除和诊断。毕竟,没有什么是_破碎的_,所以你必须痛苦地追查。 (2认同)
  • “它在其他地方修复了它”是做某事的可怕理由。确实,有时没有时间正确调试问题,您必须凭直觉行事,但想到它仍然让我不寒而栗。我已经看到很多“似乎”可以通过执行 X 来修复的错误,后来才发现问题实际上是在一些看似完全不相关的事情上,这在其他地方导致了更多问题,直到我们弄清楚为止。 (2认同)

Rea*_*tor 8

要么要求升级票证,要么要求不同的代表。如果您说您认为当前的支持级别不能充分解决问题,则取决于升级的供应商,这可能会有所帮助。如果他们不会升级,那么要求不同的代表可能会有所帮助,因为这需要更少的“理由”,因为它所需要的只是对当前的不满意。

如果它是一个大型供应商,那么简单地关闭票证并在同一问题上打开一个新票可能会起作用,因为它可能会被路由到不同的代表,但我建议不要这样做,因为它的形式很差。

您也可以坚持自己的立场,并就更多的 RAM/vCPU 将如何提供帮助提出理由,或者您可以只给它更多的 RAM/vCPU 以证明它无济于事。