Shelve Instance 操作详解 - 每天5分钟玩转 OpenStack(38)-阿里云开发者社区

开发者社区> 微服务> 正文

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

简介:

image240.5.png

Instance 被 Suspend 后虽然处于 Shut Down 状态,但 Hypervisor 依然在宿主机上为其预留了资源,以便在以后能够成功 Resume。

如果希望释放这些预留资源,可以使用 Shelve 操作。 Shelve 会将 instance 作为 image 保存到 Glance 中,然后在宿主机上删除该 instance。 下面是 shelve instance 的流程图

image180.png

  1. 向 nova-api 发送请求

  2. nova-api 发送消息

  3. nova-compute 执行操作

下面我们详细讨论每一个步骤。

向 nova-api 发送请求

客户(可以是 OpenStack 最终用户,也可以是其他程序)向API(nova-api)发送请求:“帮我 shelve 这个 Instance”

查看日志 /opt/stack/logs/n-api.log

nova-api 发送消息

nova-api 向 Messaging(RabbitMQ)发送了一条消息:“shelve 这个 Instance” 查看源代码 /opt/stack/nova/nova/compute/api.py,方法是 shelve。

nova-compute 执行操作

查看日志 /opt/stack/logs/n-cpu.log

首先,关闭 instance

然后对 instance 执行 snapshot 操作

成功后,snapshot 生成的 image 会保存在 Glance 上,命名为 <instance name>-shelved

最后删除 instance 在宿主机上的资源

暂停操作成功执行后,instance 的状态变为 Shelved Offloaded,电源状态是 Shut Down

以上就是 Shelve 操作的分析,下一节我们讨论 Unshelve 操作。

本文转自CloudMan6 51CTO博客,原文链接:http://blog.51cto.com/cloudman/1782814


版权声明:本文首发在云栖社区,遵循云栖社区版权声明:本文内容由互联网用户自发贡献,版权归用户作者所有,云栖社区不为本文内容承担相关法律责任。云栖社区已升级为阿里云开发者社区。如果您发现本文中有涉嫌抄袭的内容,欢迎发送邮件至:developer2020@service.aliyun.com 进行举报,并提供相关证据,一经查实,阿里云开发者社区将协助删除涉嫌侵权内容。

分享:
微服务
使用钉钉扫一扫加入圈子
+ 订阅

构建可靠、高效、易扩展的技术基石

其他文章