OpenStack实例Shelve操作深度解析
需积分: 0 110 浏览量
更新于2024-08-04
收藏 204KB DOCX 举报
"38-Shelve Instance 操作详解 1"
在OpenStack环境中,Instance的管理是一项关键任务,其中Shelve Instance是一个高级功能,用于暂时释放实例占用的资源,但保留其状态以便稍后恢复。当一个Instance被Suspend后,它虽然看起来是Shutdown状态,但实际上,Hypervisor仍然会在宿主机上为其保留资源。为了真正释放这些资源,我们可以使用Shelve操作。
Shelve操作的工作流程如下:
1. **向nova-api发送请求**:
用户或程序通过OpenStack API(nova-api)发起请求,要求将Instance Shelve。请求可能通过命令行接口(CLI)或其他编程方式发出。API服务接收到请求后,会在日志文件`/opt/stack/logs/n-api.log`中记录相关信息。
2. **nova-api发送消息**:
nova-api随后通过Messaging系统(通常是RabbitMQ)向Nova Compute节点发送一条消息,指示执行Shelve操作。在`/opt/stack/nova/nova/compute/api.py`的源代码中,可以看到对应的`shelve`方法。
3. **nova-compute执行操作**:
Nova Compute节点接收到消息后,开始处理Shelve请求。首先,它会安全地关闭Instance,然后执行一个快照操作。这个快照会被保存到Glance,以Instance名称加上“-shelved”的后缀作为标识。一旦快照成功创建,原始Instance在宿主机上的所有资源将被删除,包括磁盘映像、网络配置等。
完成Shelve操作后,Instance的状态会更新为ShelvedOffloaded,表明它已被移除,但其数据已存储在Glance中。同时,电源状态显示为ShutDown,意味着Instance不再占用宿主机的计算资源。
Shelve功能对于资源紧张的环境非常有用,比如在非工作时间或者低峰期间,可以将不常使用的Instance Shelve,以节省宝贵的计算资源。一旦需要,通过Unshelve操作可以快速恢复Instance到之前的状态。
在下一部分,我们将深入探讨Unshelve操作,它是Shelve的逆过程,如何从Glance中恢复Instance并重新分配资源到宿主机上。Unshelve同样涉及API交互、消息传递以及Nova Compute的处理,是OpenStack资源管理中的重要一环。
192 浏览量
2022-08-08 上传
2021-02-12 上传
2021-02-18 上传
463 浏览量
2022-06-26 上传
252 浏览量
2020-09-17 上传
![](https://profile-avatar.csdnimg.cn/d0671c2a6202462abe6d3e9abec8b76b_weixin_35782943.jpg!1)
李诗旸
- 粉丝: 32
最新资源
- Node.js项目mmRequest-demo的实践教程
- Matconvnet1.0-beta20:Matlab深度学习工具包深度解析
- GGTabBar:实现IOS多选项卡的简单案例源码
- 省市县镇村五级数据导入数据库操作指南
- MFC制作的洗牌系统:界面优化体验
- Android Studio 邮件发送功能实现演示
- 彻底清理旧.NET框架的免费工具下载
- MATLAB实现一元线性回归算法详解
- 掌握JavaScript的课堂简单练习
- SDN中的POX控制器负载均衡策略代码
- Swift实现的点击弹出动态菜单效果教程
- SSM框架与ORACLE数据库整合教程
- Windows系统下的Redis服务部署指南
- WinWebMail v3.8:邮件服务器的高效解决方案与聚类分析算法
- 免费获取虚拟版Visual C++ 6.0 Repack版下载
- 2022年美赛备资料精选集合