OpenStack Python API

本文介绍了如何通过Python的client模块和keystoneauth模块轻松调用OpenStack组件的API,提供了一个cinderclient调用Cinder API的示例。
本文为扶艾原创文章,版权所有,禁止转载!

本文来自于微信公众号“扶艾”,欢迎大家关注获取更多精彩内容!

通过python调用openstack组件的api是非常方便的。因为各个组件都有自己的client模块。我们如果要通过python调用openstack的api,也只需要使用它的client模块就行了。下面是一个通过cinderclient调用cinder api的简单例子:

>>> from cinderclient import client
>>> cinder = client.Client('1', $OS_USER_NAME, $OS_PASSWORD, $OS_TENANT_NAME, $OS_AUTH_URL)
>>> cinder.volumes.list()    #获取所有云硬盘信息
[]
>>> myvol = cinder.volumes.create(display_name="test-vol", size=1)  #创建云硬盘
>>> myvol.id
ce06d0a8-5c1b-4e2c-81d2-39eca6bbfb70
>>> cinder.volumes.list()
[<Volume: ce06d0a8-5c1b-4e2c-81d2-39eca6bbfb70>]
>>>myvol.delete

除了上面的方式,还可以通过keystoneauth模块创建客户端

>>> from keystoneauth1 import loading
>>> from keystoneauth1 import session
>>> from cinderclient import client
>>> loader = loading.get_plugin_loader('password')
>>> auth = loader.load_from_options(auth_url=AUTH_URL,
...                                 username=USERNAME,
...                                 password=PASSWORD,
...                                 project_id=PROJECT_ID,
...                                 user_domain_name=USER_DOMAIN_NAME)
>>> sess = session.Session(auth=auth)
>>> cinder = client.Client(VERSION, session=sess)
>>> cinder.volumes.list()
[]

更多精彩内容,OpenStack干货请扫描下方二维码,关注我们微信公众号“扶艾”!
这里写图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值