java - 获取 OpenStack Nova 实例的标签列表

标签 java openstack-nova jclouds

我正在使用 Java 和 Jclouds SDK 与 OpenStack Nova 交互,我尝试获取 nova 实例的“标签列表”,我使用了以下代码

String region = novaApi.getConfiguredRegions().iterator().next();
ServerApi serverApi = novaApi.getServerApi(region);
Server novaInstance = serverApi.get(TEMP_SERVERNAME);
tags = novaInstance.getMetadata();

变量标签Map<String, String>但正如我在 OpenStack 文档中看到的,有一个 API ( /servers/{server_id}/tags ) 返回列表标签,这里是 API link这比 Map<String, String> 更符合我的需要。

问题是,jclouds SDK 中的哪个函数返回该类型? 我在 Server 类中找不到任何返回该类型的函数

谢谢

最佳答案

当前版本的jclouds不直接支持List Tags根据ServerApi实现,因此您不能直接使用 NovaApi 检索标签。

使用 jclouds 可移植抽象进行计算,您可以列出 OpenStack 安装上的节点,并检索附加到 userMetadata 字段中的节点的标签列表,只要其他详细信息如下:

Set<? extends ComputeMetadata> nodes = computeService.listNodes();

NodeMetadata node = computeService.getNodeMetadata(id)

关于java - 获取 OpenStack Nova 实例的标签列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49799498/

相关文章:

java - Spring Boot 与 Flyway 集成 - init order

java - 如何使用通过对象收集的数据填充 arrayList。 (安卓)

openstack - 错误请求错误 OpenStack

java - 删除用户输入的信息

java - 在 Java 中使用正则表达式从格式为 01OCT12 14 :26 的字符串中提取日期

hadoop - 在OpenStack Sahara中生成Hadoop集群时的“No valid host was found”

python - 属性错误 : 'str' object has no attribute 'isoformat'

java - jclouds-labs azurecompute 获取 ComputeService 对象

java - Maven 未拉下正确的 JClouds-Chef 依赖关系树