如何解决Azure CLI和Powershell cmdlet之间的功能不一致
我试图用相同的参数但用2种不同的方式创建2个虚拟机:
-
Powershell cmdlet:
New-AzVm -ResourceGroupName $rg -Name "Testing1img" -Credential $credential -Image UbuntuLTS
-
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名称
在第二种情况下,我们有:
- Ubuntu 18.04 Linux
- 未配置Dns名称
为什么这些差异(甚至很小)?他们都不应该创建完全相同的虚拟机吗?要求使用UbuntuLTS的人会期望使用最新的可用映像,而不是16.04。
解决方法
对于 New-AzVM,您可以使用...指定 Ubuntu 版本 -Image Canonical:UbuntuServer:18.04-LTS:latest
,我的经验表明,通常针对各个工具在不同的时间范围内交付功能。我经常遇到使用了文档中建议之外的方法的命令。
我不确定PowerShell模块的外观如何,但是GitHub上提供了Azure CLI代码。因此,可以验证使用了哪些终结点,并且我认为在PowerShell中的调试模式下也可以做到这一点。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。