Web服务器也许是虚拟化的一个不错候选,但和任何其它服务器虚拟化项目一样,你不应该盲目地就想虚拟化你的IIS服务器。在和虚拟化互联网信息服务(IIS)一起向前发展之前,你还应该有很多考虑。让我们一起来看看要考虑什么吧。
推荐专题:IIS服务“讲武堂”
虚拟服务器布局
关于主机服务器的首要考虑会是群集IIS和可用的硬件资源。安全也在最受关注问题之列。据我所知,没有人指出如何执行监管程序逃避攻击,但因为IIS是面向网络的应用,而你的IIS服务器又直接接触互联网,所以最终能开发出此类攻击这种说法貌似合理。
如果你想保护你的企业不遭受潜在的逃避攻击,你应该考虑将IIS服务器放在只用于托管其它面向网络服务器的虚拟化主机。如果逃避攻击确实以此方式发生了,攻击者只能访问周边网络中的服务器,而不能访问主干网络的基础架构服务器。
硬件资源消耗
对虚拟环境的一个基本担忧通常在于硬件资源分配。你需要确保你的虚拟化主机不用失去监管程序或其它虚拟服务器的必要资源就能向IIS服务器提供足够的硬件资源。情况既然是这样,我建议你从在现有Web服务器上运行性能监控器开始。以此方式你可以了解到现在正在使用什么硬件资源,一旦进行服务器虚拟化,对于需要分配的资源你的期望也会比较现实。
在任一虚拟服务器环境中,按步骤限制硬件资源消耗都很重要。这样做不仅有助于提高性能,也实现了更大的虚拟机密度,这为你的主机服务器提高了投资回报率。用IIS你还可以做些其它事情来帮助限制资源的消耗。
其中的一个选择是强化你的Web服务器。IIS不需要你为每个集群的站点运用单独的服务器。每个网站都需要唯一的URL和唯一的IP地址,但有了IIS所以你可以在一台单一服务器上集群多个不同的网站。
总体上说,在单一服务器上强化网站比为每个网站使用单独的服务器要更好一些。通过使用单一服务器,你不会有运行多个Windows操作系统复本的相关开支。
如果你确实决定强化单一服务器上的网站,为每个站点创建单独的应用池是个不错的想法。用此方式,如果一个网站有了问题,你不用担心其引起服务器上的其它网站失效。
你可以用来保存资源的另一个方法是运用该操作系统的服务器核心装置。相对于全方位的Windows系统,由于服务器核心系统的残留物要小得多,它可能更安全也更好执行。
由于服务器核心缺少管理员习惯使用的GUI和管理工具,很多管理员不愿意把Server Core和Windows Server 2008放在一起使用。但是如果Server Core一开始就已经预安装,你可以用另一台服务器上的图形工具管理它。这意味着以与你熟悉方式基本相同的方法管理IIS成为可能。
容错与负载平衡
当你计划虚拟化你的IIS服务器时,你有必要将容错和负载平衡纳入考虑。如果你现有一个集群IIS部署,那么你仍然可以虚拟化你的IIS网络服务器,但你必须确定没有把每个虚拟化集群节点放在同一个主机服务器上。否则,结果会是主机服务器变成一次单点失败的情况。
因此,即使在你在集群环境中没有提前运作IIS,群集你的托管服务器也是个好主意。如果你正运行微软Hyper-V或VMware,创建一个主机服务器级别的容错集群也是可能的。这防止了主机服务器变成一次单点失败,也让你无须在进程中损失虚拟服务器就能拆下主机服务器进行维护。
网络带宽考虑
你要计入考虑的最后一点是网络带宽。有赖于你主机服务器上虚拟机的数量,为每个独立虚拟机分配独立网卡不太可能。同样地,你必须考虑你现有的网络硬件能否充分地处理预期的流量。
你还应该记住,在虚拟服务器环境中,有时有必要向虚拟化基础架构分配一些物理网络适配器。例如,你可能必须向主机操作系统分配一个网络适配器。如果你正把主机服务器作为集群的一部分运行,那么你还必须为服务集群分配1-2个网络适配器(根据你的配置)。
向一台单一服务器分配多个适配器来作为提高安全性和性能的方式也是可行的。举例来说,你也许希望对来自互联网的入站要求使用一个适配器,而连接到私人网络上的SQL Server实例时又用另一个适配器。
正如你所看到的,考虑了安全性、性能和资源分配,只要你是以这种方式部署IIS,IIS可以在虚拟服务器环境中良好工作。
【编辑推荐】