我想要听取第二种意见;如果这个问题已经得到解答,请原谅(请给我指明正确的方向)。
我所参与的项目中,不同派系正在虚拟服务器和物理服务器之间展开一场圣战。我们正在实施 COTS IBM 文档管理系统(DB2 等)。
普遍的观点是,我们应该将一切虚拟化,我们的供应商合作伙伴也支持这种观点;但工作中的一些螺旋桨头却反对这一点,特别是对于中央元数据服务器(基本上是一个大型的 DB2 数据库)。
我的问题在于我有开发背景(我对此一无所知),因此欢迎提出独立的观点。
虚拟与物理的区别是什么?什么时候应该虚拟化,什么时候不应该虚拟化?一般优点/缺点等。我的首发是 10 - 把我打倒了...
虚拟的:
- 适合 DR(如果您所在的 VM 服务器发生故障,您可以在不同的 VM 服务器上设置一个新实例,即您正在运行的物理机箱)
- 对于某些数据库场景来说不好吗?
- 性能略有下降(不确定具体情况)
答案1
总体而言,如果您当前运行的虚拟化平台完全支持您打算运行的客户操作系统,那么虚拟化是一个不错的选择。有些用例需要更仔细的检查:
- 终端服务(或用户并发性非常高的服务)
- 有趣的 Linux 风格
- 数据库或电子邮件服务器
- 带有不寻常外围附件的服务器
- 具有独特/非常高资源要求的服务器
根据您的具体情况,请查看系统需要支持的并发用户数量,以及将其作为物理机运行所需的物理硬件规格类型。如果需要一台拥有 4 个处理器、4 核、32GB RAM 和本地 6 磁盘 SAS 驱动器条带的机器,它就不是虚拟化的理想选择。如果它对其中任何一个方面有很高的要求(例如只需要一个超快磁盘),它就被归类为“可能”类型,需要进行一轮测试才能做出决定。
如果数据库可以在具有适量 RAM(8Gb 以下)的基本 1 或 2 个处理器的服务器上正常运行,并且磁盘吞吐量不是太大,则对其进行虚拟化。
如果您要选择为系统购买全新硬件或虚拟化到现有 VM 基础架构,请先进行虚拟化,然后仅在需要时迁移到物理服务器。精心规划的服务器的特点是您可以根据需要轻松重建它 ;)
答案2
这样的话题必须结合您的环境来考虑,不能作为一个一般概念给您明确的答案。您需要考虑所有事情,首先是虚拟机是否能够提供您所需的性能。这包括存储系统是否能够跟上。这当然往往是数据库系统的大问题。我认为在做出最终决定之前需要对此进行充分测试。如果您无法测试,风险可能太大。
我个人并不喜欢虚拟化,但这至少部分归因于我现在的工作环境以及以前的工作环境。其中一个问题是,你倾向于把太多的鸡蛋放在一个篮子里。如果该硬件发生故障,则该服务器上的所有虚拟机都会发生故障。如果你有备用硬件,或者至少现在能够获得一些,那么这很好,但这不是我工作的世界。
答案3
我们在虚拟化环境和原生环境中运行服务器。这既适用于基于 Linux 的服务器,也适用于 Windows 服务器和桌面。说哪个更好完全取决于你需要做什么。有时虚拟化更好,有时则不然。
虚拟化优点:
- 易于备份
- 易于设置(从克隆开始)
- 几乎可以使用所有硬件资源(这些资源通常未被使用)
虚拟化的缺点:
- 一个服务器宕机=许多服务器离线
- 成本。如果您想要从一个 VMWare 客户端控制多台机器,许可通常很昂贵。
- 成本。如果你想支持两个以上的处理器,许可费用会很昂贵
最后一点。虚拟化非常适合运行常规服务器和桌面,但当您需要设置不太传统的设置时,请务必小心。例如,我们有两个连接到网络附加存储设备的 Web 服务器,当它们未虚拟化时没有任何问题。当我们将它们移入虚拟环境时,我们遭受了巨大的损失,因为我们的虚拟化设备无法与存储设备很好地配合(I/O 问题)。因此,在尝试复杂的设置之前,请先做好硬件功课(这几乎不言而喻)。
最后一点,虚拟化非常棒,而且已经取得了长足的进步。我喜欢它的很多功能。但除非你真的需要设置更多服务器,而且你没有硬件,否则它可能帮不了你太多忙。
我们从虚拟化中获得的最大优势:物理空间。