Apache jclouds
地址:http://jclouds.apache.org/guides/openstack/
一个开源库,java实现,支持cloudstack,openstack以及各种公有云平台 比较成熟完善,Cloudify使用它接入openstack ec2
官网给的demo比较少,但是给了一个类似javadoc和一个jcloud-example的文档,很多东西要摸索。
使用maven导入jar包就可以使用
The Dasein Cloud API
Dasein与JClouds非常接近。他们 差不多是同时开始的,事实上,它使用了JClouds组件实现了相当一部分云提供者。也就是说,Dasein有几个提供者是JClouds所不支持的,反 之亦然。Dasein关注于单服务器操作,而JClouds则关注于机器群的引导。
上面是jcloud创建者11年所说,现在jcloud对于单服务器操作也很完善了。
这个项目官网做的很不好,很多广告,完全找不到资料。
openstack4j
地址: http://www.openstack4j.com/learn/
顾名思义,openstack for java,不支持其他平台,官网资料比较丰富,易上手,这个是本人最后的选择
openstack-java-sdk
地址:https://github.com/woorea/openstack-java-sdk
这个SDK是第三方爱好者贡献的开源SDK,更新比较慢。
其他语还有:
Deltacloud API
redhat发起的云计算标准api的开源项目
运行在linux上,有自己的web界面,安装在和jcloud不同,通过http访问,我的理解是等于是做了一个api翻译的工作转换的工作,开发起来麻烦一些
http://www.ibm.com/developerworks/cn/cloud/library/cl-vmdeltacloud/
Apache Libcloud
一个Python库,它隐藏了云供应商API之间的差异性,使之能通过统一的API管理不同的云资源,官网做得比较好,各种资料都方便查找
IBM的人用它做过一个样例,一个应用可以同时使用多个云服务商提供的服务,而保持透明性
https://libcloud.readthedocs.org/en/latest/compute/examples.html
Simple Cloud API
IBM、微软、Zend Technologies发起了一个开源项目Simple Cloud API,让程序员在云计算环境中运行一般的应用,和在不需要修改代码来访问云计算环境的情况下,使用PHP语言开发云计算应用程序。