前面和大家聊了如何将虚拟机和数据库等存放在页Blob中的文件通过转换成块Blob,然后对其进行归档存储,从而节省相应的成本。但是有些情况下可能需要将归档存储中的数据检索出来使用,比如公司审计等等。所以接下来就来看下如何将存档层中存储的虚拟机文件恢复到页Blob中。

将归档存储中的数据文件恢复到页Blob中依旧可以使用Blobporter。BlobPorter是用于Azure Blob存储的数据传输工具,它可以通过并发读取和写入来实现吞吐量的最大化,并发读取和写入可以独立地进行缩放。在这里我们可以借助Blobporter进行数据的copy,将数据从块Blob拷贝到页Blob。闲言少絮,下面我们开始今天的实验。

将数据移动到热存储层

选中存储账户容器中的归档文件,点击Change tier,然后访问层位置选择热(hot),点击保存:

将Azure存储存档层中的虚拟机转换为页Blob_Blob
经过一段时间后,数据会被从归档层中检索出来,可以看到现在的访问层已经发生了改变:

将Azure存储存档层中的虚拟机转换为页Blob_IT_02

从块Blob转换为页Blob

从块blob转换为页Blob的过程和之前页Blob转换块Blob的过程非常相似,首先执行如下命令,设置源存储账户值:
set SRC_ACCOUNT_NAME=sa*********10
set SRC_ACCOUNT_KEY=yLHU*************************XMsofe3lFxuKXK+**********hN7cSVOKLekK15STgIMy62lS8Kg==

然后执行如下命令,设置目标存储账户值:
set ACCOUNT_NAME=t**********ks
set ACCOUNT_KEY=UCz5***********************R7Pj1qS9HvsiJ6*************bSDKEkiRUSJc2atHvSq1R+U256zPw==

将Azure存储存档层中的虚拟机转换为页Blob_IT_03

设置完成后,运行以下命令以执行转换并从源复制到目标
.\Blobporter.exe -f "https://saarchive010.blob.core.windows.net/conversion" -c conversion -t blob-pageblob -b 90MB

将Azure存储存档层中的虚拟机转换为页Blob_Azure_04

转换完成,可以看到当前Blob type已经变为页Blob文件。

将Azure存储存档层中的虚拟机转换为页Blob_IT_05