从自定义映像创建 Azure VM

2024-04-05

我有一个存储在 Azure 中的映像,我想从中启动多个虚拟机。我创建了一个模板,它将为我创建必要的资源,除了创建虚拟机之外,所有资源都成功。

使用 CreateOption.FromImage 运行部署大约 40 分钟,直到出现错误:

VM“vmName”的操作系统配置未在分配的时间内完成。但是,检测到 VM 来宾代理正在运行。这表明来宾操作系统尚未准备好用作 VM 映像(使用 CreateOption=FromImage)。要解决此问题,请按原样使用 CreateOption=Attach 的 VHD 或正确准备它以用作映像

改变CreateOption.FromImage to CreateOption.Attach立即给我以下错误:

如果 VM 是从平台或用户映像创建的,则无法附加现有操作系统磁盘。

我想通过模板实现的目标:

  1. 指向主图像
  2. 为母版副本提供所需的目的地
  3. 将主映像复制到目标位置
  4. 创建虚拟机
  5. 将副本附加到 VM

以下是我用来部署的模板的 VM 部分:

{
  "apiVersion": "2015-06-15",
  "type": "Microsoft.Compute/virtualMachines",
  "name": "[parameters('vmName')]",
  "location": "[resourceGroup().location]",
  "tags": {
    "displayName": "VirtualMachine"
  },
  "dependsOn": [
    "[concat('Microsoft.Network/networkInterfaces/', parameters('nicName'))]"
  ],
  "properties": {
    "osProfile": {
      "computerName": "[parameters('vmName')]",
      "adminUsername": "[parameters('adminUsername')]",
      "adminPassword": "[parameters('adminPassword')]"
    },
    "hardwareProfile": {
      "vmSize": "[variables('vmSize')]"
    },
    "storageProfile": {
      "osDisk": {
        "name": "[parameters('OSDiskName')]",
        "osType": "windows",
        "caching": "ReadWrite",
        "createOption": "FromImage",
        "image": {
          "uri": "[concat('https://', parameters('storageAccountName'), '.blob.core.windows.net/', parameters('sourceStorageContainerName'), '/', parameters('sourceVHDName'), '.vhd')]"
        },
        "vhd": {
          "uri": "[concat('https://', parameters('storageAccountName'), '.blob.core.windows.net/', parameters('vhdStorageContainerName'), '/', parameters('OSDiskName'), '.vhd')]"
        }
      }
    },
    "networkProfile": {
      "networkInterfaces": [
        {
          "id": "[resourceId('Microsoft.Network/networkInterfaces', parameters('nicName'))]"
        }
      ]
    }
  }
}

VM“vmName”的操作系统配置未在分配的时间内完成。但是,检测到 VM 来宾代理正在运行。这表明来宾操作系统尚未准备好用作 VM 映像(使用 CreateOption=FromImage)。要解决此问题,请按原样使用 CreateOption=Attach 的 VHD 或正确准备它以用作映像

如果您使用未经过 sysprepped 的映像来创建 VM,可能会导致错误,因此请确保您的映像经过 sysprepped。

如果 VM 是从平台或用户映像创建的,则无法附加现有操作系统磁盘。

当您指定 CreateOption to Attach 时(它将从专用磁盘创建虚拟机),请勿指定 SourceImageUri 参数。欲了解更多信息,请检查“-CreateOption”本文档 https://learn.microsoft.com/en-us/powershell/resourcemanager/azurerm.compute/v2.3.0/set-azurermvmosdisk#parameters.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从自定义映像创建 Azure VM 的相关文章

