Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Image 从在不同订阅下创建的映像创建Azure VM_Image_Azure_Gallery_Restore - Fatal编程技术网

Image 从在不同订阅下创建的映像创建Azure VM

Image 从在不同订阅下创建的映像创建Azure VM,image,azure,gallery,restore,Image,Azure,Gallery,Restore,有没有一种方法可以备份VM(使用sysprep方法进行图像捕获),然后让订阅的用户可以看到库中的图像。例如,我创建了一个虚拟机,将其归档到映像库,然后我的同事出现并希望从该映像创建虚拟机(该同事不能是我订阅的联合管理员) 或者,是否有一种方法可以将VM移动到另一个订阅,而无需关闭它并重新创建 我们发现了以下问题,但这有点复杂,需要购买第三方软件 非常感谢 Richard Clarke我认为您不能使用在一个订阅中创建的映像在另一个订阅中创建虚拟机。您需要将这些图像复制到订阅中。由于映像只是存储帐

有没有一种方法可以备份VM(使用sysprep方法进行图像捕获),然后让订阅的用户可以看到库中的图像。例如,我创建了一个虚拟机,将其归档到映像库,然后我的同事出现并希望从该映像创建虚拟机(该同事不能是我订阅的联合管理员)

或者,是否有一种方法可以将VM移动到另一个订阅,而无需关闭它并重新创建

我们发现了以下问题,但这有点复杂,需要购买第三方软件

非常感谢


Richard Clarke

我认为您不能使用在一个订阅中创建的映像在另一个订阅中创建虚拟机。您需要将这些图像复制到订阅中。由于映像只是存储帐户中的页面blob,因此您需要将它们复制到目标订阅中的存储帐户中,从中创建映像,然后部署VM。我不知道还有别的办法

关于你关于
需要购买第三方软件的评论,这不是真的。您不必购买第三方软件。主要的事情是将VHD(即页面blob)从一个订阅移动到另一个订阅。一定要看一看
第1步-在那篇博文中复制blob
。它有一个指向控制台应用程序的链接,其中包含源代码,您可以使用该源代码跨控制台复制blob。我使用云存储工作室来探索我的blob存储。您可以使用任何其他存储资源管理器检查blob存储(包括Windows Azure portal)的内容。脑波数据最近发布了一个免费的blob存储资源管理器,您可能想签出它:


不幸的是,这是我所知道的从不同订阅下创建的映像创建Azure VM的唯一方法。

现在可以使用

编辑:

@Shanky订阅ID是映像版本的资源ID的一部分。它将如下所示:

/订阅/$subscriptionId/resourceGroups/$resourceGroup/providers/Microsoft.Compute/galleryName/images/$galleryImageDefinition/versions/$imageVersion


创建VM时,将其作为ImageReference.id传递。这类似于从市场映像创建虚拟机,但您只需传递ImageReference ID,而不是publisher/sku/等。

您好,Gaurav,谢谢您的回复-我已经下载了azure explorer-这为我提供了所需的UI类型。有没有一种方法可以避免通过我的本地互联网连接复制vhd?它似乎是先将vhd向下拉,然后再向上复制。我是Azure的新手,因此不太了解您在回复中引用的控制台应用程序/源代码部分。复制blob操作是服务器端异步操作。因此,理想情况下,该工具(Azure Explorer)不应下载VHD然后上载。如果它正在这样做,那么就有问题了。因此,控制台应用程序实质上启动复制blob操作,并持续监视其进度。或者,您也可以使用Az Copy:。HTH。在Azure VM本身上安装了Azure Explorer,现在可以在Azure云本身的存储帐户之间直接复制vhd Blob。非常感谢您的帮助-只需要按照您的说明从磁盘创建新的VM。您能谈谈我们如何具体做到这一点吗?我想通过JavaSDK实现这一点。在用映像创建虚拟机时,我看不到任何选择订阅的选项。谢谢,在我发布了该评论后,我找到了它。我只是想指出,如果您通过应用程序注册执行这些操作,要在另一个订阅中创建VM,您的服务主体应该可以访问另一个订阅。如果需要,您需要授予读取器RBAC访问权限。