文档章节

01、使用OpenStack4j快速开发对外接口

翰霖学院
 翰霖学院
发布于 2017/07/24 08:59
字数 307
阅读 15
收藏 0

在项目中增加maven依赖包

<dependency>
  <groupId>org.pacesys</groupId>
  <artifactId>openstack4j</artifactId>
  <version>3.0.3</version>
  <classifier>withdeps</classifier>
</dependency>

通过权限认证

import org.openstack4j.api.OSClient.OSClientV3;
import org.openstack4j.openstack.OSFactory;
import org.openstack4j.model.common.Identifier;

# use Identifier.byId("domainId") or Identifier.byName("example-domain")
Identifier domainIdentifier = Identifier.byId("domainId");

# unscoped authentication
# as the username is not unique across domains you need to provide the domainIdentifier
OSClientV3 os = OSFactory.builderV3()
                       .endpoint("http://127.0.0.1:5000/v3")
                       .credentials("admin","sample", domainIdentifier)
                       .authenticate();

# project scoped authentication
OSClientV3 os = OSFactory.builderV3()
                    .endpoint("http://127.0.0.1:5000/v3")
                    .credentials("admin", "secret", Identifier.byName("example-domain"))
                    .scopeToProject(Identifier.byId(projectIdentifier))
                    .authenticate();

# domain scoped authentication
# using the unique userId does not require a domainIdentifier
OSClientV3 os = OSFactory.builderV3()
                    .endpoint("http://127.0.0.1:5000/v3")
                    .credentials("userId", "secret")
                    .scopeToDomain(Identifier.byId(domainIdentifier))
                    .authenticate();

# Scoping to a project just by name isn't possible as the project name is only unique within a domain. # You can either use this as the id of the project is unique across domains OSClientV3 os = OSFactory.builderV3() .endpoint("http://127.0.0.1:5000/v3") .credentials("userId", "secret") .scopeToProject(Identifier.byName(projectName), Identifier.byName(domainName)) .authenticate(); # Or alternatively OSClientV3 os = OSFactory.builderV3() .endpoint("http://127.0.0.1:5000/v3") .credentials("userId", "secret") .scopeToDomain(Identifier.byName(domainName)) .authenticate();

常用模块调用

// Find all Users
List<? extends User> users = os.identity().users().list();
// List all Tenants
List<? extends Tenant> tenants = os.identity().tenants().list();
// Find all Compute Flavors
List<? extends Flavor> flavors = os.compute().flavors().list();
// Find all running Servers
List<? extends Server> servers = os.compute().servers().list();
// Suspend a Server
os.compute().servers().action("serverId", Action.SUSPEND);
// List all Networks
List<? extends Network> networks = os.networking().network().list();
// List all Subnets
List<? extends Subnet> subnets = os.networking().subnet().list();
// List all Routers
List<? extends Router> routers = os.networking().router().list();
// List all Images (Glance)
List<? extends Image> images = os.images().list();
// Download the Image Data
InputStream is = os.images().getAsStream("imageId");

© 著作权归作者所有

共有 人打赏支持
翰霖学院
粉丝 0
博文 67
码字总数 45112
作品 0
济南
高级程序员
私信 提问
【华为】基于OpenStack4j实现云服务(CTS/DMS/KMS/MaaS/SMN)的SDK

【背景】 基于OpenStack4j实现华为云服务(CTS/DMS/KMS/MaaS/SMN)的SDK 定义: 1. OpenStack4j:开源OpenStackSDK项目,提供Java语言的SDK,需要基于此提供华为的SDK扩展。Github: https://g...

华为众包
2017/07/11
0
0
【华为】基于OpenStack4j实现(RDS/AntiDDos)的SDK

【背景】 基于OpenStack4j实现华为云服务(RDS/AntiDDos)的SDK 定义: 1. OpenStack4j:开源OpenStackSDK项目,提供Java语言的SDK,需要基于此提供华为的SDK扩展。Github: https://github.co...

华为众包
2017/07/11
0
0
【华为】基于OpenStack4j实现华为云服务(ELB/DNS/MRS)的SDK

【技术要求】 基于OpenStack4j实现.(java) 【需求文档】 详细见附件。 【项目背景】 基于OpenStack社区的java语言SDK项目OpenStack4j。需要基于此提供华为的SDK扩展。 【应用场景】 详细见附...

华为众包
2017/06/20
1
0
【华为】基于OpenStack4j实现华为云服务(VBS/CES/AS)的SDK

【项目背景】 基于OpenStack社区的SDK项目OpenStack4j。提供Java语言的SDK,需要基于此提供华为的SDK扩展。 【应用场景】 详细见附件工作任务说明书。 【周期规划】 25天(自然日,含验收测试...

华为众包
2017/06/20
1
0

没有更多内容

加载失败,请刷新页面

加载更多

网站老被劫持快照跳转怎么办

最近很多公司的网站被劫持跳转到了bo彩、cai票网站上去,客户从百度点击进去会跳转,直接输入网站的域名不会跳转,网站快照也被劫持成bo彩的内容,site查看网站在百度的收录也出现问题,收录...

网站安全
12分钟前
1
0
给自己灌鸡汤

前言 看极客时间的《数据结构与算法之美》,中间有一篇文章是在说怎么坚持学习的,摘抄一些片段过来,激励自己。 https://time.geekbang.org/column/article/69607 致使你掉队的原因 一个人在...

grace_233
14分钟前
1
0
如何在网络视听行业建一扇内容安全大门?

在人工智能飞速发展的三年里,整个网络视听产业数字化发展速度非常迅猛。大数据作为如今这个时代的产物,正不断推动整个产业的发展。网络视听行业中存在海量的数据,比如视频内容、视频浏览量...

阿里云官方博客
24分钟前
1
0
云安全简史

课程介绍: DT时代我们每个人的生活在不知不觉中与云计算发生了千丝万缕的联系,起床、吃饭、出行、社交、工作、娱乐、购物等大多数应用都在云上,然而安全事件频发时刻在为我们敲响警钟,面对...

mcy0425
25分钟前
2
0
数字IT基础-数据采集总线

摘要: 日志服务是阿里自产自用的产品,在双十一、双十二和新春红包期间承载阿里云/蚂蚁全站、阿里电商板块、云上几千商家数据链路,每日处理来自百万节点几十PB数据,峰值流量达到每秒百GB,...

阿里云云栖社区
28分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部