我正在寻找将.NET Web应用程序背后的硬件从运行Web Server和SQL Server的单一框扩展到两个分开的单元,一个是Web服务器,另一个是SQL Server。
在我的研究过程中,我已经阅读了关于虚拟化的各种各样的东西,但是不知道它是如何作为一个Web应用程序扩展的? 对我来说,它似乎不是一个高可用性的策略,因为它全部坐在同一个硬件之上,所以如果这样下去的话,整个事情就会像一堆卡片一样掉下来! 虽然我确定我在这里错过了一些东西。
那么虚拟化的商业案例是什么呢? 从本质上讲,我期望从长远来看实现一个很好的扩展策略,具有高可用性(我知道HA对于两台服务器来说是困难的,但是这是我最终想要的,也许现在不是这样)。 如何将虚拟化用于超越单服务器或双服务器configuration? 我会认为一个更有效的高可用性和横向扩展策略是使用更多的负载平衡Web层和联合数据库的服务器?
通过仅在一台虚拟主机上进行虚拟化,您可以获得更高级别的HA – 可以在服务器应用程序的每一层创build多台服务器的集群(例如,两台装有日志传送的SQL服务器或其他任何服务器,两台装有负载的Web服务器平衡configuration),然后您可以对每个级别的组件进行定期维护,而不会中断服务可用性。
很显然,只有一个盒子,你不会从硬件层面得到HA,但这是你的select。 您可以在适合您的需求时添加它。
至于如何使用虚拟化来实现大量高度可用的服务器,虚拟主机服务器不可用时,顶级虚拟化产品允许一定程度的故障切换–VMWare vmotion就是这种技术的一个例子。 如果你从一个支持这种事情的虚拟主机开始,那么添加,删除,升级等故障转移组中可用的虚拟主机就变得微不足道了,而不会中断你的公共服务。
这不是一个神奇的子弹。 但它是非常可怕的。
继续研究。 具有故障转移群集和VMware HA的Hyper-V解决了硬件HA问题。 为了使您的应用程序高度可用,您首先要提高硬件的可用性,这就是Hyper-V w / Failover Clustering和VMware HA的用处。