控制数据库和相关硬件资源的成本,同时对它们进行必要的改善和扩展已经变得越来越重要。解决这一问题的最佳方法便是虚拟化。当你正在从物理环境迁移至虚拟环境的时候,有四个关键注意事项需要牢记。 在虚拟主机上使用支持SLAT的64位处理器 对于SQL Server从物理机到虚拟化(P2V),最重要的步骤之一是确保虚拟机使用正确的处理器。
虚拟机需要64位处理器,但是并不是所有的64位处理器都支持二级地址转换(SecondLevel Address Translation,SLAT)。SLAT是当前Intel和AMD64位处理器硬件虚拟化的一种形式。Intel称其版本为SLAT ExtendedP……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
控制数据库和相关硬件资源的成本,同时对它们进行必要的改善和扩展已经变得越来越重要。解决这一问题的最佳方法便是虚拟化。当你正在从物理环境迁移至虚拟环境的时候,有四个关键注意事项需要牢记。
在虚拟主机上使用支持SLAT的64位处理器
对于SQL Server从物理机到虚拟化(P2V),最重要的步骤之一是确保虚拟机使用正确的处理器。虚拟机需要64位处理器,但是并不是所有的64位处理器都支持二级地址转换(SecondLevel Address Translation,SLAT)。SLAT是当前Intel和AMD64位处理器硬件虚拟化的一种形式。Intel称其版本为SLAT ExtendedPage Tables (SLAT扩展页表EPT)。而AMD则称其版本为SLAT NestedPage Tables(嵌套页表NPT)或是RapidVirtualization Indexing (快速虚拟索引RVI)。
支持SLAT的处理器通过影子分页降低了软件开销,从而变为递归形式,但价格昂贵。SLAT是将客户物理地址转换为系统物理地址的一种机制,它使得客户机完全掌控其页表。SLAT激活了VM入口并且让VM出口失效。支持SLAT的处理器改善了VM性能和稳定性。在任何基于Barcelona架构或是后续架构的AMD处理器以及编号为E5500或更高的Intel处理器上都支持SLAT。
让虚拟CPU和物理处理器内核保持一比一的比率
为了获得更好的性能,需要对虚拟CPU的总数和物理处理器内核的总数保持一比一的比率。这样做可以确保每个虚拟机(VM)将拥有持续可用的处理能力。
仔细选择虚拟平台
SQL Server会自动利用服务器上的多个处理器。如果虚拟SQL Server实例要求高度稳定性,那么选择正确的虚拟平台可能就意味着会有显著的性能差异。
由于Windows Server 2008和2008 R2中的Hyper-V限制了虚拟CPU为四个,因此这些平台上的虚拟SQL Server实例就受到了限制。Windows Server 2012将这一限制提升至可支持64个虚拟CPU。VMware vSphere 5.0则支持32个虚拟CPU,而vSphere 5.1的最新版本支持64个虚拟CPU。使用Windows Server 2012 Hyper-V或是vSphere 5.0或者后续版本来虚拟化SQL Server环境可以支持高密集CPU的操作。
利用动态内存且不过度分配
服务器是物理的还是虚拟的,不恰当的内存配置会严重影响SQLServer的性能。在SQL Server中,缓冲区包含最近使用的数据页,而程序缓冲则包含最近执行的T-SQL命令。内存缓冲区允许SQL Server从内存中缓存的数据页获取数据和命令。SQL Server会自动管理其内存缓冲区并根据服务器工作负载来对它们进行调整。
然而,过多的内存分配会对一点有所帮助。在一个虚拟服务器环境中,物理内存限制了在任何给定时间有活跃状态VM的数量。当分配内存给一台虚拟服务器的时候,要确保为每个虚拟SQLServer实例只分配需要的内存量。在一台VM中过度分配内存会夺走其他VM的内存。动态内存为这一内存问题提供了答案。
为SQL Server利用动态内存,客户机操作系统必须能够识别热插拔RAM。要将动态内存和Hyper-V,操作系统,Windows Server 2008 R2 SP1或后续版本一起使用,就必须安装在Hyper-V主机上。而运行在VM上的客户机操作系统还必须有支持热插拔RAM的功能。以下VM客户机操作系统可以使用热插拔RAM:企业版或数据中心版的Windows Server 2012,Windows Server 2008 R2 SP1,Windows Server 2008 SP2以及Windows Server 2003 R2 SP2。
要在客户机操作系统中利用热插拔RAM,你需要运行SQL Server 2008 R2的企业版或数据中心版,或是 SQL Server 2012的企业版。SQL Server会检测已添加的内存使用并且可以增加其内存来满足工作负载的需求。
翻译
相关推荐
-
甲骨文推出Oracle Software in Silicon Cloud
Software in Silicon由甲骨文的软件和微处理器工程师共同设计,通过在处理器中直接加入加速器以获取更丰富的功能。
-
对冲基金公司利用闪存池应对SQL Server性能瓶颈
作为一家对冲基金公司,Quintillion急需一种能够快速并轻松扩展的系统,或者说是一种虚拟化环境,为他们提供服务器资源的高效利用率。
-
数据库虚拟化之战:VM与Oracle RAC
在本文中,我们将进行一场讨论,双方都是久经沙场的IT资深人士,探讨虚拟机技术与Oracle真正应用集群(RAC)。
-
SQL Server高可用性:虚拟化的天敌?
是否要虚拟化你的数据库集群,可能是关于SQL Server的所有虚拟化讨论中最有争议的一个问题。