BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

使用Windows Azure的十大注意事项

| 作者 微软中国MSDN 关注 0 他的粉丝 发布于 2014年12月23日. 估计阅读时间: 11 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

项目在本地运行, 与发布到云端相比, 肯定存在一些区别. 那应该防止出现一些不必要的问题呢?

1. 费用

http://www.windowsazure.cn/zh-cn/offers/ms-mc-azr-44p/

http://www.windowsazure.cn/pricing/overview/

在使用Windows Azure 服务期间,您预留的联系人邮箱将每周收到剩余金额及有效期的提醒邮件。您也可以随时登陆计费网站查看剩余金额及有效期,建议您根据实际使用量进行评估,预留充足的余额。

2. 虚拟机中的数据存储

Azure上的虚拟机上有两种磁盘,一种是存储在Blob存储,是永久性稳定的存储空间,一种是存储在虚拟机所在物理机磁盘上,是临时存储空间。前一种由于使用了Blob存储,其数据会按照Blob的存储策略在本地存3份,并在异地保持一份镜像,其数据的可用性和可靠性都很高,虚拟机通过网络访问这些Blob存储,不依赖于特定一台物理机。后一种依赖于物理机,如果物理机故障或进行维护,这个存储可能会被清空。那么,如果使用虚拟机的时候不分清楚磁盘类型,就会导致数据丢失。于此,强烈建议不要将任何重要数据存在D盘。因为D盘是临时存储,虚拟机重启时D盘数据将被清除且不可恢复。如果需要将数据存储到虚拟机上,建议附加一个数据盘,将数据存在数据盘上。

详情请参考:

http://msdn.microsoft.com/zh-cn/library/azure/dn790303.aspx

http://blog.csdn.net/azurechina/article/details/38664673

Azure不同类型的虚拟机的磁盘类型如下:

Windows虚拟机:C盘(系统盘)是Blob盘,D盘是临时盘

Linux磁盘:sda1(根目录)是Blob盘,sdb1(/mnt/resource)是临时盘

3. Load balance 环境

Azure网站、云服务和虚拟机都具有负载均衡功能。对负载均衡,需要注意的方面之一是它对Session的处理。传统的负载均衡器有具有Session sticky的机制,会根据用户的session信息将用户请求转发到固定的一台机器上,当应用程序在服务器端存储session信息,客户端与服务器交互就会顺畅,如果没有这个机制,就会发生用户session丢失和应用逻辑异常。然而在Azure中,云服务和虚拟机的负载均衡器是纯网络层面,其负载均衡机制是通过类似轮询将请求发送给后端的服务器,这就要求后台服务器是无状态的,也就是说, 期望的结果是无论将客户请求发给任何一台服务器,都可以得到正确的处理。如果现有的应用是有状态的,有两种解决方案:

  1. 将session信息在所有服务器间共享。具体实现方式包括:分布式缓存,session持久化(.NET和Java都支持用数据库存储session信息,而Azure还支持用Cache和Azure存储持久化.NET session信息(http://blogs.msdn.com/b/cie/archive/2013/05/17/session-state-management-in-windows-azure-web-roles.aspx )。
  2. 在虚拟机上自行配置负载均衡集群。微软的MSOpenTech团队提供了一个自动配置IIS ARR的方法,可参考该文档 ( Https://github.com/MSOpenTech/WindowsAzureToolkitForEclipseWithJava/tree/master/Utils/ARRConfigurationAgent)。

网站服务的负载均衡稍有不同,它的负载均衡是由IIS ARR实现,因此它原生支持session粘滞。其实现原理是,在每个响应里面添加ARRAffinity这个cookie,下次同一个用户的请求就会被识别,然后发送到上次的服务器上。可以理解为无论应用是否主动写入cookie或是存取session,IIS都会为每个用户保持服务器的绑定关系。可以查阅以下文章获得详细内容

http://azure.microsoft.com/zh-cn/documentation/articles/web-sites-dotnet-session-state-caching/

4.请问SSD存储有什么突出优势?

微软发布了一个新的虚拟机系列,称为D-系列。它提供了更好的内存、CPU及更快的I/O。在云上运行像OLTP和NoSQL数据库这种I/O密集型工作负载时,客户经常会发现性能限制。与基于磁性介质的传统存储相比,SSD存储提供了更高的IOPS。新的D-系列虚拟机比A-系列虚拟机快60%。这个系列的虚拟机提供了高性能和高可扩展性。

5.公共IP和实例级别IP的区别?

  1. 公共IP(VIP)

     

    这种IP是针对VM所在的云服务的公共IP。在Azure中,每个VM包含在云服务(Cloud Service)中,而Cloud Service存在load balance (负载均衡)。对于一个云服务中的虚拟机来说,当使用VIP去访问云服务时,负载均衡器会根据端口将我们导向不同的虚拟机 (如果想访问其中的虚拟机, 使用vip+port即可)。

    可以通过MSDN文档了解更多详情(http://msdn.microsoft.com/zh-cn/library/azure/dn690120.aspx )。

  2. 实例级IP

     

    这种IP(http://msdn.microsoft.com/zh-cn/library/azure/dn690118.aspx)是直接指派给虚拟机,可以直接通过这种IP连接至VM,同时可以开启多个端口和使用动态端口。

6. 针对保留 IP 地址的计费时钟何时开始和停止?

针对保留IP地址的计费时钟将从获取保留IP地址后的第2个小时开始,以便留出时间来相应分配IP地址。在删除保留IP地址后计费时钟将停止。

7. 如何保证SLA?

当在不同的故障域和升级域中部署两个或更多角色实例时,面向 Internet 的角色将至少在 99.95% 的时间内能够建立外部连接。详情参考SLA详情(http://www.windowsazure.cn/zh-cn/support/legal/sla/)和Azure的更新域和故障域的详细信息(http://msdn.microsoft.com/zh-cn/magazine/hh781019.aspx )。

8. 关于Azure Storage

在构建应用程序的过程中,常常也要考虑存储成本,以下是大家会感兴趣的关于存储服务的带宽、事务和容量这三种存储成本以及收费方式( http://blog.csdn.net/azurechina/article/details/40377091 )。

9.有效的诊断信息

当发布在云端的应用程序出现问题时, 项目的诊断信息和托管服务器上的诊断信息将有助于了解问题出现的原因, 详情可以参考:

http://msdn.microsoft.com/zh-cn/magazine/ff714589.aspx

10.各种服务的最佳实践

云服务Cloud service的最佳实践案例:

http://technet.microsoft.com/zh-cn/magazine/jj717232.aspx

http://msdn.microsoft.com/library/azure/jj717232.aspx/

Azure website的最佳实践案例:

http://channel9.msdn.com/Shows/Azure-Friday/Azure-WebSites-Best-Practices

http://azure.microsoft.com/blog/2014/02/10/best-practices-windows-azure-websites-waws/

VM的最佳实践案例:

http://azure.microsoft.com/blog/2014/05/08/virtual-machines-best-practices-single-vms-temporary-storage-and-uploaded-disks/

http://blogs.technet.com/b/matthewms/archive/2013/03/19/windows-azure-virtual-machines-notes-and-some-things-you-need-to-know.aspx

Azure storage的最佳实践案例:

http://channel9.msdn.com/Events/Build/2014/3-628

SQL Azure的最佳实践案例:

http://blogs.msdn.com/b/sqlcat/archive/2010/05/28/sql-azure-customer-best-practices.aspx

如果有任何疑问,可以访问MSDN社区,由专家来解答Windows Azure相关的各种技术问题,或者拨打世纪互联客户服务热线 400-089-0365/010-84563652咨询各类服务信息。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT