Azure Lei Zhang的博客

weibo: LeiZhang的微博/QQ: 185165016/QQ群:319036205/邮箱:leizhang1984@outlook.com/TeL:139-161-22926

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  390 随笔 :: 0 文章 :: 394 评论 :: 0 引用

  Windows Azure Platform 系列文章目录

  

  之前的4节内容里,我们已经创建了一个VHD(Virtual Hard Disk),这个VHD包含的内容有

  • Windows Server 2008 R2操作系统
  • 其他软件(Office、ESRI ArcGIS等)
  • IIS
  • .NET Framework 3.5
  • Windows Azure VM Role Integration Components
  • 更新了Windows Update
  • 设置了System Preparation Tool

  其实我们之前做的就是准备IaaS (Infrastructure as a Service)中的O/S,Middleware和Runtime的过程。如下图:

  但是这个VHD仅仅是通过Hyper-V运行在本地的机器上,还没有上传到Windows Azure的数据中心里进行托管和运行。这章我将会介绍如何上传这个VHD。

  1.首先我们找一台已经安装好Windows Azure SDK的机器。在开始 -> 所有程序 -> Windows Azure SDK v1.x下找到Windows Azure Command Prompt。然后以管理员方式运行此程序。

  2.输入命令

csupload Add-VMImage -Connection "SubscriptionId=<YOUR-SUBSCRIPTION-ID>; CertificateThumbprint=<YOUR-CERTIFICATE-THUMBPRINT>" -Description "Base image Windows Server 2008 R2" -LiteralPath "<PATH-TO-VHD-FILE>" -Name baseimage.vhd -Location <HOSTED-SERVICE-LOCATION>

其中:

<YOUR-SUBSCRIPTION-ID>: 输入您的订阅ID,您可以在Windows Azure管理界面里查看

<YOUR- CERTIFICATE-THUMBPRINT>:输入您的认证指纹,您可以在Windows Azure管理界面里查看

<PATH-TO-VHD-FILE>:VHD在本地的路径。

<HOSTED-SERVICE-LOCATION>:VHD部署在Windows Azure数据中心的地理位置。您可以选择(“East Asia”, “North Central US”, “North Europe”, “South Central US”, “Southeast Asia”, “West Europe”)

注意:

1.如果您使用Windows Azure Command Prompt上传VHD的电脑操作系统是中文版操作系统。请在控制面板->区域和语言->非Unicode程序的语言->更改系统区域设置中,"当前系统区域设置"设置成"英语(美国)",然后重新启动。否则将无法正常上传。

2.VHD的文件名请不要包含空格。

3.因为准备上传的过程默认为90秒,所以在网络条件不佳的情况下非常容易上传超时而导致失败。建议修改"C:\Program Files\Windows Azure SDK\v1.6\bin" 下的csupload.exe.config。

<csupload

uploadBlockSizeInKb="1024" ç Change it to 512KB or 768KB

maxUploadThreads="8" ç change this value to 1 (or try with lower values then 8)

ignoreServerCertificateErrors="false"

maxVHDMountedSizeInMB="66560"

/>

然后重新运行Windows Azure Command Prompt,进行上传。

  3.执行csupload Add-VMImage命令

  4.在弹出的Windows Azure VHD Verification Tool对话框,选择OK让VHD被mount

在默认情况下,Windows Azure VHD Verification Tool首先会验证需要上传的VHD的有效性,然后会创建一个后缀名为.preped的文件,这个文件是经过压缩的VHD副本,并创建在这个VHD的同一目录下。

下图可以看到在VHD上传之前,Windows Azure VHD Verification Tool首先会准备。

  5.当准备工作做完之后,Windows Azure VHD Verification Tool会在Windows Azure创建一个Blob来保存VHD的这个经过压缩后的副本文件(.preped)

注意:上传需要花费的时间与:

  • VHD镜像的大小
  • 本地网络带宽

都有关系。在某些极端情况下,可能需要花费一整天来上传整个VHD。

幸运的是,VHD是支持断点续传的。如果因为网络故障造成传输失败,只要重新执行csupload命令就可以继续上传VHD。

  6.在Azure管理界面,我们选择"托管服务、存储账户和CDN"->"VM映像"。可以看到baseimage.vhd正在被上传,状态显示"挂起"

  7.我们等待整个上传过程全部完成,baseimage.vhd的状态会变成Committed

 

 

 

posted on 2012-04-07 22:18 Lei Zhang的博客 阅读(...) 评论(...) 编辑 收藏