我有一台 Windows Server 2012 DC。我的主机只运行 Hyper-V 和 RAT 功能集。然后,我在自己的 VM 中安装了 DHCP,并在自己的 VM 中安装了 AD DS/DNS/WINS。在自己的 VM 中安装了 SQL 2014 ENT,在自己的 VM 中安装了 WSUS,在自己的 VM 中安装了 WDS/MDT 和部署。
为了便于维护和更新,将服务保留在各自的虚拟机中是一种好的做法吗?我知道有些 Windows 服务器无论如何都无法放在一起,而如果将它们分开,似乎可以避免出现复杂情况的风险,如果出现任何问题,重新安装和重新配置就不会那么麻烦了。
是否有人具有实际经验,可以帮助我如何正确设置和维护所有这些 Windows 服务器?
答案1
看来你的思路基本正确。
主机操作系统只应用于 HyperV。主机操作系统上没有重要内容意味着可以轻松将所有内容迁移到新主机,在许多情况下无需停机。
我通常将 DHCP 和 DNS 放在域控制器上。除非是大型网络,否则 DHCP 不需要自己的服务器。确保您至少有 2 个域控制器。
有些东西,比如 exchange 和 sharepoint,应该始终有一个单独的 VM(或多个,取决于规模)。将它们与其他服务放在同一个 VM 上会使升级变得困难甚至不可能。
其他人可以共享,具体取决于网络的大小。例如,WSUS 可以在小型环境中驻留在文件服务器上。
VM 磁盘的大小也会产生影响。将占用大量存储空间的内容保留在自己的 VM 上,可以比使用一台大型多 TB 机器更快地进行备份和恢复。
另一个考虑因素是谁使用它们,以及它们有多重要。对于仅供 IT 部门使用且可以容忍一些停机时间的服务,我将服务器设置为自动执行 Windows 更新。这有两个好处 - 我需要加班并在维护时段手动修补的服务器更少,而且我通常会在修补关键系统之前了解导致我的服务器崩溃的损坏更新。如果更重要的东西位于同一台虚拟机上,我就无法做到这一点。
答案2
这里没有“一个答案”,这取决于您的目标。
对于诸如 Active Directory 域服务之类的东西,您应该只在域控制器上运行 AD DS、DNS 和(如果您真的必须 - 呸)WINS。
对于其他服务器,除非存在兼容性问题或其他供应商特定的建议,否则您可以根据性能和硬件限制进行混合搭配。例如,MDT 服务器可能会消耗大量网络带宽,因此我不想将文件服务或 SQL Server 放在同一个盒子里,因为这可能会对性能产生负面影响。此外,使用单一用途的服务器可以使升级更容易,因为您只需一次修复一个应用程序或角色,因此您可以拥有一个更模块化的环境。
另一方面,您拥有的服务器越多,您用于运行底层操作系统的资源就越多。您还需要修补、维护、备份和保护更多服务器。
因此,对于最重要的服务器,您可能应该保持模块化。对于第 2 层和第 3 层服务器,这确实取决于具体情况。