【问题标题】:Creating VM with Azure CLI使用 Azure CLI 创建 VM
【发布时间】:2019-10-29 17:35:47
【问题描述】:

我发帖是想看看是否有人能指出我正确的方向。几天来我一直在努力让它工作,但我陷入了死胡同。

我试图删除变量周围的" 并完全删除变量。我尝试在 Azure Cloud Shell、WSL 和 PowerShell 中将其作为 .ps1 脚本运行。但是,我继续收到相同类型的错误。

Here 是脚本。

这是我遇到的错误。

验证错误:参数“resource_group_name”必须符合 以下模式:'^[-\w\._\(\)]+$'。 ' 未能识别。 ' 未找到。检查拼写和大小写和 再试一次。

如果我运行一个没有变量的单行程序,我会收到此错误。

az vm create:错误:之前引用的局部变量“图像” 作业

任何帮助将不胜感激。谢谢!

【问题讨论】:

  • ps:https://codepad.co/ 非常适合分享 sn-ps
  • 我也针对此问题打开了 Microsoft 支持案例。如果有帮助,我会更新。

标签: bash azure powershell command-line-interface


【解决方案1】:

所以对于第一个错误,看起来创建 VM 正在启动以快速识别新资源组。

对于图片,您需要使用完整的 URN MicrosoftWindowsServer:WindowsServer:2016-Datacenter:latest

【讨论】:

  • 看起来您在实际运行脚本时可能使用了images 而不是image
  • 感谢@Hannel 的建议。我正在使用基于“az vm create -h”imgur.com/6Jm5U1o 的输出的 URN 别名
  • 更改为完整的 URN 会收到此错误:'因错误而失败'操作失败,状态为:'错误请求'。详细信息:400 客户端错误:对 url 的错误请求:management.azure.com/subscriptions/<subscriptionID>/…'。将跳过配置计划设置参数'resource_group_name'必须符合以下模式:'^[-\\w\\._\(\)]+$'。
  • 您需要确保您拥有正确的所有变量和语法。 i.imgur.com/WST92cg.png
  • 感谢@Hannel 的帮助。我确实有一些语法问题。我已经纠正了这些问题,但我无法手动运行每一行来创建虚拟机。但是,将脚本作为 .ps1 或 .sh 文件运行时似乎仍然存在问题。可能只是 Azure CLI 的限制?
【解决方案2】:

首先,它是一个 bash 脚本,变量定义在 Windows 和 Linux 之间是不同的。所以我建议你在 Azure Cloud Shell 中使用 bash 模式运行脚本,或者当它是 bash 脚本时使用 WSL。

二、错误显示资源组名不符合Naming rules and restrictions for Azure resources,需要阅读文档确认组名是否正确。

【讨论】:

  • 我已经确认资源组命名是好的。我也尝试在 Azure Shell 中运行它。这是我得到的错误。 i.imgur.com/eoaBn08.png
  • @roddknocker 您使用的组名是什么?
  • @roddknocker 如果回答对你有帮助,请采纳。
【解决方案3】:

所以我发现问题是。这就是 VS Code 格式化 bash 脚本的方式。我不确定 VS Code 是如何格式化的,但我认为它可能与 ASCII 有关。我在 Azure CLI 中使用 nano 重新创建了脚本,它作为 bash shell 脚本运行良好。感谢大家的帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-05-04
    • 1970-01-01
    • 1970-01-01
    • 2020-12-01
    • 2019-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多