基础架构build议 – 应用和networking服务器

我想问一下服务器基础架构的build议。 我们将升级我们的networking基础设施(基于MS生态系统),到目前为止,我们有两台服务器(不包括ISA服务器):一台服务器提供Exchange,IIS,SQL等应用服务,另一台服务器提供networking服务域控制器,networking服务,如DNS,DHCP,证书,它也是一个文件服务器。这两个服务器都在本地子网192.168.xx

应用程序服务器部分通过服务器发布规则从外部访问,通过ISA服务器为特定的服务(例如,Exchange服务器)。 这种设置适用于中小型组织,因此性能不是问题。

现在我们将升级旧硬件,查看我们当前的服务器基础结构可能会很好。 我们需要的是:

  • 域控制器
  • networking服务(DNS,DHCP,…)
  • Exchange服务器
  • SQL服务器
  • IIS
  • TFS
  • 文件服务器
  • 更新服务
  • authentication机构
  • 更多的东西,但大多是微不足道的 –

你会build议保持目前的双服务器基础设施(一台机器为本地networking上的应用服务器与一些已发布的服务)和一台机器作为DC,networking和文件服务器,或一台服务器中的一切(但一台机器上的Exchange和DC isn'到目前为止,我知道),或者完全不同的东西,或者把应用程序服务器放在DMZ等等。顺便说一句,你看到有一台机器有DC和文件服务器的问题吗?

在评论和Nextraztus的和Golmaal的答案后添加:

关于虚拟化,我绝对是Hyper-V的 – 我是完全的MS人,自从WfW 3.1开始,我正在开发Windows,而最近十年我使用ASP.NET和Windows内核IFS(是的,两个相当美好的世界,C#和纯C)。

我们的标准设置是针对系统和关键数据的RAID 10,针对“正常”数据的RAID 5。

我几乎不敢承认,但我有一些与虚拟化有关的个人问题 – 我将不胜感激,如果你能帮我解决这个问题:)我日夜使用它的开发,尤其是内核开发与Windows检查构build,我在Azure上使用它(我们几乎使用Azure提供的所有服务,虚拟机,网站,Webangular色,caching等等),但是在这里,我“感觉到”我仍然希望拥有真实物理服务器。

到目前为止,我明白,虚拟化给了我更多的自由,因为我可以拥有几乎所有的服务器,并且可以根据需要分开关注,我可以备份整个映像。

如果没有虚拟化,我可以指定系统在SSD上运行,这些数据在RAID 10上运行,这些数据在RAID 5上(如果需要的话,我可以添加新的磁盘到这个数据卷)等等。问题,而且看起来你确实没有问题,但除了成本低得多之外,还有什么能让虚拟化的一切都获得真正的好处?

编辑2:

我可以理解,DC应该独立存在(但是对于networking服务,特别是DNS和DHCP来说也是可以的),但是为什么把几乎每个服务器angular色都暴露给单独的服务器呢? 交换到一台服务器,SQL Server到另一台服务器,TFS到另一台服务器 – 我能想到的唯一原因是负载平衡,但如果这不是一个问题…? 相反,我可以看到,例如TFS可以从运行SQL Server,IIS和Exchange的计算机上受益。

在集群/ HA不是主要关注的小型/中型环境中(尤其是由于多个许可涉及的复杂性和成本,需要更高版本/企业版本等),虚拟化可能并不具有吸引力; 这就是说,这一切都取决于用户的数量和操作的关键程度。 既然你提到“这个设置是针对中小型组织的,所以性能不是问题”,所以我有一些自由的假设,不需要聚类/ HA等。 最后,这一切都取决于可接受的停机时间。

我将使用两台运行四个虚拟机的物理服务器(每台Windows Server 2008许可证可以在一台物理服务器或两台虚拟服务器上运行):

 Server 1: VM1: PDC Network Services File Server (Use DFS replication) VM2: SQL Server Server 2: VM3: Secondary Domain Controller (global catalog; backup dhcp etc) File Server (Use DFS replication) VM4: Exchange 

您可以在VM1或VM3上运行其他服务。 清算ISA并去第三个物理服务器(低端); 在其上安装pfSense,使其成为拥有防火墙,防病毒,caching,VPN等function的成熟的TMG / UMG。使用由dnsexit.com等cos提供的邮件中继/备份服务; 它可以是实现Exchange故障转移的最便宜方式(取决于预期)。

这样,您将拥有一个具有故障转移function的域,用于某些最关键的服务。 例如,如果您的PDC由于某些原因而不可用,则您的VM3将接pipe,您的客户仍可以访问文件并使用Internet和邮件。

通过适当的备份策略,您可以将停机时间降至其他服务(如SQL Server,Exchange等)的可接受限制。使用RAID 10,SSD等可以给您自由configuration,并且可以提高可靠性,而不会增加大量成本或复杂性。

我希望它有帮助。

编辑:

我对Exchange并没有太多的了解,但是这是一个你希望在DMZ中保留的服务器,因此将它保存在自己的虚拟机中是有意义的。 IIS也一样 – 与Exchange相同的虚拟机。 我可以看到你完全进入MS生态系统和Azure。 有内部交换而不是托pipe的特殊原因吗?

DFS – 它工作和运作良好。 在我看来,这是糟糕的pipe理员对文件服务器的HA解决scheme。 如果您不必执行脱机文件,则应尝试使用DFS。

TFS可以与VM2一起使用。 我没有使用它,但我知道这是一个资源饥渴的应用程序。 如果您使用托pipe的Exchange,请将VM4用于TFS。

如果你问我,在同一台物理机器/同一台虚拟机上运行Exchange,SQL Server和TFS是可以的。 但是,当你在不同的虚拟机上运行它们时,与在单个物理/虚拟机上运行它们相比,它没有任何缺点。 对我来说,最大的好处是灵活性和一些安心。 例如,如果你的SQL Serverpipe理员搞砸了某些东西,你必须重build那台机器,那么当你从备份还是从头开始恢复SQL Server虚拟机的时候,其余的服务仍然可以不间断的工作。

正如@Sarge在评论中提到的那样,虚拟化是一个很好的途径。 请注意,这些都是大多数意见和真正的高层次看看。

select一个虚拟化平台。

这几天有很多select,我个人推荐以下之一:

  • 微软的HyperV
  • VMWare的

有主要的亲和骗子,主要是价格和许可条款。 你会希望与你的供应商合作,以确保你不会被超卖或低价(并且不能通过审核)。

决定你想成为多么多余

同样,有几种方法可以解决这个问题,最明显的select就是获得两台强大的服务器,并将它们与您所select的任何虚拟化平台集群。 这显然很快就会变得非常昂贵。

另一个select是把所有的东西都放在一个已经正确备份的SAN上 – 一个失败的情况就是你的服务器失去了实际的虚拟化,但是因为一切都很好的集中到了虚拟机中,所以你可以恢复并在新铁杆到达后立即开始运转。

另一种失败模式当然是SAN死亡。 做好备份,这不是一个问题。 显然,你也有很多select

获得适当的培训

病毒化是一种全新的蠕虫病毒,有时需要谨慎的手。 但是,当您需要testing某些内容并且不想冒险破坏您现有的基础架构时,这真的很不错。 无论您select哪种技术,都可以就如何pipe理技术进行专业研究。

部署

有很多将物理服务器转换为虚拟机的工具。 由于您的大部分服务都集中在一台服务器上,除非您可以花费一个周末来设置所有事情并移动,否则您不会看到很多好处。

提高

一旦一切都恢复到你所在的位置,你现在可以有一些乐趣。 在你的新环境中,打破事情将会变得更加棘手。 只要点击几个button,就可以安装和拆卸新机器和创意,随时随地发展。

build筑

我不是Windows专家,但是我总是被告知,除了目录服务之外,在DC上运行任何东西都是不好的。 我也听说你几乎总是希望有两个DC分配angular色(RID,PDC和IM),以及在某个DC出现问题时显而易见的冗余。

显然,许可证是这类事情的一个问题。 但是事实上,如果你留意负载并保持自己的职责,那么一个小环境对服务器来说可能不是什么大事。 另外,服务器这些天,STUPIDfunction强大,价格合理。

陷阱

虚拟化共享资源。 这是显而易见的,但需要提及。 如果你走这条路线,RAM,HardDrive和其他一切都需要保持在你的头脑中。 不要过小你的硬件,因为一切都将现在共享。 如果某些东西变得疯狂并且占用了存储空间的所有空间,那么如果不注意,其他机器会受到影响。

至于你的DMZ问题 – 如果你决定虚拟化,而你决定公开暴露任何东西,你应该确保把这些机器放在不同的虚拟networking上,这样它们才能保持正确的分割。

希望这些想法有一些帮助。