本节通过日志文件详细分析 instance start 操作。

下面是 start instance 的流程图

  1. 向 nova-api 发送请求

  2. nova-api 发送消息

  3. nova-compute 执行操作

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

向 nova-api 发送请求

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

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

nova-api 发送消息

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

self.compute_rpcapi.start_instance() 的作用就是向 RabbitMQ 上 nova-compute 的消息队列里发送一条 start instance 的消息。

nova-compute 执行操作

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

开始启动

准备虚拟网卡

准备 instance 的 XML 文件

准备 instance 镜像文件

成功启动

Start 操作的分析就得这里,下节继续讨论其他 nova 操作。

转载于:https://blog.51cto.com/cloudman/1771342

Start Instance 操作详解 - 每天5分钟玩转 OpenStack(31)相关推荐

  1. Pause/Resume Instance 操作详解 - 每天5分钟玩转 OpenStack(34)

    Pause/Resume Instance 操作详解 - 每天5分钟玩转 OpenStack(34) 本节通过日志详细分析 Nova Pause/Resume 操作. 有时需要短时间暂停 instan ...

  2. Unshelve Instance 操作详解 - 每天5分钟玩转 OpenStack(39)

    上一节我们 shelve instance 到 Glance,本节讨论如何通过 unshelve 操作恢复该 instance. 因为 Glance 中保存了 instance 的 image,uns ...

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

    上一节我们讨论了 snapshot,snapshot 的一个重要作用是对 instance 做备份. 如果 instance 损坏了,可以通过 snapshot 恢复,这个恢复的操作就是 Rebuil ...

  4. Snapshot Instance 操作详解 - 每天5分钟玩转 OpenStack(36)

    本节我们通过日志详细讨论 instance 的 snapshot 操作. 有时候操作系统损坏得很严重,通过 Rescue 操作无法修复,那么我们就得考虑通过备份恢复了.当然前提是我们之前对instan ...

  5. Migrate Instance 操作详解 - 每天5分钟玩转 OpenStack(40)

    Migrate 操作的作用是将 instance 从当前的计算节点迁移到其他节点上. Migrate 不要求源和目标节点必须共享存储,当然共享存储也是可以的. Migrate 前必须满足一个条件:计算 ...

  6. Nova Suspend/Rescue 操作详解 - 每天5分钟玩转 OpenStack(35)

    本节我们讨论 Suspend/Resume 和 Rescue/Unrescue 这两组操作. Suspend/Resume 有时需要长时间暂停 instance,可以通过 Suspend 操作将 in ...

  7. Launch和Shut Off操作详解 - 每天5分钟玩转 OpenStack(30)

    本节详细分析 instance launch 和 shut off 操作,以及如何在日志中快速定位有用信息的技巧. Launch Launch instance 应该算 Nova 最重要的操作. 仔细 ...

  8. Cinder 组件详解 - 每天5分钟玩转 OpenStack(47)

    Cinder 组件详解 - 每天5分钟玩转 OpenStack(47) 本节我们将详细讲解 Cinder 的各个子服务. cinder-api cinder-api 是整个 Cinder 组件的门户, ...

  9. Nova 组件详解 - 每天5分钟玩转 OpenStack(26)

    本节开始,我们将详细讲解 Nova 的各个子服务. 前面架构概览一节知道 Nova 有若干 nova-* 的子服务,下面我们将依次学习最重要的几个. 今天先讨论 nova-api 和 nova-con ...

最新文章

  1. Android 4.2真坑爹
  2. 径向基函数插值(1)
  3. 智能算法之Matlab实现(1)——遗传算法(1)
  4. shell脚本由基础变量及特殊变量($@、$*、$#等)到实战。
  5. 实操|如何将 Containerd 用作 Kubernetes runtime
  6. GloVe: Global Vectors for Word Representation-学习笔记
  7. 网络资源的初始化与释放(C++ RAII惯用法)
  8. 收藏 | 超轻量目标检测模型NanoDet,比YOLO跑得快,上线两天Star量超200
  9. 没经验能做软件测试吗?
  10. 【java笔记】hello world入门程序
  11. IaaS基础架构云 —— 云网络
  12. 访问k8s集群出现Unable to connect to the server: x509: certificate is valid for xxx, not xxx问题解决【详细步骤】
  13. java移位运算符(一个大于号,两个大于号,三个大于号)
  14. [我也GitHub]我很焦虑, 我很暴躁!
  15. python菜鸟教程官网绘图-Python Tkinter 画布(Canvas)
  16. Windows操作系统的日志分析
  17. 昨天你用的 YYYY-MM-dd 被同事锤了吗?
  18. WSL与WIN怎么互通有无?
  19. C语言编写1000元五种方法存五年的利息
  20. 程序员月薪一万二在北京的真实生活!

热门文章

  1. LeetCode 286. 墙与门 多源BFS和DFS
  2. 第一章:线性空间和线性变换
  3. 【总有一些东西要弄清】——说说面试时一系列的CSS问题
  4. 自省:我为什么没有成功--对照35前务必完成的12跳
  5. (原)学习ORACLE 视图
  6. PHP-面向对象编程教程
  7. Npoi Web 项目中(XSSFWorkbook) 导出出现无法访问已关闭的流
  8. 四叶草社交平台——十天冲刺(5)
  9. ios怎样在一个UIImageButton的里面加一些自己定义的箭头
  10. tar压缩/解压用法