• Microsoft Azure增加新的虚拟机映像、计算密集型规格(A8 & A9)及增强选项(Options)

     

    Microsoft Azure目前针对IaaS的最新发布,特别是针对虚拟机这一块儿,让人颇为眼前一亮。下面分享一下所体验的几个亮点。

    首先,增加了不少新的映像类型,其中值得一试的包括:

    • Windows 8、Windows 7虚拟机,如下图,目前提供了Windows 7和Windows 8.1的企业版本,这样可以让开发者非常方便地在熟悉的环境中开发和测试应用。

    clip_image001

    • Visual Studio虚拟机,如下图,其中包括了Windows Server和Windows 8.1上的Visual Studio 2013的Ultimate/Premium/Professional版本,而且每个都已是包含Update2的最新版本。

    clip_image002

    • 一些企业级软件的服务器虚拟机映像,例如下面所看到的Dynamics企业管理软件(目前是GP和NAV两个系列的2013版),此外结合BizTalk Server、SharePoint Server、SQL Server等,真正适合企业级应用的开发、部署和运营。

    clip_image003

    另外一个激动人心的,就是增加了对计算密集型应用的支持,即提供了A8和A9两个新的尺寸。相比之前的内存密集型虚拟机,A8和A9更加体现了在计算能力上的大幅提升,真正帮助实现大计算(Big Compute)的目标。

    不过,目前在管理门户(Management Portal)上,还没有提供创建和管理这两个尺寸的操作选项,如下图:

    clip_image004

    但是,在报价网站上已经可以看到他们的规格及报价,具体请见:http://azure.microsoft.com/en-us/pricing/details/virtual-machines/

    clip_image005

    可以看到最大的A9,可以支持多大16个虚拟内核(Virtual cores)及112GB的内存(RAM)。另外一个值得关注的就是带宽,相比之前对不同Azure 虚拟机(VM)尺寸一些相关技术规格(Specification)的差异比较,40Gbit的带宽也是一个重要的指标。

    虽然目前管理门户还无法创建A8和A9的虚拟机,不过试验后发现,可以通过PowerShell脚本的方式来实现这一操作。

    使用方法也很简单,在既有的创建虚拟机命令中,将-InstanceSize参数设置为”A9”或者“A8”即可。例如:

    New-AzureQuickVM -Windows -ServiceName $cloudSvcName -Name $vmname -ImageName $image -adminuser $adminuser -Password $adminPassword -Location $dclocation -InstanceSize “A9”

    运行完后,发现已经成功创建了一个A9尺寸的虚拟机。如下图:

    clip_image006

    使用RDP客户端登录,可以看到虚拟机的系统信息,如下图:

    clip_image007

    在性能监视器中,可以看到16个CPU内核的运行情况,如下图:

    clip_image008

    此外,针对基于Windows OS的虚拟机(包括Windows Server 2008 R2 sp1之后的版本、新发布的Windows 8.1 Enterprise等),在虚拟机配置过程中,还可以设置新的配置扩展及安全扩展。对于其他基于Linux OS的虚拟机,目前则暂不提供。如下图:

    clip_image009

    clip_image010

    可以看到,针对安全扩展,可以选择微软提供的恶意软件保护工具,也可以使用第三方(如Symantec、Trend等)的安全软件。如下图:

    clip_image011

    提供更开放、更健壮、更强大、更安全、更灵活、更易管理的虚拟机,Microsoft Azure正不断创新和发展。

  • 利用工具(Tools)支持,提升通知中心(Notification Hubs)的开发体验(Developer Experience)

     

    Microsoft Azure通知中心(Notification Hubs)是一个可以支撑超百万级设备互联的云平台服务,而在管理门户中新增的“调试”功能,为开发者提供了更好地支持。如下图所示,开发者可以选择不同的接收客户端平台,目前提供Windows 8、Windows Phone、iOS、Android等平台,也可以选择自定义模板的方式。此外,可以仅选取10个随机设备的方式调试通知中心的运行,而非大面积广播。

    clip_image001

    在调试界面,可以设置一个测试的通知正文,点击发送,如发送成功,则所选中的接收客户端将接收到相关通知。如下图,一个Windows 8.1端接收到一个Toast类型通知。

    clip_image002

    Visual Studio 2013及最新的Azure SDK为Azure应用开发提供了更强大的工具的支持,其中对于通知中心(Notification Hubs)开发者而言,也会发现开发变得更简单。例如,在Server Explorer中的Notification Hubs节点上,可以浏览本订阅(Subscription)里所有的Notification Hub。此外,还可以用选中的Hub发送测试通知,以测试该Hub是否可用、是否运行正常等。如下图:

    clip_image003

    在定义通知正文的时候,可以选择各种所支持的平台类型,如Windows、Windows Phone、iOS、Android等。如下图:

    clip_image004

    可以进一步选择通知信息的类型,如针对Windows 8的Toast、Tile等。如发送成功,则所选中的接收客户端将接收到相关通知。此外,还可以指定接收客户端的标签(Tag),而只有设置了指定标签的客户端才可以接收到相关信息,从而实现个性化通知等要求。

    clip_image005

    而发送成功,还可以在工具里查看到接收客户端的注册ID(Registration ID),及平台通知服务(Platform Notification Service, PNS),例如Windows Notification Service(WNS),提供的传送句柄,如下图。这些数据有助于了解消息的详细执行情况,以便进行问题诊断。

    clip_image006

    除了Visual Studio 2013及Azure SDK,还有一个开源工具值得Notification Hubs开发者使用,即:Service Bus Explorer。具体软件可访问:http://code.msdn.microsoft.com/windowsazure/Service-Bus-Explorer-f2abca5a

    这个工具真是一个调试服务总线(Service Bus)及通知中心(Notification Hubs)的利器,而且开放源代码,完全可以深入了解REST API等内部机制,并可以根据自己管理需要进行整合、调整。

    这个工具可以查看和调整Notification Hub的相关配置,例如个PNS的设置;也可以设置每个接收客户端的注册ID的失效期;可以查看该Notification Hub每天有多少活动的设备及注册的最大数量。如下图:

    clip_image007

    工具还提供注册设备的详细信息,如下图,这些对于Notification Hub的调试和问题诊断都有非常重要的帮助。

    clip_image008

    可以说,有了这个工具,对Notification Hub真是洞若观火。

  • 在 Visual Studio 2013 IDE中使用Microsoft Azure Mobile Services

     

    稍前提到,Microsoft Azure SDK + Visual Studio 2013,让Azure开发和管理更容易,对于Microsoft Azure移动服务(Mobile Services)开发者而言,这样的体会应该是更明显。

    以前曾经尝试了一些Mobile Services的开发,比如:基于Windows Azure Mobile Service,实现云连接(Connected)的Windows 8 Metro应用自己动手打通Windows Store App, Windows Azure Mobile Service和Live Connect services等。

    开发过程中,需要经常地在开发工具(Visual Studio)和Azure管理门户(Management Portal)直接切换,因为后台的Azure移动服务、数据等都需要在管理门户里才能进行相关操作,例如新增表、调整权限、修改脚本代码等。

    现在,这些麻烦都没有了。

    如下图,可以在Server Explorer中的移动服务节点上,增加新的Mobile Service。对于已有的Mobile Service,可以执行新建表数据、查看日志文件等操作。

    clip_image001

    对于表数据,可以在对话框中指定针对表数据的操作的权限,如下图:

    clip_image002

    一个最大的惊喜是可以直接在Visual Studio 2013 IDE中编辑针对表数据操作触发的脚本,如下图。而之前管理门户中编辑和修改脚本,有时候会因为汉字处理、特殊字符等原因,造成脚本执行问题。相比较之下,在Visual Studio 2013 IDE中的体验更好、更熟悉些。

    clip_image003

    此外,日志也是我们在调试脚本、监控移动服务运行状态时常用的工具。而在Visual Studio 2013 IDE中可以非常方便地浏览这些日志,操作效率要比在管理门户中要更好些;不同于管理门户中翻页的方式,在Visual Studio 2013 IDE中可以加载更多,便于浏览和分析。

    clip_image004

    不过,在目前的版本中,仍有一些功能还未提供,例如还不能增加及编辑API的脚本,也不能进行通知推送服务的配置等。

    期望这些功能能够在近期尽快推出。

  • Microsoft Azure SDK + Visual Studio 2013,让Azure开发和管理更容易

     

    最近重新装了电脑,将操作系统升到了Windows 8.1。

    安装Visual Studio 2013 Ultimate版(http://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx),然后安装Microsoft Azure SDK for Visual Studio 2013(http://azure.microsoft.com/en-us/downloads/?fb=zh-cn)。当然,也没忘安装PowerShell命令行工具。

    用管理员身份权限运行Visual Studio,在Server Explorer工具面板上看到了Microsoft Azure节点,如下图。一路体验下来,感觉Azure开发和管理变得更容易了。

    clip_image001

    可以看到,在Visual Studio IDE里,可以方便地选择自己所拥有的所有订阅。

    可以看到,针对每个订阅,目前可以管理的服务包括:云服务(Cloud Services)、存储(Storage)、SQL数据库(SQL Database)、虚拟机(Virtual Machines)、网站(Web Sites)、移动服务(Mobile Services)、消息中心(Notification Hubs)和消息总线(Service Bus)等,如下图。大家可以非常方便地操作这些服务,例如,对于虚拟机,可以在Visual Studio IDE里,可以方便地新增一个虚拟机。

    clip_image002

    对于已有的虚拟机,可以方便地执行在管理门户(Management Portal)界面执行的操作,例如:重启、停止、启动远程桌面连接等。当大家在使用Azure上的虚拟机作为Web Server或者后台的Database Server的时候,就可以在一个开发环境中,轻松控制和管理这些服务器,而无需到浏览器上做这些事情。

    不过,目前看到在Visual Studio IDE里能够创建的虚拟机还都只是Windows Server的操作系统(OS)映像,即使是Oracle WebLogic Server这样的服务器,目前也只有Windows Server版本可以选择。未来期待Linux版本也可以创建。

    clip_image003

    另外,向SQL Database这种Azure开发者会频繁访问的Azure数据库,也可以非常方便地在Visual Studio IDE中进行访问、调试。这样在调试后台数据库代码的时候,真是太方便了。

    clip_image004

    当然,对于Web开发者,可以方便地在Visual Studio IDE中创建和管理WebSites,想想可以将工程文件和WebSites放在一块儿管理,随时可以做发布、更新,真是很贴心。

    clip_image005

    另外一个不错的地方就是存储,对于虚拟机开发者,可以在这里看到所有的磁盘(操作系统、数据磁盘等)。而且可以在这里将磁盘保持到文件系统中,例如本地。

    总的说来,Microsoft Azure SDK和Visual Studio 2013 IDE结合,让Azure开发和管理更容易,也可以感受到Visual Studio和Azure团队为改善开发者体验所做的努力。