微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Azure CLI和Powershell cmdlet之间的功能不一致

如何解决Azure CLI和Powershell cmdlet之间的功能不一致

我试图用相同的参数但用2种不同的方式创建2个虚拟机:

  1. Powershell cmdlet:

    New-AzVm -ResourceGroupName $rg -Name "Testing1img" -Credential $credential -Image UbuntuLTS
    
  2. Powershell中的Azure CLI:

    az vm create `
      --name "Testing2img" `
      --resource-group $rg `
      --admin-username $credential.UserName `
      --admin-password $credential.Password `
      --image "UbuntuLTS"
    

两者都在同一资源组(不同名称)上创建Ubuntu LTS VM。我的问题是他们创建的VM设置稍有不同。

在第一种情况下,它创建:

  • Ubuntu 16.04 Linux
  • 正在分配DNS名称

    Trial 1

在第二种情况下,我们有:

  • Ubuntu 18.04 Linux
  • 未配置Dns名称

    Trial 2

为什么这些差异(甚至很小)?他们都不应该创建完全相同的虚拟机吗?要求使用UbuntuLTS的人会期望使用最新的可用映像,而不是16.04。

解决方法

对于 New-AzVM,您可以使用...指定 Ubuntu 版本 -Image Canonical:UbuntuServer:18.04-LTS:latest

,

我的经验表明,通常针对各个工具在不同的时间范围内交付功能。我经常遇到使用了文档中建议之外的方法的命令。

我不确定PowerShell模块的外观如何,但是GitHub上提供了Azure CLI代码。因此,可以验证使用了哪些终结点,并且我认为在PowerShell中的调试模式下也可以做到这一点。

https://github.com/Azure/azure-cli/blob/e4a2e19855b2ff0964d084239de9f3f230e67be4/src/azure-cli/azure/cli/command_modules/vm/custom.py#L682

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。