我是一个ASP.NET Web开发人员和小企业主。 我把networking作为一种业余爱好,并保持对服务器技术的敏锐,因为我一直与他们互动,作为我工作的一部分。 我也喜欢运行我自己的Exchange服务器的灵活性。 我有一个MSDN订阅,所以这是我的许可证的来源。
目前我有3台物理服务器电脑。
一个是Windows Server 2k3 ISA Server 2006框。 它做我所有的防火墙/路由。
其他两台物理服务器是虚拟机主机。 我正在从VMWare Server 2.0切换到Hyper-V。 我正在Hyper-V环境中重build所有的服务器,我想借此机会修复我的基础架构中的一些缺陷。 我将要描述的其余服务器是虚拟机。 这是我目前的设置:
我了解到,通常不推荐在域控制器上使用Exchange。 有很奇怪的依赖性问题,我必须运行batch file来closures交换服务器服务,然后重新启动,否则重新启动将需要一个小时!
我的虚拟机主机每个双核3GHz,有16个RAM和300 GB的RAID 1存储。 我对硬件非常满意。 这个networking主要是一个爱好,但支持偶尔进来检查我正在为他们build设的networking应用程序的less数客户端。
我在哪里寻找帮助是在我应该有的虚拟机的数量,以及每个人应该扮演的angular色。
我在想(除非另有说明,所有虚拟机都是64位):
每个主机将运行3-5个虚拟机,并且我将确保1)和2)不在同一个主机上,以防整个主机由于硬件故障而closures。
这个configuration是否覆盖了所有的基础? 我有没有适当地分配angular色? 例如,在同一个盒子上安装DHCP和DNS是不是一个好主意?
我意识到很多这取决于我打算使用我的服务器。 我基本上想要运行一个简单的Windows环境与所有最stream行的服务,所以我可以有实践使用它们。 我想很多人会认为我的设置矫枉过正。 但是我喜欢把环境作为一种业余爱好,而且这让我对windows基础设施有了很多的了解, 当我在客户端部署我的应用程序时,这些知识派上用场。
我很高兴提供更多的信息。 谢谢!
你想把域控制器与其他任何东西分开是正确的,这是安全的最佳实践; 另外,就像你已经发现的那样,在DC上运行时,Exchange的performance并不好。
DC可以安全地运行DNS(这确实是推荐的)和DHCP; 我当然会build议在不同的物理主机上分割两个虚拟机,以便尽可能地实现可用性。
您不需要运行Windows Server 2008 R2企业版,因为您没有执行任何故障转移群集,并且x64版本不像x86版本那样受限于可用的RAM; 我知道你有“免费”许可证,但最好使用最适合你的环境的Windows版本,而不是最强大的。
关于虚拟化:如果你的主机只运行虚拟机(他们真的应该),我会build议运行一个“纯粹的”pipe理程序产品,而不是一个完整的操作系统; 所以如果你想和VMWare一起使用,你最好的select是使用微软或者VMWare ESXi(免费版)。 我不知道你是否有使用ESX / ESXi的经验,但是我可以向你保证这是一个与Workstation / Server完全不同的东西。 我个人认为这比Hyper-V好很多,但这主要是个人问题。 无论如何,我会避免运行启用了Hyper-Vangular色的完整Windows Server 2008 R2。
关于authentication机构:这确实应该在自己的(虚拟)服务器上运行,这不应该做任何事情。 既然你是虚拟的,这应该不是特别的问题,它会为你节省一些头痛。
这个设置听起来是正确的。 CA可以直接进入域控制器。 你说的是交换服务器应该自己去pipe理,这是正确的。 唯一缺less的产品是CRM,SharePoint和OCS。