Windows Azure Platform 系列文章目录

  

  本章介绍的内容是将本地Hyper-V的VHD,上传到Azure数据中心,作为自定义的虚拟机模板。

  注意:因为在制作VHD的最后执行了Sysprep命令,所以该VHD中的OS会重新部署。

  如果您想迁移本地的Hyper-V虚拟机,还需要保留该虚拟机中安装的软件配置。

  请参考: [New Portal]Windows Azure Virtual Machine (21) 将本地Hyper-V的VM上传至Windows Azure Virtual Machine

  上一章内容中,笔者介绍了如何在本地通过Hyper-V制作Windows Server 2012中文版的虚拟机。

  本章我将首先介绍如何在Azure Storage中创建Container,然后介绍如何使用Azure PowerShell将本地的Server 2012 VHD上传至Azure数据中心。

  1.首先我们登陆Azure Management Portal。我已经创建了叫leivms的Storage Account,然后我们点击Add Container。如下图:

  

  2.然后在弹出的New Container窗口中,我们设置NAME为uploadvm,访问方式设置为Private(也可以设置为Public Container)。如下图:

  

  3.创建成功后,我们将来会通过访问http://leivms.blob.core.windows.net/uploadvm 这个URL,将本地的Server 2012 VHD上传至这个Blob Container。如下图:      

  

  4.之前做的工作都是在Azure Portal进行准备工作,接下来就正式进入上传VHD的过程了。

  5.请先确认已经安装最新的Azure SDK,目前最新的SDK版本是2.0,请在http://www.windowsazure.com/en-us/downloads/进行下载,笔者下载的是.NET SDK VS2012。下载完成后,会通过Web Installer进行安装。如下图:

  6.安装完成,以管理员身份运行CMD命令提示符,进入C:\Program Files\Microsoft SDKs\Windows Azure\.NET SDK\v2.0\bin目录,执行csupload.exe命令,如下图:

  

  会发现黄色提示部分,微软建议下载Azure PowerShell工具......e........(折腾啊)..........

  建议读者以后使用Azure PowerShell,不要用CSUpload

  那我们通过http://go.microsoft.com/?linkid=9811175&clcid=0x409,继续下载PowerShell。随后通过Web Installer安装。

  7.安装完Azure PowerShell,以管理员身份运行Azure PowerShell。

  

  Update 2015-09-01

  发现一个新的命令。可以不需要导入PublishSetting文件。

  如果你使用的是国内由世纪互联运维的Azure China,请在PowerShell输入命令:

Add-AzureAccount -Environment AzureChinaCloud

  如果你使用的是国外的Azure Global,请在PowerShell输入命令:

Add-AzureAccount

  注意:我们在下面的步骤中下载的publishsettings这个文件,需要非常小心的保存。

  笔者建议在导入完毕后,直接删除这个publishsettings文件,防止被不坏好意的人重复利用。

=====================================这里是分隔符============================================

  8.首先我们要在本地创建证书文件。以便本地计算机和Azure建立可靠的安全连接。请在Azure PowerShell输入以下命令:

Get-AzurePublishSettingsFile

  9.这时候计算机会弹出新的IE窗口,导航至Windows Azure。并要求我们输入登陆Azure的用户名和密码并登陆。

  10.登陆完毕后,系统会要求我们保存扩展名为publishsettings的文件,我们保存至本地计算机的磁盘上。如下图:

  11.然后我们回到Azure PowerShell窗口,继续输入以下命令:

Import-AzurePublishSettingsFile <PathToFile>

  PathToFile就是我们保存步骤11中扩展名为publishsettings的文件位置(文件路径+文件名),比如我将该文件保存至D盘根目录,我们就输入以下命令:

Import-AzurePublishSettingsFile 'D:\Windows Azure MSDN - Visual Studio Ultimate----credentials.publishsettings'

  上面的命令实际上是将本地的publishsettings文件上传至Azure的Management Certificates。我们可以打开Azure Management Portal。点击Settings,并选择Management Certificates,查看上传的publishsettings文件。如下图:

  这样,本地计算机就和Azure建立了可靠安全的链接了。接下来就可以上传我们的VHD文件了。

  12.请在本地Azure PowerShell继续输入以下命令。

Add-AzureVhd -Destination <BlobStorageURL>/<YourImagesFolder>/<VHDName> -LocalFilePath <PathToVHDFile>

  上面的参数说明是这样的:

  之前我们创建的BlobStorageUrl为http://leivms.blob.core.windows.net

  YourImagesFolder为ContainerName,我们在本章步骤2例设置为uploadvm

  VHDName,我们可以设置上传的VHD名称,这个可以按照用户需要设置

  PathToVHDFile,需要制定我们上传的VHD的路径(文件夹+文件名)

  根据笔者的本地环境,我们可以在PowerShell输入以下命令:

Add-AzureVhd -Destination 'http://leivms.blob.core.windows.net/uploadvm/Server2012_CHN_64bit.vhd' -LocalFilePath 'D:\VHD\Server2012_CHN_64bit\Server2012_CHN_64bit.vhd'

  接下来的Azure PowerShell会做如下操作:

  a)将本地的VHD做MD5加密

  b)在Azure Storage创建Page Blob。

  c)将VHD上传至Azure Storage Page Blob

  注意:上传VHD的速度与你本地网络有关。

  

  所有的步骤完毕后,如下图:

  13.最后,我们可以通过Azure Management Portal查看到上传成功的40G的VHD

