任何人都有一个如何使用vSphere VI Java API来提取VM的“摘要”选项卡的“注释”部分中的值的片段?我经常浏览API文档,但没有在任何地方看到它。
答案 0 :(得分:0)
首先查看VirtualMachineConfigSpec的API文档。
然后你可以从java
这样做VirtualMachineConfigSpec configSpec = new VirtualMachineConfigSpec();
configSpec.setAnnotation = "Your annotation string here"
reconfigVM_Task(vmMOR, configSpec);
答案 1 :(得分:0)
我在Perl SDK中做过这个,但是重新使用Java API应该很容易。 您可以从Virtual Machine object获取注释,该注释具有类 VirtualMachineSummary 的属性名为摘要,其配置类 VirtualMachineConfigSummary 具有字符串类型的注释字段,这是您需要的。
my $vmname = "vmname you are looking for";
# Get all VMs
my $vms = Vim::find_entity_views(
view_type => 'VirtualMachine',
filter => {"config.name" => qr/^$vmname$/i},
);
# Iterate over the VMs, getting their annotations
foreach my $vm (@{ $vms }) {
my $notes = $vm->summary->config->annotation;
my $name = $vm->summary->config->name;
if (not defined $notes) {
print " - VM: $name has no notes\n";
}
elsif ($notes =~ m/^\$*/) {
print " - VM: $name has empty notes\n";
}
else {
print " - VM: $name notes: '$notes'\n";
}
}
以下是完整代码:https://communities.vmware.com/message/2613855#2613855