zoukankan      html  css  js  c++  java
  • [New Portal]Windows Azure Virtual Machine (12) 在本地使用Hyper-V制作虚拟机模板,并上传至Azure (2)

      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 FilesMicrosoft SDKsWindows Azure.NET SDKv2.0in目录,执行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-7-2-2013-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:VHDServer2012_CHN_64bitServer2012_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

  • 相关阅读:
    Swift入门篇-Hello World
    Swift入门篇-swift简介
    Minecraft 插件 world edit 的cs 命令
    搭建本地MAVEN NEXUS 服务
    MC java 远程调试 plugin 开发
    企业内部从零开始安装docker hadoop 提纲
    javascript 命令方式 测试例子
    ca des key crt scr
    JSF 抽象和实现例子 (函数和属性)
    form 上传 html 代码
  • 原文地址:https://www.cnblogs.com/threestone/p/3159293.html
Copyright © 2011-2022 走看看