我在ServerFault上发现了一些关于这个主题的问题,虽然它可能有点基于观点,但我认为它可以归结为基于以下内容的“良好的主观”类别: build设性的主观问题: * tend to have long, not short, answers * have a constructive, fair, and impartial tone * invite sharing experiences over opinions * insist that opinion be backed up with facts and references * are more than just mindless social fun 所以,这样的方式。 我正在帮助一个正在replace运行Windows 2003的老式物理服务器的系统pipe理员,他正在寻求不仅replace硬件,而且在升级过程中升级到2012 R2。 在我们讨论关于更换硬件的讨论中,我们讨论了他安装ESXi,然后将2012服务器作为虚拟机,将旧的应用程序/文件/angular色从2003服务器迁移到虚拟机而不是非虚拟机安装的可能性在新的硬件上。 在未来几年内,他并没有意识到需要将其他任何东西移动到虚拟机或创build额外的虚拟机,因此最终这将是运行正常安装的新硬件或在ESXi上运行单个虚拟机的新硬件。 我自己的经验还是会依赖虚拟机,除了创造更多虚拟机的可能性之外,没有真正有说服力的理由这样做。 但现在pipe理程序还有额外的开销和pipe理方面的问题,尽pipe我已经体验了更好的虚拟机pipe理function和报告function。 因此,希望在今后能保持“好的主观”类别以帮助其他人的前提下, 您需要什么样的经验/事实/参考/build设性的答案来支持任何一个结果(虚拟化或不是单一的“服务器”) ?
这个问题之前已经被问过了,但是我相信世界已经发生了变化,所以再次被问到。 irqbalance在今天的系统上有什么用处,我们有NUMAfunction的CPU,内核之间共享内存? 运行irqbalance –oneshot –debug显示现代VMware ESXi环境中的虚拟客户机正在共享内核之间的NUMA节点。 # irqbalance –oneshot –debug 3 Package 0: numa_node is 0 cpu mask is 0000000f (load 0) Cache domain 0: numa_node is 0 cpu mask is 0000000f (load 0) CPU number 0 numa_node is 0 (load 0) CPU number 1 numa_node is 0 (load 0) CPU number 2 numa_node is […]
这看起来很基本,但我对手动更新独立VMware ESXi主机所涉及的修补策略感到困惑。 VMware vSphere博客试图解释这一点 ,但实际的stream程仍然不清楚。 从博客: 假设Patch01包含以下VIB的更新:“esxi-base”,“driver10”和“driver 44”。 然后Patch02出来更新“esxi-base”,“driver20”和“driver 44”。 P2是累积的,因为“esxi-base”和“driver44”VIB将包括Patch01中的更新。 但是,重要的是要注意Patch02不包含“驱动程序10”VIB,因为该模块没有更新。 这个VMware社区的post给出了一个不同的答案。 这个与另一个矛盾。 我遇到的许多ESXi安装是独立的,不使用Update Manager 。 可以使用通过VMWare修补程序下载门户提供的修补程序来更新单个主机。 这个过程很简单 ,所以部分是有意义的。 更大的问题是确定实际下载和安装的内容。 就我而言,我拥有大量特定于HP的ESXi版本,其中包含用于HP ProLiant硬件的传感器和pipe理。 假设这些服务器从9/2011版本的ESXi版本#474610开始。 查看下面的修补程序门户屏幕快照,有一个针对ESXi update01的修补程序,构build号为#623860。 还有修补程序#653509和#702118的修补程序。 引入旧版本的ESXi(例如特定于供应商的版本),使系统完全保持最新状态的正确方法是什么? 哪些补丁是累积的,哪些需要按顺序应用? 是安装最新的构build正确的方法,还是我需要退后一步,并增量补丁? 另一个考虑是补丁下载的大尺寸。 在带宽有限的站点,下载多个〜300MB的补丁是很困难的。
在某些虚拟机触发的情况下,ESXi中的NFS数据存储上遇到大约五秒的 fsync延迟。 我怀疑这可能是由使用NCQ / TCQ的虚拟机引起的,因为虚拟IDE驱动器不会发生这种情况。 这可以使用fsync-tester (Ted Ts'o)和Ioping来复制 。 例如,使用带有8GB磁盘的Grml Live系统: Linux 2.6.33-grml64: root@dynip211 /mnt/sda # ./fsync-tester fsync time: 5.0391 fsync time: 5.0438 fsync time: 5.0300 fsync time: 0.0231 fsync time: 0.0243 fsync time: 5.0382 fsync time: 5.0400 [… goes on like this …] 那是5秒,而不是毫秒。 这甚至在运行在同一主机和数据存储上的不同虚拟机上创buildIO延迟 : root@grml /mnt/sda/ioping-0.5 # ./ioping -i 0.3 -p 20 […]
VMware内存pipe理似乎是一个棘手的平衡行为。 有了集群RAM,资源池,VMware的pipe理技术(TPS,膨胀,主机交换),客户机内RAM利用率,交换,预留,份额和限制,还有很多变数。 我处于客户端使用专用vSphere群集资源的情况。 但是,他们正在configuration虚拟机,就好像它们在物理硬件上一样。 反过来,这意味着一个标准的VM版本可能有4个vCPU和16GB或更多的RAM。 我来自小的学校(1个vCPU,最小的RAM),检查现实世界的使用和必要的调整。 不幸的是,许多供应商的要求和不熟悉虚拟化的人需要更多的资源,而不是必要的…我有兴趣量化这个决定的影响。 来自“问题”群集的一些示例。 资源池摘要 – 看起来几乎是4:1过度提交。 注意大量的膨胀的RAM。 资源分配 – “最差情况分配”列显示,这些虚拟机在受限条件下可以访问configuration的RAM的50%以下。 上面列表中顶级虚拟机的实时内存利用率图。 4个vCPU和64GB RAM分配。 平均使用9GB以下。 同一个VM的摘要 在vSphere环境中过度使用和过度configuration资源(特别是RAM)有什么缺点? 假设虚拟机可以运行在更less的内存中,那么说虚拟机的configuration比实际需要更多的内存,这是否公平呢? 有什么反驳: “如果一个虚拟机有16GB的RAM分配,但只使用4GB,有什么问题? ”? 例如,客户需要教育虚拟机与物理硬件不一样吗? 应该使用什么特定的度量来度量RAM的使用情况。 跟踪“主动”与时间的峰值? 看着“消费”? 更新:我使用vCenter Operations Manager来分析此环境,并获取上面列出的群集统计信息的一些详细信息。 虽然事情肯定是过度的,虚拟机实际上是过度configuration与不必要的内存,真正(微小)的内存足迹显示在集群/主机级别没有内存争夺… 我的结论是,虚拟机应该是正确的大小,有一点点的操作系统级caching的缓冲区。 超出无知或供应商的“要求”导致这里提出的情况。 在任何情况下,内存膨胀似乎都很糟糕,因为性能会受到影响,所以正确的大小可以帮助防止这种情况发生。 更新2:这些虚拟机中的一些开始崩溃: kernel:BUG: soft lockup – CPU#1 stuck for 71s! VMware将此描述为大量内存过度使用的症状 。 所以我想这个问题的答案。 vCops“超大型虚拟机”报告… vCops“可回收废物”图…
不是一个技术性的问题,而是一个有效的问题。 场景: 带有2个8核Xeon E5-2667 CPU和256GB RAM的HP ProLiant DL380 Gen 8,运行ESXi 5.5。 给定供应商系统的八个虚拟机。 四台虚拟机用于testing,四台虚拟机用于生产。 每个环境中的四个服务器执行不同的function,例如:Web服务器,主应用程序服务器,OLAP DB服务器和SQL DB服务器。 CPU共享configuration为阻止testing环境影响生产。 SAN上的所有存储。 我们对性能有一些疑问,供应商坚持要给生产系统更多的内存和vCPU。 但从vCenter可以清楚地看到,现有的configuration还没有被触及,例如:主应用服务器的CPU利用率每月查看率在8%左右,奇数高达30%。 高峰往往与备份软件踢进一致。 RAM上的类似故事 – 服务器上的最高利用率数据是〜35%。 因此,我们一直在使用Process Monitor(Microsoft SysInternals)和Wireshark进行挖掘,我们向厂商推荐的是他们首先进行了一些TNS调优。 但是,这是不言而喻的。 我的问题是:我们如何让他们确认我们发送给他们的VMware统计数据足以certificate更多的RAM / vCPU不能提供帮助? —更新12/07/2014 — 有趣的一周。 我们的ITpipe理层已经表示,我们应该改变虚拟机的分配,现在我们正在等待业务用户的停机。 奇怪的是,商业用户是说,应用程序的某些方面运行缓慢(相比之下,我不知道),但他们会“让我们知道”什么时候我们可以采取系统(抱怨,发牢骚!)。 另外,系统的“慢”方面显然不是HTTP(S)元素,即: 大部分用户使用的“瘦应用程序”。 这听起来像是主要金融机构使用的“胖客户”,显然是“慢”。 这意味着我们正在考虑调查中的客户端和客户端 – 服务器交互。 由于这个问题的最初目的是为了寻求帮助,是否要去“捅它”的路线,或者只是做出改变,而现在我们正在做出改变,我会用龙的答案closures它。 谢谢大家的意见。 像往常一样,serverfault已经不仅仅是一个论坛 – 它也像一个心理学家的沙发一样:-)