大多数企业的虚拟化平台都为虚拟机提供了不同程度上的高可用性架构,通常都是建立在共享存储和冗余hypervisor特性的基础之上。但是对于已经内置高可用性的应用程序来说,真的需要这些吗?最新部署在云中的应用程序都在一组虚拟机的前端部署了负载均衡器,以提供高可用性服务。在一些情况下,我们可以将这种方法应用到企业的其他应用程序上。 许多应用程序都采用了纵向扩展、单一服务器的架构。
考虑一下相关的数据库服务器;为了使得服务器有更好的性能表现,除了更快的磁盘和网络连接,还需要为服务器分配更多的CPU和RAM。数据库只有运行在配置强大的服务器上才能发挥其作用。高可用性架构需要基础设施保证数据库服务器尽可能的……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
大多数企业的虚拟化平台都为虚拟机提供了不同程度上的高可用性架构,通常都是建立在共享存储和冗余hypervisor特性的基础之上。但是对于已经内置高可用性的应用程序来说,真的需要这些吗?最新部署在云中的应用程序都在一组虚拟机的前端部署了负载均衡器,以提供高可用性服务。在一些情况下,我们可以将这种方法应用到企业的其他应用程序上。
许多应用程序都采用了纵向扩展、单一服务器的架构。考虑一下相关的数据库服务器;为了使得服务器有更好的性能表现,除了更快的磁盘和网络连接,还需要为服务器分配更多的CPU和RAM。数据库只有运行在配置强大的服务器上才能发挥其作用。高可用性架构需要基础设施保证数据库服务器尽可能的保持运行状态,并且能够从错误中快速恢复过来。但是,实施高可用性需要花费额外的开销。通常重要的虚拟机必须放置于昂贵的共享存储上。我们还需要一个企业级的hypervisor,并且具有像微软故障转移集群或者VMware高可用性这样的特性。
另外一种更为经济的方式是横向扩展多服务器架构,可以将负载分配到多台服务器上。一个典型的例子就是Web server farm。为了提高website性能,你可以使用更多的虚拟机,并且只需要确保足够数量的web服务器可以支撑当前的负载。最新的开源数据库服务器拥有同样的架构:Redis、Apache Cassandra和MongoDB都是通过横向扩展共享服务器规模来提升性能表现,而不是纵向增加单个节点的性能。
许多公司可能会觉得采用这种方式很困难,因为新的架构意味着应用程序必须针对新平台重新编写——这就是为什么大多数云应用程序都需要从头进行构建,而不能从现有的系统上进行迁移。
重写这些应用花费的时间和开销导致了虚拟机只能运行在昂贵的共享存储和hypervisor集群上。但是,环境中的一些部分可以从虚拟机平台横向扩展中获益,这个过程中可以使用低开销的服务器和本地存储来进行水平扩展。想要使得这种方式正常工作,负载必须运行在大规模的一次性虚拟机上,其在负载处于峰值时自动提供服务,而当峰值过去,又回到待用状态。Web服务器是最为典型的,因为它们通常只和客户端进行短暂的连接,并且将所有数据都保存在数据库服务器当中。
另外一种使用情况是Citrix或者Remote Desktop farm,一组虚拟机可以提供横向扩展的桌面服务;甚至一些类型的虚拟桌面负载也可以通过这种方式进行扩展。使用负载均衡机制的任何负载都可以分配到一组服务器上。如果底层的文件系统可以在一组虚拟机当中实现文件复制,那么即便是文件服务器也可以进行横向扩展。因为单独的虚拟机不能存储任何唯一的有价值数据,所以主机不需要弹性机制,也没有必要将虚拟机放置于共享存储之上。这样可以允许组织不必使用性能最好的硬件,或者使用没有冗余风扇或者供电模块的服务器。你还可以在一个免费或者价格较低的hypervisor上运行负载。这至少可以降低运行这些虚拟机需要的一半硬件费用,或许更多。
但是这并不适用于每一个企业的IT部门。许多服务器仍旧需要储存重要数据的唯一副本,所以它们需要高可用性、备份和全面的灾难恢复计划。即便是无状态的Web和桌面层也需要可靠的数据层、数据库服务器和文件服务器。通过这种方式,你仍旧需要使用性能最好的硬件,但是重新思考使用稍差的服务来实现对现有负载的横向扩展。也许同样的性能稍差的平台可以用于现在正运行在Amazon上的开发系统。
相关推荐
-
VMware管理集群可协助管理
对于整理管理工具以及在出现问题时分隔重要软件和硬件, VMware管理集群是很好的方法。 随着虚拟环境的增加, […]
-
为硬件故障制定恢复计划——设计
对于现在的虚拟化环境,因为vMotion、容错、高可用性和冗余技术,我们将注意力集中在应用程序和系统可用性上。如果发生硬件故障会怎么样?
-
对比vSphere基础设施扩展方式:Scale Out vs. Scale Up vs. Scale Away
企业为vSphere基础设施提供更多的资源时,可以选择两种模式:scale up(纵向扩展)和scale out(横向扩展)。但是到底哪种适合自己呢?
-
如何以有限预算构建KVM HA集群
很多小型组织使用了KVM虚拟化,但却无法在主机发生故障时采取相关措施保证高可用性。本文介绍如何采取简单的方式确保虚拟机的高可用性。