开发者社区> 问答> 正文

分享一个阿里云API的开源Java封装库


阿里云今年4月份的时候更新了ECS API , 提供了完整的API 接口, 用户在管理控制台能做的操作通过API也都能实现了。 基于这个API,用户可以实现自动化管理和部署功能。 但是,阿里云官方只提供了简单的Python和Java例子,没有完整的SDK。

我们在开发Fit2Cloud for 阿里云(http://aliyun.fit2cloud.com/)的过程中,需要调用ECS API进行各种操作。 我们的后端采用的是Java语言,所以我们使用java语言完整封装了ECS的API。我们相信云计算的使用哲学是通过API(或者基于API的第三方工具)来动态管理资源,因此我们决定将我们封装好的ECS API Java SDK开源出去,希望对别人有帮助。

项目的Github地址是:https://github.com/fit2cloud/aliyun-api-java-wrapper , 欢迎大家使用。 大致的使用步骤如下:

第一步:引用Jar包

方法1:使用Maven
<repositories>
    <repository>
        <id>fit2cloud</id>
        <url>http://repository.fit2cloud.com/content/groups/public/</url>
        <releases>
            <enabled>true</enabled>
        </releases>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>  
</repositories>
<dependency>
  <groupId>com.fit2cloud</groupId>
  <artifactId>aliyun-api-java-wrapper</artifactId>
  <version>1.0</version>
</dependency>
方法2:直接下载Jar包


下载链接: http://repository.fit2cloud.com/service/local/repo_groups/public/content/com/fit2cloud/aliyun-api-java-wrapper/1.0/aliyun-api-java-wrapper-1.0-jar-with-dependencies.jar
  
第二步:调用Aliyun ECS API  
String ACCESS_KEY_ID = "你的阿里云API Access key";
String ACCESS_KEY_SECRET = "你的阿里云API Secret key";
ECSClient client = new ECSClient(new AliyunCredentials(ACCESS_KEY_ID, ACCESS_KEY_SECRET));
ListRegionsResponse response = client.listRegions();
目前我们仅封装了ECS相关API,包括

  • listRegions: 获取数据中心列表
  • listZones: 获取Zone列表
  • listImages: 获取镜像列表
  • listSecurityGroups: 获取安全组列表
  • createSecurityGroup: 创建安全组
  • authorizeSecurityGroup: 为完全组添加规则
  • revokeSecurityGroup: 取消规则
  • listSecurityPermissions: 列出安全组的规则
  • deleteSecurityGroup: 删除安全组
  • joinSecurityGroup: 将虚机加入安全组
  • listInstanceType: 列出虚机类型
  • createInstance: 创建虚机
  • getInstance: 获取虚机详细信息
  • listInstances: 获取虚机列表
  • startInstance: 启动虚机
  • allocatePublicIp: 为虚机分配公有IP
  • rebootInstance: 重启虚机
  • stopInstance: 停止虚机
  • deleteInstance: 删除虚机
  • addDisk: 为虚机增加数据盘
  • listDisks: 列出虚机的磁盘列表

API调用都会有两类异常:
  • AliyunClientException: 客戶端錯誤,比如网络问题
  • AliyunServiceException: 服务器端错误,阿里云会返回错误代码和具体消息

后续我们还会陆续增加对SLB、OSS等其他阿里云服务的API支持。 敬请期待!
目前支持的ECS API版本为: API 版本 2013-01-10

展开
收起
fit2cloud 2014-08-06 15:42:24 13212 0
5 条回答
写回答
取消 提交回答
  • Re分享一个阿里云API的开源Java封装库
    除非是代理合作商 才会去用API对接自己的控制台,普通用户用来基本没用
    2014-09-28 12:11:51
    赞同 展开评论 打赏
  • Re分享一个阿里云API的开源Java封装库
    谁会花大量的时间调用你的接口。。还不如接几个项目。。
    2014-09-26 22:56:26
    赞同 展开评论 打赏
  • 好高级的感觉,第一次听说api,
    2014-09-25 11:51:56
    赞同 展开评论 打赏
  • Re分享一个阿里云API的开源Java封装库
    好,强烈支持
    2014-09-25 09:10:02
    赞同 展开评论 打赏
  • 不顶不舒服斯基
    2014-08-06 17:20:53
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Boot2.0实战Redis分布式缓存 立即下载
CUDA MATH API 立即下载
API PLAYBOOK 立即下载