• Azure Managed Disk 跨区域/跨 Country Cloud 拷贝


           今天快速介绍一个快速方便的方法实现 Azure Managed Disk 跨区域/跨 Country Cloud 拷贝的方法。Day1 Azure Managed Disk 是不支持直接从源 Managed Disk 拷贝到目的区域或Country Cloud 存储为 Managed Disk 的,通常为了实现该目标需要先将 Managed Disk 拷贝至目的区域或 Country Cloud 的存储账号下存储为 Page Blob,然后再通过该 Page Blob 生成 Managed Disk。最新的 Managed Disk 提供了 Direct-Upload 功能,即直接上传生成 Managed Disk,源可以为跨区域/跨 Country Cloud 的 Managed Disk,也可以是本地的 VHD 文件。下面我们以 Azure 上跨区域/跨 Country Cloud 拷贝 Managed Disk 为例,快速开始:

    1. 安装最新版本的 Azure Cli 工具

    2. 在目的区域/目的 Country Cloud 创建 Create Option 类型为 Upload 的 Managed Disk

    az disk create -n $DESTDISKNAME -g $DESTRESOURCEGROUPNAME -l $DESTREGION --for-upload --upload-size-bytes $DISKSIZEINMB --sku Standard_LRS --os-type $OSTYPE

    其中 --upload-size-bytes 来指定创建的 Managed Disk 大小,可以以源 Managed Disk 大小作为参考,但需要注意该大小需要保持为 512 的整数倍

    3. 获取目的 Managed Disk 的上传访问地址

    az disk grant-access -n $DESTDISKNAME -g $DESTRESOURCEGROUPNAME --access-level Write --duration-in-seconds 86400

    实例 Output 如下:

    {
      "accessSas": "https://md-impexp-qb5jwbtg0tss.blob.core.windows.net/c0ctrh4ptwlx/abcd?sv=2017-04-17&sr=b&si=f3ecec6f-88c9-4dae-a5e8-1906497caf96&sig=xqoAb8HThuCTVE4GTN8v3UttUX7P3vSb%2Bdm%2Fsi%2F%2FBCE%3D"
    }

    记录下 accessSas 中的内容

    4. 获取源 Managed Disk 的访问地址

    az disk grant-access -n $SOURCETDISKNAME -g $SOURCERESOURCEGROUPNAME --access-level Read --duration-in-seconds 86400

    同上记录下 accessSas 中的内容

    5. 使用 Azcopy 将源 Managed Disk 拷贝至 目的 Managed Disk

    azcopy copy "$SOURCEACCESSSAS" "DESTACCESSSAS" --blob-type PageBlob

    将 $SOURCEACCESSSAS 替换为源 Managed Disk 的访问地址,$DESTACCESSSAS 替换为目的 Managed Disk 的访问地址

    6. 拷贝完毕后,撤销 accessSas 访问授权

    az disk revoke-access -n $DISKNAME -g $RESOURCEGROUPNAME

    此步分别对源 Managed Disk 和 目的 Managed Disk 做操作

    7. 完成,目标区域或目标 Country Cloud 内的 Managed Disk 就可以直接生成主机啦。

            如果大家不喜欢上述脚本的方式,在最新版本的 Azure Storage Explorer 1.10.1 中已经支持了对 Managed Disk 的访问,大家可以直接在 ADE 中通过 GUI 的方式直接对 Managed Disk 做 Copy Paste 操作,脚本中涉及的磁盘大小计算,访问地址授权,授权撤销操作都会自动完成。

            好了小文一篇,希望对大家日常使用有所帮助。

  • 相关阅读:
    Ansible主机信息模块 setup
    Ansible命令模块(unarchive模块 archive模块 )
    Ansible命令模块(mount模块 selinux模块 firewalld模块 )
    Ansible命令模块(group模块 user模块 cron模块 )
    Ansible命令模块(get_url 模块 service模块 systemd模块 )
    Ansible命令模块(yum模块 copy模块 file模块 )
    Ansible命令模块(command模块 shell模块 script模块 )
    Ansible 的 ad-hoc
    Ansible配置主机清单
    每日总结3.30
  • 原文地址:https://www.cnblogs.com/wekang/p/11634914.html
Copyright © 2020-2023  润新知