(译)Windows Azure的7月更新:SQL数据库,流量管理,自动缩放,虚拟机
Windows Azure的7月更新:SQL数据库,流量管理,自动缩放,虚拟机
今早我们释出一些很棒的Windows Azure更新。这些新的提升包括:
SQL数据库:支持SQL自动导出和一个新的高级层SQL数据库选项
流量管理:在HTML门户的新的管理Windows Azure流量的支持
自动缩放:支持Windows Azure移动服务,服务总线队列深度自动缩放规则,自动缩放行为警示
虚拟机:在管理门户,更新IaaS管理体验
所有这些更新都立即可用了(注意:有些还是预览版)。下面是更详细的信息。
SQL数据库:支持SQL数据库自动导出
我们听到的一个常用的请求特性是让客户可以经常的,全自动的,导出SQL数据库到一个存储帐号中。今天开始已经是Windows Azure的内置特性了。你现在可以实现事务一致性的导出你的SQL数据库拷贝,以一种自定义的频繁的自动的计划方式,导出到存储帐号中的一个.bacpac文件中。
想利用这个特性,点击任意你想安装自动导出规则的SQL数据库的“配置”标签:
点击“导出状态”上的“自动”设置会展开包含几个附加配置选项的页面,允许你按自己的选择配置数据库自动导出到存储帐号的一个事务一致的.bacpac文件中:
你可以完全自动并控制时间和导出计划。默认情况下被设置为一周一次,但你也许想设为一天一次。开始时间和日期让你可以定义第一次导出时间。时间是UTC的,所以如果你想在美东时间的每天半夜备份,设为5:00AM UTC。记住导出时间取决于数据库大小,所以开始时间不保证合适导出会结束。
再者,指定每个导出文件的保存天数。你可以保留多个导出文件。使用“总是保留至少一个导出”选项来确保你总是有一个导出文件用作备份。这重写了保留阶段,所以即使你30天不备份,你还是有个导出文件的。
最后,你需要指定几个登录和密码给自动的导出使用。在提供必要的信息给你的自动导出后,点击保存,一旦到达你预设的开始时间你的第一个自动的导出会生成。你可以在你的SQL数据库的“仪表盘”标签视图上的快速一览列查看你的数据库导出状态(查看最新的日期/时间)。
从导出文件创建一个新的数据库
如果你想从一个导出拷贝创建一个新的SQL数据库实例,只要选择Windows Azure管理门户上的新建->数据服务->Sql数据库->导入选项:
这会启动一个对话框,允许你为SQL数据库从你的存储账户中选择.bacpac文件,轻松的重建数据库(名字任取)。
成本影响
当实施一个自动的导出时,Windows Azure在创建.bacpac文件之前首先会把你的数据库完全备份到一个临时数据库。这是唯一确保你的导出具有事务一致性(导出完成后这个数据库会被自动移除)的手段。因此,导出那天你会为这个临时数据库多付钱。因为数据库是按天付费的,所以如果你每天都要导出的话,理论上你在数据库上的花费要加倍。如果你每周运行一次,花费会少很多。
如果你的存储账户和SQL数据库不在一个区域,你要为网络带宽多付费。如果你的存储账户和数据库在一个区域,就没有额外的带宽花费了。你只要按照标准的Windows Azure存储费率(按GB算)为你保存在存储账户中的.bacpac文件付费。
安装自动导出的条件
注意为了安装自动导出,Windows Azure必须允许接入你的数据库(使用你在上面截图自动导出配置中的服务器登录名/密码)。为实现这一点,到你的数据库服务器配置标签,确保已经设置为“Yes”:
SQL数据库:宣布新的Windows Azure SQL数据库高级层
今天,我们和高兴的宣布一个新的Windows Azure SQL数据库高级层预览版,为关键应用提供了更多可预测的性能。高级层帮助建立更强大和可预测性能的云应用,这些通过贡献一个固定保留容量的数据库,包括一个辅助副本实现。这个容量会帮助你更好的扩展数据库并带来更多独立性。
保留容量是实现下列基于云服务需求的理想选择:
高峰值负载-一个应用程序需要许多CPU,内存,或IO来完成它的操作。例如,如果一个数据库操作要长期消耗几个CPU核,这就可以使用高级数据库。
多并发请求-一些数据库应用服务多并发请求。普通的web和商业版本SQL数据库有180并发请求的限制。应用要求更多的连接要使用一个高级数据库,配备适当的预留大小来处理最大值的请求。
可预见的延迟-一些应用程序需要在最短的时间内保证数据库响应。如果一个给定的存储过程被作为更广泛客户操作的一部分调用,可能在99%的时间需要不超过20毫秒从该调用返回结果。这种应用将受益于一个高级数据库,以确保专用的计算能力可用。
为了帮助您最好地评估你的应用程序的性能需求,并确定如果您的应用程序可能需要保留的能力,我们的客户顾问团队已经放置详细的指导。阅读Windows Azure SQL数据库高级白皮书指南,研究如何不断调整你的应用获得最佳性能和如何得知你的应用可能需要保留能力。
另外,我们的工程师已经把高级数据库管理,如何设置,使用和管理你的新高级数据库(一旦你被接受成为高级预览并且配额被批准)放到白皮书里。
请求预留容量预览邀请需要两个步骤:
1.访问预览特性页面,请求访问高级预览程序。初始化验收要求客户激活,Windows Azure订阅和账户管理员责任。
2.一旦你的订阅已经被预览程序激活,从服务器仪表盘或Windows Azure管理门户中的SQL数据库扩展的服务器快速入门请求一个高级数据库配额。
仔细看看高级预览注册,请查看简短的教程页面,注册为Windows Azure SQL数据库高级预览。欲了解更详细的高级SQL数据库定价,请访问Windows Azure的SQL数据库定价页面。
流量管理:集成在Windows Azure管理门户
Windows Azure的流量管理器是我们添加到Windows Azure管理门户的最新的服务。Windows Azure的流量管理器允许你控制你的托管在Windows Azure上的云服务和虚拟机网络流量分布。这通过允许你将你的一个公共端口下的云服务分组多个部署,并管理规则的流量负载来实现。
举个例子,我们来考虑一个场景,这个场景中流量管理器将帮助云服务实现高可靠性和可用性。比方说,我们有一个云服务已经部署在三个区域:美东,美西和美国中北部(使用三种不同的云服务实例:myServiceEastUS myServiceWestUS myServiceCentralUS):
现在,如果我们想使我们的云服务效率,并最大限度的减小向它提出的任何请求的响应时间,我们可能要引导我们的网络请求,这样的请求,源于一个IP范围或位置去部署服务器最低响应时间,特定范围或位置。随着Windows Azure流量管理器的出现,我们现在可以轻松的做到这一点。
Windows Azure流量管理器通过ping你的来自世界各地的云服务并计算响应时间来创建一个路由表。然后,它使用此表重定向请求到你的云服务,使得它们以尽可能低的响应时间提供服务。
下面是我们如何设置:通过新建->网络服务->流量管理->快速创建来创建一个流量管理配置文件:
从“负载均衡方法”下拉列表中,我们会选择“性能”选项。我们将选择三个实例部署端点,并希望把它们放到流量管理器(在这种情况下,我们单独部署在美国东,西和中北部)中并点击创建按钮:
一旦我们创建了我们的流量管理配置文件,我们可以更新我们面向公众的域www.myservice.com来解决我们的流量管理DNS(在这里myservicetm.test.trafficmgr.com)。
通过点击我们刚刚创建的Windows AZzure管理门户内的流量管理配置文件,我们还可以在以后添加额外的云服务端点到我们的流量管理配置文件,更改监测和健康设置,更改其他配置设置,如DNS TTL和负载平衡的方法。
例如,我们假设以后要改变负载均衡方法,使有关性能,而不是被它代替故障转移方案的优化和高可用性。比方说,我们希望我们所有的请求由美国西部响应,在美国西部的实例失败后,我们希望美国东部部署接手,接下来由美国中北部接手。我们可以通过流量管理器配置文件的配置选项卡,改变负载均衡方法进行故障转移来实现:
下一步,我们将改变故障转移优先列表,以便部署在美国西部,myServiceWestUS,作为列表首选,下面跟着myServiceEastUS和myServiceCentralUS。
接着点击保存来结束更改:
通过改变这些设置,我们现在已经为我们的云服务启用了自动故障转移规则,并且实现了多区域的可靠性。如今Windows Azure管理门户中集成了新的流量管理器体验,使得配置安装这一切相当轻松。
自动扩展:移动服务,服务总线,趋势和警报
三周来,我们已经为网站,云服务和虚拟机添加了新的自动扩展支持。
自动扩展可让你配置Windows Azure到自动动态的调整你的应用(无需任何人工干预)使得可以达到理想的性能和成本的平衡。配置完后,自动扩展会定期调整你的应用中正在运行的实例数量来响应负载。这三周我们已经大规模采用了自动扩展的技术。今天,我很高兴的宣布,更多的自动扩展特性已经可以为您所用了:
Windows Azure移动服务支持
自动扩展现在支持自动扩展移动服务后端(除了web站点,虚拟机和云服务)。这个特性支持标准和高级移动服务。
要为你的移动服务启用自动扩展,只需导航到你的移动服务的“扩展”选项卡,设置自动扩展为“开”,和你想使用的配置的最大和最小范围:
启用此功能时,Windows Azure会从你的移动服务定期检查每天的API调用,如果你达到API配额的90%以上会增大一个单位(直到达到你设定的希望启用的最大实例数)。
每天开始(UTC),Windows Azure扩展会回落到配置的最小值。这可让你运行的移动服务实例数量降到最低-省钱。
服务总线队列深度规则
最初的自动扩展预览版支持基于两个不同负载指标动态扩展工作者角色和虚拟机:
工作者/虚拟机的CPU百分比
存储队列深度(队列中等待被处理的消息数)
今天的更新中,你现在还可基于服务总线队列深度扩展你的虚拟机和云服务。在动态增减基于积压在队列中等待被处理消息的后端系统数量这种场景中是理想的。
要启用此功能,请选择一个虚拟机或云服务的“扩展”选项卡里的“队列”自动调整选项。当你选择自动调整部分中的“排队”,点击“账户/命名空间”下拉。现在你可以看到你的存储账户和服务总线命名空间的列表:
一旦你选择服务总线命名空间,该命名空间中的队列列表将出现在“队列名称”部分。选择单个队列来自动扩展监测:
与存储队列相比,服务总线队列深度扩展允许你定义一个“每台机器目标”。这个目标应该代表你认为同一时间每个工作者角色能处理的消息量。例如,如果你的目标是200,以及2000个消息在队列中,自动扩展会扩展到你有10个机器。它会根据你的应用负载情况动态扩展。
历史走势监测
当你由CPU自动扩展,现在我们也可以显示你的角色在过去一周内的CPU利用率的一个缩影图。这可以帮助你在第一次配置自动扩展时设置恰当的目标,然后打开它看看自动扩展如何影响CPU。
警告
在某些罕见的情况下,可能会导致自动调整引擎无法执行规则。现在如果自动扩展失败了我们将通知你的Windows Azure管理门户:
如果你在门户看到这个,我们建议您监测您的服务响应速度和能力,以确保目前有足够的计算实例部署,以满足你的目标。
此外,如果自动调整引擎没能成功获取指标,比如从你的虚拟机或站点(这可能由间歇性网络故障或机器诊断失败引起)获取CPU百分比,如果你之前的容量太低,该引擎可能会采取特殊的一次性规模化的动作。在此之后,直到自动调整引擎可以再次收到指标,不会采取进一步扩展行动。
虚拟机:
今天的Windows Azure更新还包括一些不错的改进,关于如何使用Windows Azure管理门户来创建和管理虚拟机。
更丰富的客户创建向导
当你在管理门户使用“From Gallery”选项创建一个新的虚拟机时,我们现在提供了更多的虚拟机选项:
当你从Gallery选择选择一个虚拟机镜像,现在有两个更新,你可以用它来配置额外的选项-包括那些包含在云服务和创建/管理可用性集的功能,和虚拟网络的子网设置:
还有个新的屏幕让你在向导创建虚拟机配置和管理网络端点:
现在,我们默认启用远程PowerShell,使得很容易为用户配置其他知名的协议端点。你可以从下拉列表(上面的截图显示如何做到的)中选择众所周知的协议,或者您也可以手动输入自己的端口映射设置。
公开虚拟机背后的云服务
从这个月开始,你可能已经注意到,我们现在也公开以前用来在一个单一部署分组里承载一个或多个虚拟机的底层云服务。在此之前,我们没有透露的一个事实是虚拟机后的云服务有一个管理门户网站-现在只要你想你将总是可以访问到底层的云服务(允许你控制/配置更高级的设置)。
其他的额外的注意:
你现在可以使用虚拟机gallery来部署一个虚拟机到已有的-空-云服务。这让你可以实现这个场景:在部署虚拟机到里面之前你想为部署自定义DNS名。
现在,通过我们在创建虚拟机向导中的改变,你可以更轻松的添加多个虚拟机到一个云服务容器。
你现在可以使用新的流量管理支持,使得网络负载流量分配给云服务上的虚拟机
对于现在被公开的云服务,没有对虚拟机做额外的收费。它们总是被创建的,我们只是不再隐藏它们,使得更多的高级配置选项浮出水面。
总结
今天的发布包含了一大堆伟大的特性,使您可以建立更好的云计算解决方案。如果你还没有一个Windows Azure账户,可以登录免费使用,并开始使用今天所有上述功能。然后访问Windows Azure开发人员中心,以了解更多关于如何构建应用程序。
希望对你有帮助,
Scott
附:除了写博客之外,我现在还用Twitter快速更新和共享链接。到twitter.com/scottgu粉我