VMware Power CLI:如何获取数据存储的自定义属性

VMware Power CLI:如何获取数据存储的自定义属性

我正在尝试获取数据存储的自定义属性值,但遇到了类型不兼容的问题。下面我做错了什么吗?如何解决?

PowerCLI C:\> $ds = Get-Datastore -Name YK
PowerCLI C:\> $ds

Name                               FreeSpaceGB      CapacityGB
----                               -----------      ----------
YK                                  14,528.467      14,901.750


PowerCLI C:\> Get-Annotation -Entity $ds -CustomAttribute ykcustattr_global
Get-Annotation : Cannot bind parameter 'Entity'. Cannot convert the "YK" value of type "VMware.VimAutomation.ViCore.Impl.V1.DatastoreManagement.VmfsDatastoreImpl" to type "VMware.VimAutomation.ViCore.Types.V1.Inventory.InventoryItem".
At line:1 char:24
+ Get-Annotation -Entity $ds -CustomAttribute ykcustattr_global
+                        ~~~
    + CategoryInfo          : InvalidArgument: (:) [Get-Annotation], ParameterBindingException
    + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,VMware.VimAutomation.ViCore.Cmdlets.Commands.GetAnnotation

注 1:我能够获取虚拟机、群集和主机的自定义属性。问题仅出在数据存储区上。

笔记2:我猜问题是 Get-Datastore 返回数据存储对象,而 Get-Annotation 需要InventoryItem 对象对于 -Entity。目前尚不清楚是否可以进行强制转换/变换或类似操作。

VMware vCenter 版本:6.5

谢谢你!

答案1

我在 VMware 论坛上得到了答案,并决定将其发布在这里。简而言之,问题确实存在,但有一个解决方法:

https://communities.vmware.com/message/2826274#2826274

相关内容