Openstack python api 学习文档 api创建虚拟机
Openstack python api 学习文档
转载请注明http://www.cnblogs.com/juandx/p/4953191.html
因为需要学习使用api接口调用openstack,所以上一篇写了一些使用openstack的纯api调用的方法,
但是openstack还提供了更好的python的api,只需要python的包即可,感觉更好使用。
对于compute的api,包是放在了/usr/lib/python2.7/site-packages/novaclient/目录,所以直接看看代码也蛮好的。
下面演示使用api调取信息:
import os
import time
from novaclient.v2 import client nova = client.Client('username','password','project_name','http://controller_ip:5000/v2.0')
#print nova.servers.list()
#print nova.flavors.list()
#print nova.images.list() # 镜像,flavor,网络肯定都是之前已经自己创建好了的
image = nova.images.find(name='cirros-0.3.4-x86_64')
flavor = nova.flavors.find(name='m1.medium')
network = nova.networks.find(label='int') #这里选择一个名叫int的网段 # launch a instance
# 注意,这里网络的参数和v1_1版本的不一样,以前是传入network就可以,现在是创建网卡,当然也可以创建多个网卡
server = nova.servers.create(name="test-vm", image=image, flavor=flavor,nics=[{'net-id':network.id}]) # 创建snapshot, 这里传入虚机和要创建的名字两个参数即可,我加了一个时间来命名。
image = nova.servers.create_image(server, image_name=server.name + time.strftime("_%Y%m%d",time.localtime())) # 分配floating ip
nova.floating_ip_pools.list()
#得到[<FloatingIPPool: name=ext>],这是我之前创建的一个名叫ext的floating_ip的pool #取得一个ip
floating_ip = nova.floating_ips.create(pool='ext') #分配floating_ip
server.add_floating_ip(floating_ip) #删除floating_ip
server.remove_floating_ip(floating_ip) # 删除虚拟机
server.delete()
使用keystone
from keystoneclient.v2_0 import client as ks2client keystone2 = ks2client.Client(username='admin',password='openstack1',tenant_name='service',auth_url='http://9.112.233.24:5000/v2.0') user = keystone2.users.find(id='asdfdsf-dads978s-sadfsdfsdf-2323')
其中主要参数的解释大家参照最后文档中python api的文档即可,这里仅作简单介绍,希望大家有问题多多指正。
参考文档:
openstack python api : http://developer.openstack.org/api-ref.html http://docs.openstack.org/developer/python-novaclient/
Openstack python api 学习文档 api创建虚拟机的更多相关文章
- Openstack api 学习文档 & restclient使用文档
Openstack api 学习文档 & restclient使用文档 转载请注明http://www.cnblogs.com/juandx/p/4943409.html 这篇文档总结一下我初 ...
- python相关学习文档收集
bs4中文文档: 用于网页爬虫 https://beautifulsoup.readthedocs.io/zh_CN/v4.4.0/ GitLab-CI 从安装到差点放弃 https://segm ...
- golang学习笔记7 使用beego swagger 实现API自动化文档
golang学习笔记7 使用beego swagger 实现API自动化文档 API 自动化文档 - beego: 简约 & 强大并存的 Go 应用框架https://beego.me/doc ...
- 构建标准OpenStack API接口文档
1.构建API接口文档标准参考: http://docs.openstack.org/contributor-guide/api-guides.html 2.构建API接口文档步骤参考下面的Patch ...
- Api接口文档管理工具,你知道哪些呢?
上周看到有人在我的Github开源项目中提了个issue,说是否考虑接入swagger.那今天我就用swagger与其他接口文档工具做对比,同时说说Api接口文档工具的那点事.如今,在前后端分离开发的 ...
- Swagger解决你手写API接口文档的痛
首先,老规矩,我们在接触新事物的时候, 要对之前学习和了解过的东西做一个总结. 01 痛 苦 不做.不行 之前,前后端分离的系统由前端和后端不同的编写,我们苦逼的后端工程师会把自己已经写完的A ...
- CYQ.Data 轻量数据层之路 优雅V1.4 现世 附API帮助文档(九)
继上一版本V1.3版本发布到现在,时隔N天了:[V1.3版本开源见:CYQ.Data 轻量数据层之路 华丽V1.3版本 框架开源] N天的时间,根据各路网友的反映及自身的想法,继续修改优化着本框架,力 ...
- asp.net web api 构建api帮助文档
1 概要 创建ASP.NET Web Api 时模板自带Help Pages框架. 2 问题 1)使用VS创建Web Api项目时,模板将Help Pages框架自动集成到其中,使得Web Api项目 ...
- RESTful API接口文档规范小坑
希望给你3-5分钟的碎片化学习,可能是坐地铁.等公交,积少成多,水滴石穿,谢谢关注. 前后端分离的开发模式,假如使用的是基于RESTful API的七层通讯协议,在联调的时候,如何避免配合过程中出现问 ...
随机推荐
- JS基础---->js中ajax的使用
AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术.今天我们就简单的学习一下ajax的使用及过程. ajax的使用 先贴出大致的代码,是请求本地的一个servlet,返回json格 ...
- 本学期3个sprint的团队贡献分
第一次冲刺贡献分 组员 贡献分 103马嘉诚 28 143李新佳 22 145马文其 19 120韩智豪 16 147黄鸿浩 15 第二次冲刺贡献分 组员 贡献分 103马嘉诚 23 143李新佳 2 ...
- TinyOS和Deluge的安装模拟(一)
介绍 TinyOS是一款嵌入式操作系统,相信做无线传感器网络开发的同志们都不陌生.同类型的系统有不少,但是TinyOS的应用较之其他系统更为广泛.TinyOS 1.x版本和2.x版本是目前主要的两个分 ...
- LeetCode - 42. Trapping Rain Water
42. Trapping Rain Water Problem's Link ------------------------------------------------------------- ...
- 2015年百度之星初赛(1) --- A 超级赛亚ACMer
超级赛亚ACMer Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Problem D ...
- 重构第11天 使用策略代替Switch(Switch to Strategy)
理解:策略就是平常设计模式中所说的策略模式.因为当你有一个庞大的switch方法的时候,每一次新加一个条件,都要去修改这个方法,这样耦合性太高,不易维护也不易扩展.这样我们就可以使用策略的设计模式,使 ...
- C#设计模式——职责链模式(Chain Of Responsibility Pattern)
一.概述 在软件开发中,某一个对象的请求可能会被多个对象处理,但每次最多只有一个对象处理该请求,对这类问题如果显示指定请求的处理对象,那么势必会造成请求与处理的紧耦合,为了将请求与处理解耦,我们可以使 ...
- Symantec Backup Exec恢复数据库
Insus.NET是使用Symantec Backup Exec来备份数据以及一些服务器文件.下面步骤是怎样恢复一个数据库.当我们数据库有问题,或是想恢复某一天的数据,得需要操作数据恢复Restore ...
- 较友好的Web文件下载用户体验实例
1.实际需求整理与分析 该问题起源于为公司做的一个B/S架构的游戏静态数据管理工具,其中有一个需求是点击页面上的一些按钮要下载文件,可能根据按钮类型的不同需要转换下载.json..zip..xlsx等 ...
- html5 canvas雨点打到窗玻璃动画
html5 canvas雨点打到窗玻璃动画 HTML5下雨效果 效果预览:http://hovertree.com/texiao/html5/4.htm 以下是代码: <!doctype htm ...