对于云中的资源我们常有例如以下需求

1,用户对临时不使用的VM进行停止操作。以节省费用。

2。对于长时间未使用的VM。管理员想要从hypervisor层面上清除它们从而节省主机资源。

3。但之前的停止VM,VM仍旧会占用hypervisor上的资源,而且还须要在主机上占用CPU/内存配额来保证重新启动动的成功。

以上问题当然也能够通过先做一个快照镜像而且重创VM来解决,可是它会又一次分配一个IP,而且之前的VM仍旧存在,而快照、IP资源也相同会计费

nova shelve 功能非常好满足了需求,unshelve 后的虚拟机信息和shelve 之前保持不变,原理就是做成镜像上传到glance但保留ip,虚拟机名称。元数据等信息

shelve (搁置)、shelve-offload (强制搁置)、unshelve (解搁置)

眼下还没有集成到horizon 上,仅仅能通过命令或api 使用

sm@controller:~$ nova help shelve
usage: nova shelve <server> Shelve a server. Positional arguments:
<server> Name or ID of server.

搁置一个虚拟机

先查看资源占用

运行 nova shelve mq_ha-4b1c2010-3a9e-42b8-971d-86118c108f2d

sm@controller:~$ nova shelve mq_ha-4b1c2010-3a9e-42b8-971d-86118c108f2d
sm@controller:~$ nova list --all-tenant --host network
+--------------------------------------+--------------------------------------------+--------+-------------------------------+-------------+---------------------------+
| ID | Name | Status | Task State | Power State | Networks |
+--------------------------------------+--------------------------------------------+--------+-------------------------------+-------------+---------------------------+
| 2cc2c651-f948-429e-9d5d-fbe8532efe39 | ArcGIS 10.3.1 for Desktop-2 | ACTIVE | - | Running | sharednet1=192.168.12.99 |
| a61baff0-89e7-420d-8bd8-8075b80f05db | ArcGIS 10.3.1 for Server | ACTIVE | - | Running | sharednet1=192.168.12.101 |
| 300f0dc6-ac1f-4104-a52f-2132172a3cee | JobWorker | ACTIVE | - | Running | sharednet1=192.168.12.140 |
| ee91f3c0-ae50-4377-8ecf-59d59bc2e08b | RabbitMQ | ACTIVE | - | Running | sharednet1=192.168.12.138 |
| 45d77d2b-723f-40c8-a953-13f886a317f8 | hadoop3 | ACTIVE | - | Running | sharednet1=192.168.12.127 |
| 76d401f0-8442-4317-86e3-46e14e5efc64 | hadoop4 | ACTIVE | - | Running | sharednet1=192.168.12.132 |
| 0b298f89-b253-4df4-9184-148e019e4541 | hadoop5 | ACTIVE | - | Running | sharednet1=192.168.12.133 |
| 4b1c2010-3a9e-42b8-971d-86118c108f2d | mq_ha-4b1c2010-3a9e-42b8-971d-86118c108f2d | ACTIVE | shelving_image_pending_upload | Running | sharednet1=192.168.12.130 |
+--------------------------------------+--------------------------------------------+--------+-------------------------------+-------------+---------------------------+

搁置完毕

sm@controller:~$ nova list --all-tenant --host network
+--------------------------------------+-----------------------------+--------+------------+-------------+---------------------------+
| ID | Name | Status | Task State | Power State | Networks |
+--------------------------------------+-----------------------------+--------+------------+-------------+---------------------------+
| 2cc2c651-f948-429e-9d5d-fbe8532efe39 | ArcGIS 10.3.1 for Desktop-2 | ACTIVE | - | Running | sharednet1=192.168.12.99 |
| a61baff0-89e7-420d-8bd8-8075b80f05db | ArcGIS 10.3.1 for Server | ACTIVE | - | Running | sharednet1=192.168.12.101 |
| 300f0dc6-ac1f-4104-a52f-2132172a3cee | JobWorker | ACTIVE | - | Running | sharednet1=192.168.12.140 |
| ee91f3c0-ae50-4377-8ecf-59d59bc2e08b | RabbitMQ | ACTIVE | - | Running | sharednet1=192.168.12.138 |
| 45d77d2b-723f-40c8-a953-13f886a317f8 | hadoop3 | ACTIVE | - | Running | sharednet1=192.168.12.127 |
| 76d401f0-8442-4317-86e3-46e14e5efc64 | hadoop4 | ACTIVE | - | Running | sharednet1=192.168.12.132 |
| 0b298f89-b253-4df4-9184-148e019e4541 | hadoop5 | ACTIVE | - | Running | sharednet1=192.168.12.133 |
+--------------------------------------+-----------------------------+--------+------------+-------------+---------------------------+