[New Portal]Windows Azure Virtual Machine (12) 在本地使用Hyper-V制作虚拟机模板,并上传至Azure (2)的更多相关文章

  1. [New Portal]Windows Azure Virtual Machine (14) 在本地制作数据文件VHD并上传至Azure(1)

    <Windows Azure Platform 系列文章目录> 之前的内容里,我介绍了如何将本地的Server 2012中文版 VHD上传至Windows Azure,并创建基于该Serv ...

  2. [New Portal]Windows Azure Virtual Machine (21) 将本地Hyper-V的VM上传至Windows Azure Virtual Machine

    <Windows Azure Platform 系列文章目录> 本章介绍的内容是将本地Hyper-V的VHD,上传到Azure数据中心,并且保留OS中的内容. 注意:笔者没有执行Syspr ...

  3. [New Portal]Windows Azure Virtual Machine (11) 在本地使用Hyper-V制作虚拟机模板,并上传至Azure (1)

    <Windows Azure Platform 系列文章目录> 本章介绍的内容是将本地Hyper-V的VHD,上传到Azure数据中心,作为自定义的虚拟机模板. 注意:因为在制作VHD的最 ...

  4. [New Portal]Windows Azure Virtual Machine (13) 在本地使用Hyper-V制作虚拟机模板,并上传至Azure (3)

    <Windows Azure Platform 系列文章目录> 本章介绍的内容是将本地Hyper-V的VHD,上传到Azure数据中心,作为自定义的虚拟机模板. 注意:因为在制作VHD的最 ...

  5. [New Portal]Windows Azure Virtual Machine (15) 在本地制作数据文件VHD并上传至Azure(2)

    <Windows Azure Platform 系列文章目录> 在上一章内容里,我们已经将包含有OFFICE2013 ISO安装文件的VHD上传至Azure Blob Storage中了. ...

  6. [New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine

    <Windows Azure Platform 系列文章目录> 注:本章内容和之前的[New Portal]Windows Azure Virtual Machine (12) 在本地制作 ...

  7. [SDK2.2]Windows Azure Storage (16) 使用WCF服务,将本地图片上传至Azure Storage (上) 客户端代码

    <Windows Azure Platform 系列文章目录> 前一章我们完成了服务器端的代码,并且已经发布到了Windows Azure云端. 本章我们将实现客户端的代码,客户端这里我们 ...

  8. [New Portal]Windows Azure Virtual Machine (23) 使用Storage Space,提高Virtual Machine磁盘的IOPS

    <Windows Azure Platform 系列文章目录> 注意:如果使用Azure Virtual Machine,虚拟机所在的存储账号建议使用Local Redundant.不建议 ...

  9. [New Portal]Windows Azure Virtual Machine (18) Azure Virtual Machine内部IP和外部IP

    <Windows Azure Platform 系列文章目录> 在开始本章内容之前,请读者熟悉以下2篇博文:       [New Portal]Windows Azure Virtual ...

随机推荐

  1. 如何判断ScrollView滑动方形

    1/判断滚动视图左右滚动 { CGFloat startContentOffsetX;//滚动开始的坐标 CGFloat willEndContentOffsetX; //滚动即将停止的坐标 CGFl ...

  2. KVC/KVO简单实例代码

    Person.h #import<Foundation/Foundation.h> @classAccount; @interfacePerson :NSObject{ @private ...

  3. Tesseract-OCR识别中文与训练字库实例

    关于中文的识别,效果比较好而且开源的应该就是Tesseract-OCR了,所以自己亲身试用一下,分享到博客让有同样兴趣的人少走弯路. 文中所用到的身份证图片资源是百度找的,如有侵权可联系我删除. 一. ...

  4. .net程序单元测试介绍

    什么是单元测试?为什么要进行单元测试?如需要进一步了解,请移步维基百科. 关于.net程序单元测试的文章,网上已经有很多,但我相信我写的这篇文章的内容是独特的,因为我在网上找了很久,都没找到关于Str ...

  5. 100天后 - 100-days-later

    赛斯·高汀(Seth Godin)的博客:  http://sethgodin.typepad.com/seths_blog/2013/04/100-days-later.html 面对着数以千计的图 ...

  6. SQLServer 随机生成指定范围的日期

    一个分页的问题,DTCms3.0中,分页是根据时间分页的,如果当添加时间(add_time)都是同一个数值时,不管点击第几页,显示的数据都是同一个的内容,于是就有了需要把同一个时间改指定随机日期的功能 ...

  7. python:how does subclass call baseclass's __init__()

    First, use baseclass's name to call __init__() I wrote code like this: and we can use 'super' too.

  8. jQuery的选择器中的通配符[id^='code']

    1.选择器 (1)通配符: $("input[id^='code']");//id属性以code开始的所有input标签 $("input[id$='code']&quo ...

  9. WebApi系列~开放的CORS,跨域资源访问对所有人开放

    回到目录 之前有客户问我,如何AJAX跨域post,这个问题挺有意思,在我们看来,我是不被允许的,因为它是不安全的,但随着web api的火热,这个东西也被人们一步步的接受了,确实,有时,我们的接口希 ...

  10. EF架构~AutoMapper对象映射工具简化了实体赋值的过程

    回到目录 AutoMapper是一个.NET的对象映射工具,一般地,我们进行面向服务的开发时,都会涉及到DTO的概念,即数据传输对象,而为了减少系统的负载,一般我们不会把整个表的字段作为传输的数据,而 ...