AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 581817
Accepted
TheCleaner
TheCleaner
Asked: 2014-03-14 06:10:55 +0800 CST2014-03-14 06:10:55 +0800 CST 2014-03-14 06:10:55 +0800 CST

在新硬件上部署单个服务器时,您是否对其进行虚拟化?

  • 772
想要改进这篇文章?提供这个问题的详细答案,包括引文和解释为什么你的答案是正确的。没有足够细节的答案可能会被编辑或删除。

我在 ServerFault 上发现了一些暗示这个主题的问题,虽然它可能有点基于意见,但我认为它可以根据以下内容属于“良好的主观”类别:

建设性主观问题:

* 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

所以不碍事。


我正在帮助一位正在更换运行 Windows 2003 的旧物理服务器的系统管理员同事,他不仅希望更换硬件,而且希望在此过程中“升级”到 2012 R2。

在我们关于他的替换硬件的讨论中,我们讨论了他安装 ESXi,然后将 2012 年“服务器”作为 VM 并将旧应用程序/文件/角色从 2003 年服务器迁移到 VM 而不是非 VM 安装的可能性在新硬件上。

在接下来的几年里,他认为不需要将其他任何东西转移到 VM 或创建额外的 VM,因此最终这将是运行正常安装的新硬件或在 ESXi 上运行单个 VM 的新硬件。

我自己的经验仍然倾向于使用虚拟机,除了创建额外虚拟机的可能性之外,没有真正令人信服的理由这样做。但是现在虚拟机管理程序有额外的开销和管理方面,尽管我已经体验了更好的管理功能和虚拟机报告功能。

因此,在希望这可以保留在“良好的主观”类别中以在未来帮助他人的前提下,您必须提供哪些经验/事实/参考/建设性答案来帮助支持任一结果(虚拟化或不是单个“服务器”) ?

virtualization
  • 11 11 个回答
  • 5179 Views

