[root@controller ~]# cat flavor.py
from novaclient import client as nvclient
from novaclient import utils
from novaclient import base from keystoneauth1.identity import v3
from keystoneauth1 import session
from keystoneclient.v3 import client import time
import sys
import keystoneclient.v3.client as ksclient
from neutronclient.v2_0 import client as netclient # Keystone get project_id
auth = v3.Password(user_domain_name='Default',
username='admin',
password='openstack',
project_domain_name='Default',
project_name='admin',
auth_url='http://controller:35357/v3')
sess = session.Session(auth=auth)
keystone = client.Client(session=sess) projects_list = keystone.projects.list()
for o in projects_list:
name = getattr(o, "name", '')
if name == "admin":
project_id = getattr(o, "id", '')
break # Nova
nova = nvclient.Client('2.42', 'admin', 'openstack', project_id, 'http://controller:5000/v2.0') def flavors_list():
flavors_list = nova.flavors.list()
print "================ list flavor =============="
for data in flavors_list:
print "ID :" + data.id
print "Name:" + data.name
print "CPU :" + str(data.vcpus)
print "MEM :" + str(data.ram)
print "Disk:" + str(data.disk)
print "==========================================="
print "" def flavors_create(name, ram, vcpus, disk):
print "=============== create flavor ============="
flavors_create = nova.flavors.create(name, ram, vcpus, disk, flavorid="auto",
ephemeral=0, swap=0, rxtx_factor=1.0, is_public=True)
print flavors_create
print "=================== end ================="
print "" def set_key_flavor(name):
print "============== set key flavor ============="
key = {'hw:cpu_cores':'', 'hw:cpu_sockets':''}
flavors_list = nova.flavors.list()
for data in flavors_list:
if data.name == name:
print data
data.set_keys(key)
print "=================== end ================="
print "" def flavors_delete(name):
print "=============== delete flavor ============="
flavors_list = nova.flavors.list()
for data in flavors_list:
if data.name == name:
print data
nova.flavors.delete(data)
print "=================== end =================" flavors_list()
flavors_create(name='flavor_demo', ram=4096, vcpus='', disk=0)
set_key_flavor(name='flavor_demo')
flavors_list()
flavors_delete(name='flavor_demo')

运行效果:

[root@controller ~]# python flavor.py
================ list flavor ==============

=============== create flavor =============
<Flavor: flavor_demo>
=================== end =================

============== set key flavor =============
<Flavor: flavor_demo>
=================== end =================

[root@controller ~]# vim flavor.py
[root@controller ~]# python flavor.py
================ list flavor ==============

=============== create flavor =============
<Flavor: flavor_demo>
=================== end =================

============== set key flavor =============
<Flavor: flavor_demo>
=================== end =================

================ list flavor ==============
ID :c2c99abd-82d2-4ef5-9656-10bfaca5b8e8
Name:flavor_demo
CPU :4
MEM :4096
Disk:0
===========================================

=============== delete flavor =============
<Flavor: flavor_demo>
=================== end =================

Nova 通过Python API 查询,创建,删除flavor的更多相关文章

  1. python 读取 查询 更新 删除 sql2008 类及应用

    import pymssql class MSSQL: def __init__(self,host,user,pwd,db): self.host = host self.user = user s ...

  2. Python mysql-表的创建,删除和更新

    2017-09-06 20:59:56 数据库的创建 CREATE DATEBASE <数据库的名称> 表的创建 CREATE TABLE <表名> (<列名1> ...

  3. Openstack python api 学习文档 api创建虚拟机

    Openstack python api 学习文档 转载请注明http://www.cnblogs.com/juandx/p/4953191.html 因为需要学习使用api接口调用openstack ...

  4. 手把手教你使用C#操作SQLite数据库,新建数据库,创建表,插入,查询,删除,运算符,like

    目录: 一.新建项目,添加引用 二.创建数据库 三.创建表 四.插入数据  五.查询数据  六.删除数据  七.运算符 八.like语句 我的环境配置:windows 64,VS,SQLite(点击下 ...

  5. elasticsearch 中文API 基于查询的删除(九)

    基于查询的删除API 基于查询的删除API允许开发者基于查询删除一个或者多个索引.一个或者多个类型.下面是一个例子. import static org.elasticsearch.index.que ...

  6. Python API:openstack

    OpenStack 是一个越来越流行的.用于部署基础架构即服务 (IaaS) 云的开源解决方案.OpenStack 附带了一个仪表板 Web 应用程序,非常适合执行手动任务,比如启动单个虚拟机 (VM ...

  7. 《Spark Python API 官方文档中文版》 之 pyspark.sql (一)

    摘要:在Spark开发中,由于需要用Python实现,发现API与Scala的略有不同,而Python API的中文资料相对很少.每次去查英文版API的说明相对比较慢,还是中文版比较容易get到所需, ...

  8. 初识Django —Python API接口编程入门

    初识Django —Python API接口编程入门 一.WEB架构的简单介绍 Django是什么? Django是一个开放源代码的Web应用框架,由Python写成.我们的目标是用Python语言, ...

  9. The novaclient Python API

    The novaclient Python API Usage First create a client instance with your credentials: >>> f ...

随机推荐

  1. python中字典的比较

    今天碰到一个字典比较的问题,就是比较两个字典的大小,其实这个用的不多,用处也没多少,但是还是记录一下. 字典的比较顺序如下: 1.先比较字典的元素的个数,那个多,就哪个大: 2.比较字典的键,在比较字 ...

  2. tensorflow 基本函数(1.tf.split, 2.tf.concat,3.tf.squeeze, 4.tf.less_equal, 5.tf.where, 6.tf.gather, 7.tf.cast, 8.tf.expand_dims, 9.tf.argmax, 10.tf.reshape, 11.tf.stack, 12tf.less, 13.tf.boolean_mask

    1.  tf.split(3, group, input)  # 拆分函数    3 表示的是在第三个维度上, group表示拆分的次数, input 表示输入的值 import tensorflow ...

  3. HTTP --meta详解

    meta是html语言head区的一个辅助性标签.也许你认为这些代码可有可无.其实如果你能够用好meta标签,会给你带来意想不到的效果,meta标签的作用有:搜索引擎优化(SEO),定义页面使用语言, ...

  4. 下拉列表插件bootstrap-select使用实例

    网页实例 http://www.jq22.com/yanshi302 使用bootstrap-select插件来实现下来菜单搜索匹配功能,如图 实现代码如下 <html> <head ...

  5. 7.25 6figting!

    TEXT 82 Proton 马来西亚宝腾汽车 A fork in the road 何去何从?(陈继龙编译) Nov 30th 2006 | HONG KONG From The Economist ...

  6. linux之cut

    [linux之cut] -b:字节 -c:字符 -d:自定义域 -f:域范围 参考:http://wenku.baidu.com/view/9399bc8383d049649b66588b.html

  7. mybatis调用自定义函数

    <select id="getFunction" parameterType="int" resultType="string"> ...

  8. http://classworlds.codehaus.org/apiusage.html

    API Usage The Java API can be used to create new realms and connect realms together through importat ...

  9. JavaScript 语法总结

    1. 不能为基本类型变量添加属性和方法. 如果添加了,那么也是undefined的. var str = "a string"; str.attr = "attr&quo ...

  10. Redis安装系统服务1073错误

    报错:D:\ProgramFiles\redis>redis-server.exe --service-install redis.windows.conf --loglevel verbose ...