随机推荐

  • 我如何监听所有具有参数化名称的 Seam 上下文事件?

    接缝会起火不同类型的事件 http docs jboss org seam latest reference en US html events html d0e5252与特定范围 任务或流程相关 并将范围 任务或流程的名称附加到事件末尾
  • 获取两个给定日期之间的 SUM

    如果我想获得一定日期范围内的总消耗量 我该怎么做 我想我可以这样做 SELECT id SUM consumption FROM consumption info WHERE date time BETWEEN 2013 09 15 AND
  • 在 Java 中使用 Visual Studio Code 的 Azure Functions 项目

    我正在尝试使用 VSCode 创建 azure 函数并将其部署到 azure 我按照官方文档的描述进行操作 https learn microsoft com en us azure azure functions functions cr
  • 即使数据没有改变,useEffect也会多次渲染

    如果依赖项数组为空 则此 useEffect 将渲染一次 但如果我将folderRef 放入依赖项数组 则此 useEffect 将渲染多次 我只想在添加或删除某些文件夹时渲染组件 请帮忙 import React useState use
  • 滑动删除不显示删除按钮

    我肯定在这里遗漏了一些东西 这应该没那么难 我正在尝试在 iPad 上的 UITableView 中的项目列表上实现基本的滑动删除功能 一切似乎都正常 除了当单元格向左滑动时没有删除按钮 只有空白区域 以下是我在适当功能中的内容 BOOL
  • 使用 tree-model-js 将树转换回 JSON

    是否有一种方法可以将 TreeModel 转换为 JSON 字符串 这样它就可以被存储 然后使用tree parse 目前在尝试时JSON stringify root 它给出了关于循环引用的明显错误 因为子级包含父级 父级包含子级 Use
  • C++ getline 在 Windows 中读取整个文件

    这看起来像一个类似的问题this one https stackoverflow com questions 12152311 c getline reads entire file 但是我认为我的情况实际上可能有点不同 代码如下 void
  • ASP.NET MVC 区域中的自定义错误覆盖

    我想要 MVC 区域特有的自定义错误页面 不幸的是 Web config 覆盖系统似乎没有考虑 MVC 文件夹结构 如果我想覆盖一个名为 mobile 的区域 我必须创建一个名为 mobile 的根项目文件夹 包含视图和控制器 并将 Web
  • Sublime 插件:查找并选择文本

    我有插件sublime text 3这让我可以将光标移动到行号 import sublime sublime plugin class prompt goto lineCommand sublime plugin WindowCommand
  • 如何调用Postgres函数返回SETOF记录?

    我写了以下函数 Gets stats for all markets CREATE OR REPLACE FUNCTION GetMarketStats RETURNS SETOF record AS BEGIN SELECT R appr
  • document.querySelector 在 .js 文件中不起作用[重复]

    这个问题在这里已经有答案了 If var raster document querySelector canvas 在 HTML 文件中 定义并声明了栅格 但是 我希望将所有内容都放在 js 文件中 只将函数调用放在 HTML 中 当我尝试
  • AWS Lambda SQS 触发器限制/限制

    我有一个 AWS SQS 队列 我将使用 Lambda 函数触发器对其进行设置 以便为添加到队列中的每个项目运行 Lambda 函数以执行一些处理工作 处理的一个步骤是访问 API 端点 为添加到队列中的每个项目取回一些数据 然后将其存储在
  • C++11 std::thread::detach 和访问共享数据

    如果您之间有共享变量std thread和主线程 或任何其他线程 即使您执行thread detach 创建线程后立即调用方法 是的 调用后仍然可以访问全局变量 捕获变量和传入变量detach http en cppreference co
  • 获取给定元素的活动(正在运行)D3 v3 过渡的标准方法是什么?

    D3 的抽象仍然让我心烦意乱 所以希望我正确地表达了这一点 In D3 版本3 给定一个元素 比如一个圆 并且给定每个元素仅可能运行一个转换 http bost ocks org mike transition per element确定该
  • 我们如何捕获 google Vertex AI 上的所有容器日志?

    我在 AI 平台上有一个在线预测端点 统一 并且仅记录severity https cloud google com logging docs reference v2 rest v2 LogEntry logseverity gt 可以发
  • Android:向包裹写入异常?

    我得到以下信息日志错误在我的应用程序代码中 07 14 20 17 15 026 E DatabaseUtils 814 Writing exception to parcel 07 14 20 17 15 026 E DatabaseUt
  • 如何为基于用户输入以编程方式创建的按钮创建 IBAction

    我正在创建一个小项目 涉及创建基于 UIButton 的用户输入 我知道如何以编程方式添加按钮 但我不确定如何使按钮执行我希望它执行的操作 我知道对于直接在故事板上创建的 UIButton 可以将 IBAction 链接到文件中来执行此操作
  • android-camera-server-died-and-camera-error-100

    我有一个问题需要跟进Android 相机服务器死机且相机错误 100 https stackoverflow com questions 8647628 android camera server died and camera error
  • 导入 .jsx 文件时找不到模块

    我找不到解决办法 我正在使用 Reactstrap CSS 框架 React Express 和 Webpack 我成功在index jsx上导入App jsx文件 然后 我尝试使用相同的方式在 App jsx 上导入 NavbarTemp
  • 从自定义映像创建 Azure VM

    我有一个存储在 Azure 中的映像 我想从中启动多个虚拟机 我创建了一个模板 它将为我创建必要的资源 除了创建虚拟机之外 所有资源都成功 使用 CreateOption FromImage 运行部署大约 40 分钟 直到出现错误 VM v