Cinder API с использованием jclouds
Я читал о поддержке jclouds, добавленной в Cinder Openstack API, и я рассматривал этот пример использования в Rackspace Cloud.
Кто-нибудь знает, это поддерживается и для HP Cloud? если нет, как я могу использовать HP Cloud Block Storage с jclouds?
большое спасибо!
2 ответа
Поддержка HP Cloud для API OpenStack Block Storage (Cinder) появится в ближайшее время. Пожалуйста, обратитесь к нашей документации API для ссылки на поддерживаемые в настоящее время API хранилища блоков: https://docs.hpcloud.com/api/block-storage/
Вы должны быть в состоянии использовать Cinder API с HP, но я попробовал его, и он не работал. Вот что я сделал.
Iterable<Module> modules = ImmutableSet.<Module> of(new SLF4JLoggingModule());
RestContext<CinderApi, CinderAsyncApi> cinder = ContextBuilder.newBuilder("openstack-cinder")
.endpoint("https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/")
.apiVersion("1.1")
.credentials(myHpTenantName + ":" + myHpUsername, myHpPassword)
.modules(modules)
.build(CinderApiMetadata.CONTEXT_TOKEN);
VolumeApi volumeApi = cinder.getApi().getVolumeApiForZone("az-1.region-a.geo-1");
System.out.println(volumeApi.list());
Вызов list() возвращает пустой список, но с включенным ведением журнала я вижу, что на самом деле это 404, вызывающий возврат пустого списка. URL, созданный для перечисления томов,
https://az-1.region-a.geo-1.compute.hpcloudsvc.com/v1.1/myHpTenantId/volumes
Который, я думаю, должен быть действительным в соответствии с каталогом услуг HP, но он возвращает 404.
Я буду пинговать кого-то из HP и знаю, сможем ли мы докопаться до сути.