rtwo
====
A unified interface into multiple cloud providers.
Built on top of Apache libcloud with support for modern OpenStack. Also supports legacy Eucalyptus 2.x and AWS.
# Install #
pip install rtwo
## Or from source ##
```bash
pip install -e git://github.com/iPlantCollaborativeOpenSource/rtwo#egg=rtwo
```
# Use #
```python
In [1]: import rtwo
In [2]: from rtwo.provider import OSProvider
In [3]: from rtwo.identity import OSIdentity
In [4]: from rtwo.driver import OSDriver
In [5]: from rtwo.accounts.openstack import AccountDriver
In [6]: osp = OSProvider()
In [7]: ad = AccountDriver()
In [8]: ad.create_account("awesomeo")
Out[8]:
(<User {u'email': u'awesomeo@iplantcollaborative.org', u'tenantId': u'97dfaaebb0d943baa0cfa7cbd3bf24d5', u'enabled': True, u'name': u'awesomeo', u'id': u'
3d3ca254e7054fdcaa54f473e4d5b59f'}>,
'yourpassword',
<Tenant {u'enabled': True, u'description': None, u'name': u'awesomeo', u'id': u'97dfaaebb0d943baa0cfa7cbd3bf24d5'}>)
In [9]: osi = OSIdentity(osp, key=OPENSTACK_ADMIN_KEY, secret=OPENSTACK_ADMIN_SECRET, user="awesomeo", auth_url="http://openstack-server.org:port/v2.0", password=ad.hashpass("awesomeo"), region_name="ValhallaRegion", ex_tenant_name="awesomeo", username="awesomeo")
In [19]: osdriver = OSDriver(osp, osi)
In [11]: sizes = osdriver.list_sizes()
In [12]: machines = osdriver.list_machines()
In [13]: osdriver.create_instance(name="Lame.", image=machines[-1], size=sizes[1])
Out[13]: <class 'rtwo.instance.OSInstance'> {'name': 'Lame.', 'ip': None, 'machine': {'alias': '7819f88b-b335-449d-b17f-ed3af350c918', 'provider': 'OpenStack', 'id': '7819f88b-b335-449d-b17f-ed3af350c918', 'name': 'Ubuntu 12.04 NoGui 4GB 64-bit bare'}, 'alias': '2b3a1021-aaed-439f-a6b6-5e6f1a9d1fd5', 'provider': 'OpenStack', 'id': '2b3a1021-aaed-439f-a6b6-5e6f1a9d1fd5', 'size': {'alias': '2', 'bandwidth': None, 'disk': 10, 'name': 'm1.small', 'price': 0.0, 'ram': 2048, 'id': 'm1.small', 'cpu': 1}}
In [14]: osdriver.list_instances()
Out[14]: [<class 'rtwo.instance.OSInstance'> {'name': 'Lame.', 'ip': None, 'machine': {'alias': '7819f88b-b335-449d-b17f-ed3af350c918', 'provider': 'OpenStack', 'id': '7819f88b-b335-449d-b17f-ed3af350c918', 'name': 'Ubuntu 12.04 NoGui 4GB 64-bit bare'}, 'alias': '2b3a1021-aaed-439f-a6b6-5e6f1a9d1fd5', 'provider': 'OpenStack', 'id': '2b3a1021-aaed-439f-a6b6-5e6f1a9d1fd5', 'size': {'alias': '2', 'bandwidth': None, 'disk': 10, 'name': 'm1.small', 'price': 0.0, 'ram': 2048, 'id': 'm1.small', 'cpu': 1}}]
```
# License
See LICENSE file.
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
共45个文件
py:31个
txt:5个
pkg-info:2个
资源分类:Python库 所属语言:Python 资源全名:rtwo-0.4.8.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
资源详情
资源评论
资源推荐
收起资源包目录
rtwo-0.4.8.tar.gz (45个子文件)
rtwo-0.4.8
MANIFEST.in 58B
PKG-INFO 4KB
rtwo
models
volume.py 2KB
provider.py 9KB
identity.py 2KB
__init__.py 0B
size.py 4KB
instance.py 8KB
machine.py 5KB
accounts
__init__.py 0B
openstack.py 6KB
test
test_openstack.py 2KB
__init__.py 0B
drivers
common.py 7KB
eucalyptus_user.py 9KB
openstack_user.py 19KB
openstack_network.py 22KB
eucalyptus.py 14KB
__init__.py 0B
irods_store.py 17KB
openstack_facade.py 65KB
aws.py 4KB
meta.py 16KB
compute.py 280B
driver.py 25KB
mixins
driver.py 3KB
__init__.py 0B
__init__.py 159B
linktest.py 4KB
settings.py 1KB
version.py 4KB
exceptions.py 850B
rtwo.egg-info
PKG-INFO 4KB
requires.txt 281B
SOURCES.txt 926B
top_level.txt 5B
dependency_links.txt 1B
pbr.json 47B
LICENSE 2KB
CHANGES 275B
setup.cfg 59B
requirements.txt 291B
AUTHORS 92B
setup.py 4KB
README.md 2KB
共 45 条
- 1
挣扎的蓝藻
- 粉丝: 13w+
- 资源: 15万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0