Rebuild Instance 操作详解 - 每天5分钟玩转 OpenStack(37)
2016-05-23 00:00
423 查看
摘要: 上一节我们讨论了 snapshot,snapshot 的一个重要作用是对 instance 做备份。
如果 instance 损坏了,可以通过 snapshot 恢复,这个恢复的操作就是 Rebuild。
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901711924037539.jpg)
上一节我们讨论了 snapshot,snapshot 的一个重要作用是对 instance 做备份。
如果 instance 损坏了,可以通过 snapshot 恢复,这个恢复的操作就是 Rebuild。
Rebuild 会用 snapshot 替换 instance 当前的镜像文件,同时保持 instance 的其他诸如网络,资源分配属性不变。
下面是 rebuild instance 的流程图
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901712150009866.jpg)
向 nova-api 发送请求
nova-api 发送消息
nova-compute 执行操作
下面我们详细讨论每一个步骤。
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901712325097150.jpg)
选择用于恢复的 image
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901712434056770.jpg)
查看日志/opt/stack/logs/n-api.log
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901712552099559.jpg)
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901712706086564.jpg)
关闭 instance
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901712846050959.jpg)
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901713025062085.jpg)
下载新的 image,并准备 instance 的镜像文件
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901713296027212.jpg)
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901713415033013.jpg)
启动 instance
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901713559049304.jpg)
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901713662096620.jpg)
Rebuild 后,GUI 显示 instance 已经使用新的 image
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901713811043680.jpg)
以上就是 Rebuild 操作的分析,下一节我们讨论 Shelve 操作。
如果 instance 损坏了,可以通过 snapshot 恢复,这个恢复的操作就是 Rebuild。
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901711924037539.jpg)
上一节我们讨论了 snapshot,snapshot 的一个重要作用是对 instance 做备份。
如果 instance 损坏了,可以通过 snapshot 恢复,这个恢复的操作就是 Rebuild。
Rebuild 会用 snapshot 替换 instance 当前的镜像文件,同时保持 instance 的其他诸如网络,资源分配属性不变。
下面是 rebuild instance 的流程图
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901712150009866.jpg)
向 nova-api 发送请求
nova-api 发送消息
nova-compute 执行操作
下面我们详细讨论每一个步骤。
向 nova-api 发送请求
客户(可以是 OpenStack 最终用户,也可以是其他程序)向 API(nova-api)发送请求:“Rebuild 这个 Instance”![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901712325097150.jpg)
选择用于恢复的 image
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901712434056770.jpg)
查看日志/opt/stack/logs/n-api.log
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901712552099559.jpg)
nova-api 发送消息
nova-api 向 Messaging(RabbitMQ)发送了一条消息:“Rebuild 这个 Instance” 源代码在 /opt/stack/nova/nova/compute/api.py,方法是 rebuild。![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901712706086564.jpg)
nova-compute 执行操作
查看日志 /opt/stack/logs/n-cpu.log关闭 instance
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901712846050959.jpg)
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901713025062085.jpg)
下载新的 image,并准备 instance 的镜像文件
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901713296027212.jpg)
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901713415033013.jpg)
启动 instance
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901713559049304.jpg)
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901713662096620.jpg)
Rebuild 后,GUI 显示 instance 已经使用新的 image
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901713811043680.jpg)
以上就是 Rebuild 操作的分析,下一节我们讨论 Shelve 操作。
![](http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160522-1463901713918085613.jpg)
相关文章推荐
- 【2016杭电女生赛1010】【旅行商问题DP + 贪心】Ingress 最多走L距离 最多hackK次 的最大得分
- Arduino 101 IMU测试及问题
- bzoj4059【Cerc2012】Non-boring sequences
- Windows Server 2012 GUI与Core的切换
- hdu 2604 Queuing(矩阵优化DP)
- Android UI(Layouts)-RelativeLayout详解
- 5. soapui 测试
- 30天C#基础巩固------this,base,string中的方法,StringBuilder性能
- android studio 编译出现Instant Run requires 'tools|Android|Enable adb integration' to be enabled错误解决方式'
- UI基础第三天(知识点)
- Android UI 之一步步教你自定义控件(自定义属性、合理设计onMeasure、合理设计onDraw等)
- Service给Activity传递参数更改UI
- LeetCode 63. Unique Paths II
- Equeue初识
- String,StringBuffer与StringBuilder的区别??
- Android高级UI SwipeRefreshLayout下拉刷新
- 动画requestAnimationFrame
- Notification.Builder 实现基本通知和自定义view通知
- 令人崩溃的@requestBody乱码一例
- ORCLE10安装常见配置问题-oui.exe停止工作