主机系统上 HyperV 下的其他服务(如 MSSQL)是否是正常方法?

主机系统上 HyperV 下的其他服务(如 MSSQL)是否是正常方法?

首先,我对 HyperV 和 Microsoft 的东西不是很熟悉,这个问题可能有点武断。不过,既然我已经了解了以下情况,我想知道这是否真的是可行的方法,还是只是胡说八道。

一家公司即将虚拟化其基础架构。选定的应实施虚拟化的公司计划使用 HyperV 来实现这一目标。我已将他们的计划形象化:

在此处输入图片描述

在我看来,这件事有几个奇怪的地方:

  1. 将 SQLServer 等其他服务直接放在主机系统上而不虚拟化到容器中可以吗?
  2. 域控制器可以虚拟化吗?主机系统可以位于域中,而其客户机之一则是域控制器吗?
  3. 他们这样做是为了节省许可证成本吗?

先感谢您。

答案1

不,这不是最佳实践配置。

  1. 通常,Hyper-V 主机应仅运行作为 Hyper-V 主机所需的最少软件。这意味着 Hyper-V 角色、防病毒、存储服务(iSCSI、存储空间等)、备份代理和系统监控代理。Hyper-V 主机上不应运行任何面向用户的服务

  2. 在虚拟机内运行 DC 是可以的。使用 Windows 2012 R2,加入域的 Hyper-V 主机可以在没有可用域控制器的情况下成功启动和启动虚拟机。在 2012 R2 之前,Hyper-V 主机需要联系 DC 才能启动虚拟机。但是,这有特定的配置要求。就我个人而言,我会运行专用的物理域控制器,只是为了简单起见。

  3. 我不知道他们这样做的动机是什么。任何 Windows 服务器都需要至少 8 个标准许可证,每个许可证允许 2 个虚拟机。因此,只需最低限度地许可 Hyper-V 主机,您至少可以获得 16 个虚拟机。没有许可理由将其限制为 4 个虚拟机。

答案2

您的 Hypervisor 就应该是 Hypervisor,而不是别的。

如果出于实际性能考虑而需要保持 SQL 非虚拟化,那么最好是使用第二台服务器来运行 SQL。但是,如果这是整个基础架构,则最有可能的是,您可以虚拟化 SQL,并在 Hyper-V 中分离存储以将一些存储专用于您的数据库,这样该存储上就不会有其他东西争用 IO。根据性能要求,您甚至可能不需要这样做。

只要您运行的是 Hyper-V 2016,并且不将 Hyper-V 计算机加入域,则虚拟化 DC 不会出现任何问题。如果将 Hyper-V 框加入域,如果 DC VM 重新启动时出现问题,则进入服务器时可能会遇到一些问题。2016 支持拥有加入域的 Hyper-V 主机来托管您的唯一 DC,但我不会这样做。不管 MS 现在怎么说,保持至少一个物理 DC 运行是更安全的,以防虚拟 DC 启动时出现问题,导致您无法登录 Hyper-V 框进行管理。

但是,您不应该将 WSUS 放在 DC 上。域控制器应与虚拟机管理程序具有相同的特殊性。只在其上运行所需的程序,不运行其他程序。在较小的商店中,在一个盒子上运行 DNS/DHCP/DC 非常常见,只需隔离 DHCP 服务帐户即可。在大型网络中,在单独的盒子上运行 DHCP 是一种更好的配置。

所有这些都是可能的,而且更便宜。使用 AVMA,只要您已获得主机中所有核心的许可,您就可以简化激活/许可。我假设您使用的是 Server 2016 Datacenter,在这种情况下,您的许可证涵盖添加额外的服务器来执行 WSUS。当整个主机都获得许可时,数据中心会为您提供无限的虚拟化环境,因此您最好将 WSUS 从 DC 中分离出来。

有关配置 DHCP 的更多详细信息请参见:https://blogs.technet.microsoft.com/stdqry/2012/04/03/dhcp-server-in-dcs-and-dns-registrations/

有关 Hyper-V 上其他应用程序的最佳实践的更多信息,请参见: https://blogs.technet.microsoft.com/uspartner_ts2team/2014/01/15/if-im-using-hyper-v-what-other-services-should-run-in-the-host-os/

有关 AVMA 的更多信息,请参见: https://blogs.technet.microsoft.com/hybridcloudbp/2​​016/01/29/windows-server-activation-best-practices/

相关内容