【发布时间】:2014-06-28 13:35:40
【问题描述】:
我们必须为我们的迁移服务(从 AWS 到 Openstack 再到 vCloud 等等)支持许多不同的目标云,所以我想我至少会在我们检索帐户属性的部分(例如区域、组织)中使用 jclouds 、目录等)
但是,jclouds 对“通用”vCloud API 的支持似乎停留在 1.0 版——而且当我们在内部运行 1.5(和 5.1)时,这使得 jcloud 非常无用,至少就 vcloud 而言(我认为 1.5早在去年 9 月就被 VMWare “弃用”了?)。
有没有人知道我是否在这里遗漏了一些明显的东西,或者是否有升级支持的计划?
显然,我们将使用 vmware 的 SDK,但最好通过 jclouds 抽象所有云。
这是我收到的错误:
version 1.0 not present in: {1.5=https://10.10.122.13/api/sessions, 5.1=https://10.10.122.13/api/sessions}
我使用的代码几乎直接来自(极其稀疏的)“用户指南”:
private VCloudApi getVcloudContext() throws IOException {
Credentials creds = getVcloudCredentials();
Properties overrides = new Properties();
overrides.setProperty(VCLOUD_ENDPOINT, creds.url);
overrides.setProperty(Constants.PROPERTY_TRUST_ALL_CERTS, "true");
return ContextBuilder.newBuilder(VCLOUD_PROVIDER)
.overrides(overrides)
.credentials(creds.username, creds.username)
.modules(ImmutableSet.<Module> of(new Log4JLoggingModule(),
new SshjSshClientModule()))
.buildApi(VCloudApi.class);
}
// in my main():
VCloudApi api = app.getVcloudContext();
HttpsURLConnection.setDefaultHostnameVerifier(new HostnameVerifier() {
public boolean verify(String string, SSLSession ssls) {
return true;
}
});
Map<String, ?> orgsList = api.getOrgApi().listOrgs();
我们将不胜感激任何帮助、建议和指向更好文档的指针:谢谢!
【问题讨论】:
标签: cloud jclouds vcloud-director-rest-api