查看资源占用

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" width="900" height="295">

查看镜像

nova shelve 的使用的更多相关文章

  1. nova shelve

    当一个虚机不需要使用的时候,可以将其 shelve 起来.该操作会创建该虚机的一个快照并传到 Glance 中,然后在 Hypervisor 上将该虚机删除,从而释放其资源. 其主要过程为: dest ...

  2. openstack之虚拟机管理命令

    在控制节点上建hzb-openrc.sh export OS_PROJECT_DOMAIN_ID=default export OS_USER_DOMAIN_ID=default export OS_ ...

  3. Shelve Instance 操作详解 - 每天5分钟玩转 OpenStack(38)

    Instance 被 Suspend 后虽然处于 Shut Down 状态,但 Hypervisor 依然在宿主机上为其预留了资源,以便在以后能够成功 Resume. 如果希望释放这些预留资源,可以使 ...

  4. 1 张图秒懂 Nova 16 种操作 - 每天5分钟玩转 OpenStack(44)

    前面我们讨论了 Instance 的若干操作,有的操作功能比较类似,也有各自的适用场景,现在是时候系统地总结一下了. 如上图所示,我们把对 Instance 的管理按运维工作的场景分为两类:常规操作和 ...

  5. Nova 操作汇总(限 libvirt 虚机) [Nova Operations Summary]

    本文梳理一下 Nova 主要操作的流程. 0. Nova REST-CLI-Horizon 操作对照表 Nova 基本的 CRUD 操作和 extensions: # 类别 Nova V2 REST ...

  6. nova

    chen@controller:~$ nova usage: nova [--version] [--debug] [--os-cache] [--timings]             [--ti ...

  7. O044、一张图秒懂 Nova 16种操作

    参考https://www.cnblogs.com/CloudMan6/p/5565757.html    

  8. Nova PhoneGap框架 第一章 前言

    Nova PhoneGap Framework诞生于2012年11月,从第一个版本的发布到现在,这个框架经历了多个项目的考验.一直以来我们也持续更新这个框架,使其不断完善.到现在,这个框架已比较稳定了 ...

  9. Nova PhoneGap框架 总结

    Nova PhoneGap Framework 是完全针对PhoneGap应用程序量身定做的,在这个框架下开发的应用程序很容易实现高质量的代码,很容易让程序拥有很好的性能和用户体验. 在经历了多个项目 ...

随机推荐

  1. spark中的广播变量broadcast

    Spark中的Broadcast处理 首先先来看一看broadcast的使用代码: val values = List[Int](1,2,3) val broadcastValues = sparkC ...

  2. 2015.04.19,外语,读书笔记-《Word Power Made Easy》 11 “如何辱骂敌人” SESSION 29

    1.the French drillmaster 法国国王路易十五手下的Jean Martinet将军,是Infantry(['infәntri] n. 步兵)的检察长,是一个非常严格的drillma ...

  3. Blur 算法 (Unity 5.0 Shader)

    一:简单 Blur 算法 一个像素的颜色值由其邻近的若干像素和自己的颜色值的平均值重新定义,以此达到模糊的效果. 如下图,红色的像素点的值将由它和它周围的24个像素的平均值重新定义.计算的范围一般由一 ...

  4. tomat遇到的一些错误

    资料链接:启动tomcat一闪而过的问题

  5. 0x18 总结与练习

    这一章不太满意啊.. 还是有点痛苦,但就是做的挺慢啊... 1.就是例题 2.括号画家 感觉这种提高组类型的细节题都没什么信心啊,fail了几次才A #include<cstdio> #i ...

  6. C# First and FirstOrDefault 方法详解

    在工作中我们经常会遇到有关LINQ 的一些问题.这时我们就用到lambda 表达式. 下面是我在工作遇到的. First  and FirstOrDefault  这两方法.我今天把它记录一下. 需要 ...

  7. (转)IOS http请求的get 和 post的请求的区别

    从表面的意思看get 和 post的区别get就是获取数据,post就是发送数据.这个是误区.其实两者都可以的,在IOS向服务器发送请求里面可以带参数. 那么这些误区是怎么出现的呢?先看看一下对htt ...

  8. (转)Django学习之 第二章:Django快速上手

    安装Python  安装Django非常容易.因为Django可以运行在任何可以运行Python的环境中,所以可以以多种方式进行配置. 在本章我们将尝试覆盖几种常见的Django安装场景. Djang ...

  9. Aspx小记

    关闭按钮 protected void Close_Click(object sender, EventArgs e) { //Page.RegisterStartupScript("clo ...

  10. Dynamic programming language

    动态改变运行时结构 Dynamic programming language, in computer science, is a class of high-level programming la ...