当我从 PowerShell ISE 运行此代码时
New-AzureRmVM -ResourceGroupName $ResourceGroupName -Location $Location -VM $VM
我收到此错误
New-AzureRmVM : The entity name is invalid according to its validation rule: ^[^_\W][\w-._]{0,79}(?<![-.])$.
StatusCode: 400
ReasonPhrase: Bad Request
OperationID : 'my-operation-id'
At line:1 char:1
+ New-AzureRmVM -ResourceGroupName $ResourceGroupName -Location $Location -VM $VM
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : CloseError: (:) [New-AzureRmVM], ComputeCloudException
+ FullyQualifiedErrorId : Microsoft.Azure.Commands.Compute.NewAzureVMCommand
$ResourceGroupName 包含我的资源组名称,本例中为“foobar.com”。
$Location 包含“East US 2”。
$VM 包含下面我的虚拟机配置
ResourceGroupName :
Id :
Name : foobar
Type :
Location :
Tags : null
AvailabilitySetReference : null
DiagnosticsProfile : {
"bootDiagnostics": {
"enabled": true,
"storageUri": "https://foobar.blob.core.windows.net/"
}
}
Extensions : null
HardwareProfile : {
"vmSize": "Basic_A0"
}
InstanceView : null
NetworkProfile : {
"networkInterfaces": [
{
"properties.primary": null,
"id": "/subscriptions/my-sub-id/resourceGroups/foobar.com/providers/Microsoft.Network/n
etworkInterfaces/foobar"
}
]
}
OSProfile : {
"computerName": "foobar",
"adminUsername": "admin",
"adminPassword": "password",
"customData": null,
"windowsConfiguration": {
"provisionVMAgent": true,
"enableAutomaticUpdates": true,
"timeZone": "UTC-05:00",
"additionalUnattendContent": null,
"winRM": null
},
"linuxConfiguration": null,
"secrets": null
}
Plan : null
ProvisioningState :
StorageProfile : {
"imageReference": {
"publisher": "MicrosoftWindowsServer",
"offer": "WindowsServer",
"sku": "Windows-Server-Technical-Preview",
"version": "latest"
},
"osDisk": {
"osType": null,
"encryptionSettings": null,
"name": "OS Disk",
"vhd": {
"uri": "https://foobar.blob.core.windows.net/vhds/foobar-os.vhd"
},
"image": null,
"caching": null,
"createOption": "fromImage",
"diskSizeGB": null
},
"dataDisks": [
{
"lun": 0,
"name": "Data Disk",
"vhd": {
"uri": "https://foobar.blob.core.windows.net/vhds/foobar-data.vhd"
},
"image": null,
"caching": null,
"createOption": "empty",
"diskSizeGB": 20
}
]
}
DataDiskNames : {Data Disk}
NetworkInterfaceIDs : {/subscriptions/my-sub-id/resourceGroups/foobar.com/providers/Microsoft.Network/networkInterf
aces/foobar}
谁能告诉我它所指的实体名称是什么?是虚拟机的名称、存储位置之一的名称等吗? 据我所知,一切都与正则表达式匹配,所以我不明白为什么会收到此错误。谷歌搜索命令名称只显示了一些结果,根本没有提及任何有关实体名称的内容。
最佳答案
没关系,我是通过反复试验才弄清楚的。数据和操作系统磁盘的名称中显然不能有空格。如果 Azure PS 模块有更好的文档记录,将会有所帮助。
关于regex - 为什么 New-AzureRmVM 给出实体名称错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35234497/