大家好...请原谅我,因为我的服务器管理能力还不够强。我目前正在查看需要构建的新服务器的规格。该服务器需要执行多项任务,例如:
- 网络服务器
- 托管 SQL Server 2008
- 可能的开发暂存服务器
我计划安装 Windows Server 2008,但需要知道在同一台机器上安装多个独立虚拟服务器是否更有效率;一个用于 Web 服务器,一个用于数据库服务器等,还是只在同一个操作系统实例上安装 Windows Server 和 SQL Server。这些方法的优缺点是什么,什么时候我需要考虑迁移到多服务器架构。
我理解性能与此有很大关系,因此为了便于讨论,我们假设服务器将具有 Dual-QC Xeon(约 2.66 GHz)和 16-32 GB(内存太便宜了)。谢谢。
答案1
虚拟化的主要优势之一是您的 3 个组件现在彼此独立,开发人员可以随意摆弄临时服务器,甚至破坏它,而不会影响 SQL 或 Web 服务器。如果您发现需要重启一台服务器,您可以这样做而不会影响其他服务器。
这也意味着您可以分割资源,如果您的 Web 服务器使用大量内存,您可以给它一些额外的内存,并从开发服务器中拿走一些内存,而不必担心开发人员会运行一些占用大量内存的应用程序,从而阻止您的 Web 应用程序运行。
它还使备份更容易,您可以拍摄整台机器的图像,并在出现问题时轻松恢复,甚至可以恢复到新硬件。
但是也有一些缺点,资源占用会更多,你运行 3 个操作系统而不是 1 个(如果算上主机,则是 4 个),也就是说需要 3 个额外的内核,内存、CPU 能力和磁盘空间。此外,还有额外的许可成本,包括 Windows 许可证和 CAL。
答案2
单独的虚拟机让您以后可以选择迁移到独立的物理硬件,而麻烦少得多。使用现代虚拟化产品并在所有虚拟机中选择少于总数(8)的核心总数将有所帮助。
例如,如果您为生产 Web 服务器 VM 分配 2 个核心、生产 SQL VM 分配 2 个核心、开发 Web 服务器分配 1 个核心、开发 SQL VM 分配 1 个核心,那么就应该没问题。
另一个有帮助的关键因素是快速地磁盘,并将机器隔离到单独的磁盘,或者采用像 SAN 这样的重型解决方案。我们在工作中使用 SAN 来为刀片服务器场上运行的 30 个不同的虚拟机提供数据,它工作得非常好。它只是昂贵的。
答案3
CPU 可能不会成为影响因素,但 IO 会成为影响因素。如果您不知道工作量,请准备将磁盘升级到更快的阵列(未提及)。我会从至少在您当前拥有的设备上添加一个双端口网卡开始(我指望至少有 1 个其他网卡已经存在)。这将允许您将 Web 服务器放在 DMZ 中,并将其余服务器置于防火墙后面。(您可以使用 vlan 标签,但我不太喜欢它们)
答案4
除非您手边有备用硬件,并随时准备部署,否则不会发生这种情况。单点故障在业内被称为“坏事”。