O054、Attach Volume 操作(Part II)】的更多相关文章

上一节我们讨论了 attach volume 操作中 cinder-api 的工作,本节讨论 cinder-volume 和 nova-compute 如何将 volume attach 到 Instance. cinder-volume 初始化 volume 的连接 cinder-volume 接收到 initialize_connection 消息后,会通过 tgt 创建 target,并将 volume 所对应的 LV 通过 target export 出来.日志为 /opt/stack/…
上一节我们创建了 volume,本节讨论如何将 volume attach 到 Instance,今天是第一部分. Volume 的最主要用途是作为虚拟硬盘提供给 instance 使用.Volume 是通过 Attach 操作挂载到 instance 上的.本节我们就来详细讨论 Cinder 是如何实现 Attach 的. 上一节我们成功创建了基于 LVM provider 的 volume.每个 volume 实际上是存储节点上 VG 中的一个 LV. 那么问题来了:存储节点上本地的 LV…
参考https://www.cnblogs.com/CloudMan6/p/5624930.html   Volume的最主要用途是做为虚拟磁盘提供给Instance使用.Volume是通过 Attach 操作挂载到Instance上的.   上一节我们成功创建了基于 LVM provider 的Volume.每个volume 实际上是存储节点上VG中的一个LV.   那么问题来了:存储节点上本地的LV如何挂载到计算节点的Instance上呢?   通常情况存储节点和计算节点是不同的物理节点.解…
参考https://www.cnblogs.com/CloudMan6/p/5631328.html     计算节点作为iSCSI initiator 访问存储节点 iSCSI Target 上的volume,并将其attach 到 Instance .   nova-compute 一次执行 iscsiadmin 的 new.update.login.rescan 操作访问target 上的volume   计算节点将iSCSI target 上的volume识别为一个磁盘文件   然后通过…
上一节我们成功地通过 attach 操作为 instance 添加了 volume,而与之相对的操作是 detach,就是将 volume 从 instance 上卸载下来. 下图是 Detach 操作的流程图 向 cinder-api 发送 detach 请求 cinder-api 发送消息 nova-compute detach volume cinder-volume 删除 target 下面我们详细讨论每一个步骤. 向 cinder-api 发送 attach 请求 客户(可以是 Ope…
前面已经学习了 Cinder 的架构和相关组件,从本节我们开始详细分析 Cinder 的各种操作,首先讨论 Cinder 如何创建 volume. Create 操作流程如下: 客户(可以是 OpenStack 最终用户,也可以是其他程序)向 API(cinder-api)发送请求:“帮我创建一个 volume”. API 对请求做一些必要处理后,向 Messaging(RabbitMQ)发送了一条消息:“让 Scheduler 创建一个 volume”. Scheduler(cinder-sc…
参考https://www.cnblogs.com/CloudMan6/p/5603312.html   前面已经学习了Cinder的架构和相关组件,从本节开始详细分析 Cinder 的各种操作,首先讨论 Cinder 如何创建 volume.   Create 操作流程如下:  …
上一节我们讨论了 Cinder 创建 Volume 的第一部分,cinder-api 的操作,本节继续第二部分,cinder-scheduler 调度工作. cinder-scheduler 执行调度 cinder-scheduler 执行调度算法,通过 Filter 和 Weigher 挑选最优的存储节点 日志为 /opt/stack/logs/c-sch.log. cinder-scheduler 通过 Flow volume_create_scheduler 执行调度工作. 该 Flow…
参考https://www.cnblogs.com/CloudMan6/p/5612147.html       1.cinder-scheduler 也会启动一个工作流 volume_create_scheduler    Jun 20 17:15:56 DevStack-Rocky-Controller-21 cinder-scheduler: DEBUG cinder.scheduler.manager None req-5eb13d6b-917f-48f6-a28c-17ae0d99c7…
本节我们讨论 volume 的 Backup 操作. Backup 是将 volume 备份到别的地方(备份设备),将来可以通过 restore 操作恢复. Backup VS Snapshot 初看 backup 功能好像与 snapshot 很相似,都可以保存 volume 的当前状态,以备以后恢复.但二者在用途和实现上还是有区别的,具体表现在: Snapshot 依赖于源 volume,不能独立存在:而 backup 不依赖源 volume,即便源 volume 不存在了,也可以 rest…