zoukankan      html  css  js  c++  java
  • Azure VM复制

    目前Azure上复制VM可以有多种方法:

    1 创建User Image,可以快速复制多台VM,但目前托管磁盘只支持Generalized的模式,需要对User和配置进行重置。

    2 从VHD或托管磁盘复制VM,通过Json Template、Powershell、CLI或SDK的方式等,都可以快速复制VM,但需要自己添加数据盘

    本文的Powershell脚本将通过采用对VHD或托管磁盘的复制实现对VM的复制,包括OS Disk和Data Disk。

    具体实现方式:

    1 读取csv配置文件

    具体参数如下

    • location:chinanorth或chinaeast
    • oldrgname:源VM的资源组名称
    • vmname:源VM的名称
    • vnetrgname:新VM将要加入的VNET的资源组名称
    • vnetname:新VM将要加入的VNET的名称
    • subnetname:新VM将要加入的Subnet名称
    • newrgname:新VM的资源组名称,如果没有将新建
    • newvmname:新VM的名称
    • DiagStorageAccountName:新VM诊断的存储账户名称,如果没有这个存储账户,将新建
    • vmsize:新VM的型号
    • vmStorageType:新VM的存储类型,Standard_LRS或Premium_LRS
    • osType:Linux或Windows
    • avsname:Availability Set的名称,如果没有将新建

    2 复制Disk

    根据源VM的信息,把源VM的OS Disk和Data Disk进行复制。

    具体复制方式为:如果是托管磁盘,直接进行复制;如果是VHD文件,先在同存储账号下创建临时的container,把vhd文件复制到这个container里,再通过这个临时container内的VHD文件复制托管磁盘。

    3 创建VM

    根据参数文件的参数创建:

    • 创建NIC
    • 把复制的OS Disk挂载到VM
    • 创建VM
    • 把Data Disk挂载到VM

    具体的脚本链接:

    https://github.com/hengv/Azure/tree/master/VM/Create-vmfromvm-withdatadisk

    总结:

    采用Powershell把源VM的OS Disk和Data Disk进行复制,由复制的托管磁盘创建VM,实现Azure VM的复制。

  • 相关阅读:
    2020/2/14
    2020/2/13
    《人类简史》
    2020/2/12
    bzoj3157国王奇遇记(秦九韶算法+矩乘)&&bzoj233AC达成
    [noip科普]关于LIS和一类可以用树状数组优化的DP
    [uva11722&&cogs1488]和朋友会面Joining with Friend
    Bzoj2154 Crash的数字表格 乘法逆元+莫比乌斯反演(TLE)
    NOIP2016滚粗记
    bzoj2228[ZJOI2011]礼物(gift)
  • 原文地址:https://www.cnblogs.com/hengwei/p/8514439.html
Copyright © 2011-2022 走看看