11 个回答

  • Voted
  1. Best Answer
    HopelessN00b
    2014-03-14T06:52:33+08:002014-03-14T06:52:33+08:00

    在一般情况下,将独立服务器放在管理程序上的优势是面向未来。它使未来的扩展或升级更容易、更快,因此更便宜。主要缺点是额外的复杂性和成本(不一定是财务上的,而是从工时和时间的角度来看)。

    因此,为了做出决定,我问自己三个问题(通常更喜欢将服务器放在管理程序上,因为它的价值)。

    1. 虚拟机管理程序的附加成本有多大?
      • 在财务上,它通常很少或根本不存在。
        • VMware 和 Microsoft 都有许可选项,允许您免费运行主机和单个来宾,这对于大多数独立服务器来说已经足够了,例外情况通常是资源特别密集的服务器。
      • 从管理和资源的角度来看,确定成本可能有点棘手。
        • 您基本上将维护系统的成本增加了一倍,因为现在您有两个系统需要监控、管理和更新补丁和更新(客户操作系统和主机操作系统)。
          • 对于大多数用途来说,这没什么大不了的,因为维护一台服务器并不是很费力,但对于一些特别小的或特别有技术挑战的组织来说,这可能是一个真正的问题。
        • 您还增加了所需的技术技能。现在,您不仅需要能够从 Windows Update 下载更新的人员,还需要具备足够知识来管理和维护虚拟化环境的人员。
          • 同样,通常不是问题,但有时,它超出了组织可以处理的范围。

    2. 易于升级或扩展的好处有多大?
      • 这归结为未来扩展的可能性有多大,因为很明显,如果他们不扩展或升级他们的服务器资产,这个好处是零。
        • 如果这种组织只是将服务器塞在角落里,然后在 10 年内忘记它,直到无论如何都需要更换它,那是没有意义的。
        • 如果他们可能在组织上,甚至只是在技术上发展(比如添加具有不同角色的新服务器,而不是仅仅拥有一个一体化服务器),那么这将提供相当大的好处。

    3. 现在有什么好处?
      • 虚拟化带来了超越未来的好处,在某些用例中,它们可能是巨大的。
        • 最明显的一个是在系统上做某事之前创建快照和简单的恢复备份的能力,所以如果它变坏了,你可以一键恢复。
        • 尝试其他虚拟机(并玩“假设”游戏)的能力是我看到管理层感到兴奋的另一件事。不过,对我来说,最大的好处是在虚拟机管理程序上运行生产服务器所获得的额外可移植性。如果确实出了问题,并且您让自己陷入灾难恢复或从备份中恢复的情况,那么将磁盘映像恢复到运行相同管理程序的机器上几乎比尝试进行裸机恢复要容易得多。
    • 27
  2. ewwhite
    2014-03-14T06:35:01+08:002014-03-14T06:35:01+08:00

    我认为被虚拟化的操作系统以及性能要求和扩展/增长潜力是一个重要因素。今天的服务器对于我们使用的应用程序和操作系统来说通常过于强大。根据我的经验,大多数标准 Windows 系统无法有效利用现代双路服务器中的可用资源。在 Linux 中,我利用了一些精细的资源管理工具 ( cgroups ) 和容器 ( LXC ) 来更好地利用物理系统。但市场绝对是面向虚拟化优化硬件的。

    也就是说,我在少数情况下虚拟化了单一系统而不是裸机安装。常见的原因有:

    • 许可- 基于严格的核心、插槽或内存限制(不考虑现代计算的趋势)许可的应用程序数量正在减少。请参阅:在 BIOS 中禁用 CPU 内核?

    • 可移植性——虚拟化服务器将虚拟机从硬件中抽象出来。这使得平台更改的破坏性更小,并允许 VM 引用标准虚拟化设备/组件。使用这种方法,我已经能够维持陈旧(但很重要)的 Windows 2000 系统的生命支持。

    • 未来扩展——我现在有一个客户,他有一个在 2001 时代硬件上运行的 Windows 2003 域控制器。我正在为他们构建一个新的单主机 ESXi 系统,该系统将临时容纳一个 2012 R2 新域控制器。但更多的虚拟机将随之而来。在这种配置中,我可以提供可靠的资源扩展,而无需额外的硬件成本。

    使用单个主机/单个 VM 执行此操作的缺点是管理。我是从 VMware 的角度来的,但在过去,ESXi 对这种安排更友好一些。如今,vSphere Web Client 的要求和对基本功能的访问受限,使得运行单主机(和单虚拟机)解决方案的吸引力降低。

    其他考虑因素是削弱硬件监控以及与常见外部外围设备(USB 设备/磁带驱动器/备份/ UPS 解决方案)相关的更多复杂性。今天的管理程序确实希望成为更大的管理套件的一部分。

    • 16
  3. Safado
    2014-03-14T06:32:26+08:002014-03-14T06:32:26+08:00

    虚拟化单个服务器有一些好处。首先想到的几件事是

    • 创建快照
    • 导入/导出 VM(例如,将 VM 导出为 .OVF,以便开发人员将其加载到 Workstation 或 Player 中以获得服务器的精确副本)
    • 轻松克隆或制作模板(当您认为虚拟机不错时)
    • 将来随时可以添加额外的虚拟机

    我认为其中最重要的是快照功能。我们在整个公司都使用 VMWare,所以对我们来说,当需要更多 VM 时让服务器“准备好”是有意义的。

    • 10
  4. Sven
    2014-03-14T06:32:26+08:002014-03-14T06:32:26+08:00

    这不是一个长答案,但无论如何:

    将管理程序用于单个服务器的最令人信服的原因是,尤其是对于像 Windows Server 这样的东西,您拥有生产操作系统的全部硬件抽象,并且可以在需要时将其移动到全新的服务器硬件而没有任何问题。我认为这是一个真正有价值的特性,它远远超过了在后台运行一个实际的不必要的虚拟机管理程序的缺点。

    • 10
  5. joeqwerty
    2014-03-14T07:18:29+08:002014-03-14T07:18:29+08:00

    我不会像其他人那样在这里提供详细的答案,所以我只想说,这些天我发现越来越难证明在裸机上安装服务器操作系统而不是安装管理程序(你的选择)和虚拟化工作负载。在我看来,这样做的好处是:

    1. 成本效益。从长远来看,如果我需要部署额外的工作负载,我不必为这些额外的工作负载购买更多硬件。在某些情况下,使用 Hyper-V 时,我什至可以节省许可费用。

    2. 易于部署和重新部署。

    3. 易于实施高可用性和故障转移。

    4. 可移植性。如果我需要停用或外包当前主机,我可以将虚拟机移动到几乎任何地方。

    5. 未来的证明。您的系统管理员同事目前可能看不到未来对基于虚拟机管理程序的基础架构的任何需求,但我的猜测是,在 12 到 24 个月内,他会并且他会很高兴他选择走虚拟化路线,如果他确实选择了那条路线.

    6. 灾难恢复。我可以在几分钟内备份整个 VM 并将其还原或复制到另一台主机。

    等等等等...

    • 7
  6. ETL
    2014-03-14T06:58:31+08:002014-03-14T06:58:31+08:00

    以下是我说 VM 更好的几个原因:

    • 内置“KVM over IP”(有点)——您可以在控制台上远程访问您的服务器,而无需 KVM over IP。有时您只是不想通过 RDP 做某事而需要控制台访问。使用虚拟机,您可以启动选择的管理工具(XenCenter、vSphere Client 等),然后您就在虚拟机的控制台上。

    • 使用虚拟机(对于非虚拟机服务器,使用基于 IP 的 KVM),我不再需要在寒冷的服务器机房里呆上几个小时。

    • 迁移到新硬件 - 除了操作系统升级,要安装新硬件,您必须迁移系统、移动设备等。使用虚拟机,您(通常)不需要做任何事情。您升级硬件,将 VM 文件放在新硬件上并启动。

    • 虽然人们无法预见未来的虚拟机,但“如果你构建它,它们就会出现”。你会想要启动一个新的虚拟机来测试一些东西并尝试新的东西等等。还有更多的可能性。

    • 虚拟机使您能够使用快照恢复、复制它、克隆虚拟机(在运行时)然后启动它——无论是在投入使用之前测试某些东西,还是仅仅拥有一秒钟的第一的。您可以使用 VM 快照等做很多事情。

    • 冗余——如果你加入第二台虚拟机服务器,你可以拥有冗余硬件,虽然我不知道当前的 VMWare 许可方案,但 XenServer 现在有 XenMotion 显然是免费包的一部分,因此成本开销可能不适用。

    我不会使用虚拟机的原因:

    • 开销 - 几乎没有,但显然有一些开销。

    • 管理更复杂 - 稍微复杂一点,但很容易学习。如果您不打算使用大型虚拟化环境,那么培训是微不足道的。

    • 6
  7. Katherine Villyard
    2014-03-14T07:32:34+08:002014-03-14T07:32:34+08:00

    我来晚了,感觉人们已经提出了一些我想提出的观点,但我将简要回顾一下:

    • 面向未来:更容易添加更多 RAM/CPU/磁盘/等。随着需要的出现。
    • 可移植性:更容易迁移到新硬件,尤其是在发生灾难的情况下。
    • 虚拟化比保留可怕的旧硬件来运行您无法摆脱的东西要好。
    • 管理软件通常与 KVM 或 DRAC 一样好。(另外,如果你碰巧继承了前任管理员离开时没有留下密码的东西,你可以将它们用作“物理访问”来闯入。出于同样的原因,就像我车里的断线钳一样方便——以前管理员在一项工作中使用了硬件挂锁。我继承了服务器,但没有继承密钥。)
    • 快照和制作副本,以便我可以在部署风险程序之前对其进行测试。

    但是,目前还没有人提到并且可能应该提到的事情:如果您所在的商店可能需要测试服务器,并且可能会通过获取备用桌面和拍打服务器操作系统来解决该需求在它上面,能够为他们提供虚拟机可能会更好地满足您和他们的需求。虚拟化新服务器可能是允许未来虚拟扩展的“原因”。(而且,坦率地说,如果你不在那种商店里,你可能已经有了虚拟化。)

    当然,并非所有东西都虚拟化。我通过向他们描述他们需要做什么来关闭 TCP 段卸载(PXE 在 TSO 开启的情况下像一只独腿狗一样运行,但他们不得不将其关闭,从而为包括 PXE 的管理软件的物理硬件打分)对于整个虚拟 VLAN,他们不愿意这样做)。因此,如果新服务器的专业性足以不适合,那么,没关系。

    但是,除非是那种类型的专业化,否则现在或将来摆脱一堆(可能不受管理的)运行服务器操作系统的 PC 级机器对我来说是值得的。

    • 5
  8. dyasny
    2014-03-14T20:35:44+08:002014-03-14T20:35:44+08:00

    当然,我会尽可能地进行虚拟化。这使我可以为将来做以下事情做准备:

    • 完整的系统备份更容易完成,而且通常也更便宜。
    • 操作系统可以移植,如果需要,我可以将 VM 移动到另一台主机,无论是否停机和集群,此时都无所谓
    • 在某些条件下,Windows 许可可能会变得更便宜
    • 当硬件不足时,我可以在拍摄快照后使用生产系统来测试更新(不是最佳实践,而是预算、预算……)。不能在普通主机上执行此操作,除非它从昂贵的 SAN 启动
    • 获得尽可能低的终端服务器硬件,我仍然可以获得比特定服务器角色所需的更多资源。不妨获得更好的硬件并将其全部用于虚拟机。
    • 虚拟化功能通常可以取代不必要的软件。例如,我以前经常设置 doubletake 和 neverfail,设置 Windows 服务器的 DR 副本。通过虚拟化,我可以在管理程序级别做到这一点,利用便宜得多的技术,并运行更可靠和灵活的解决方案。

    简而言之,除非服务器将运行有限制的特定软件,禁止它被虚拟化(通常严格的网络或磁盘 IO 延迟要求,并且使用正确的硬件,即使是那些可以通过虚拟化实现的)我尽量保留尽可能虚拟。

    • 3
  9. TheCleaner
    2014-03-14T06:44:54+08:002014-03-14T06:44:54+08:00

    我认为支持将单个服务器虚拟化为单个主机上的 VM 的一个原因是,它使您能够为该“服务器”处理测试环境。

    如果硬件功能强大,您可以克隆服务器虚拟机并删除其 NIC/网络功能,并将该克隆隔离为“测试平台”,然后在“生产”服务器上尝试相同的操作。例如,如果服务器正在运行 ERP 软件,并且您想测试如果您针对 ERP 软件/数据库运行特定脚本会发生什么。您可以先在克隆的 VM 上进行测试。这可以在部署之前与实时 VM 的快照一起完成,另外还有一个好处是知道它应该可以正常工作。

    可以使用现有物理服务器的 P2V 创建相同的克隆“测试”环境,但是您需要额外的物理主机来放置新的测试虚拟机……在上面的所有内容都可以驻留在同一个物理服务器上硬件(如今对于单个 VM 来说几乎总是矫枉过正)

    • 2
  10. tomstephens89
    2014-03-14T08:14:47+08:002014-03-14T08:14:47+08:00

    如果您的用例不需要 100% 的专用硬件功率,那么我每次都会虚拟化。它提供了灵活性、快照功能和内置的控制台访问(即使您也应该使用带外管理)

    • 2

相关问题

  • 哪些 939 插槽芯片支持 AMD-V?

  • Windows Server 2008 Hyper-V 虚拟化服务器的最佳 RAID 配置?

  • VirtualBox 上 Ubuntu 的访客优化技巧 [关闭]

  • 外部硬盘上的 virtualbox 虚拟硬盘驱动器(Vista 主机上的 ubuntu 客户机)

  • 物理机重启时自动重启虚拟机(VMWare)

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve