上一节我们讨论了 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/logs/c-vol.log

下面的日志显示:通过命令 tgtadm --lld iscsi --op show --mode target 看到已经将 1GB(1074MB)的 LV /dev/stack-volumes-lvmdriver-1/volume-1e7f6bd7-ce11-4a73-b95e-aabd65a5b188 通过 Target 1 export 出来了。

Initialize connection 完成。

nova-compute 将 volume attach 到 instance

计算节点作为 iSCSI initiator 访问存储节点 Iscsi Target 上的 volume,并将其 attach 到 instance。日志文件为 /opt/stack/logs/n-cpu.log

nova-compute 依次执行 iscsiadm 的 new, update, login, rescan 操作访问 target 上的 volume。

计算节点将 iSCSI target 上的 volume 识别为一个磁盘文件。

然后通过更新 instance 的 XML 配置文件将 volume 映射给 instance。

我们也可以通过 virsh edit 查看更新后的 XML。

可以看到,instance 增加了一个类型为 block 的虚拟磁盘,source 就是要 attach 的 volume,该虚拟磁盘的设备名为 vdb。

手工 Shut off 并 Start instance,通过 fdisk -l 查看到 volume 已经 attach 上来,设备为 vdb

GUI 界面也会更新相关 attach 信息

现在如果我们在存储节点执行 tgt-admin --show --mode target,会看到计算节点作为 initiator 已经连接到 target 1。cinder-volume 刚刚创建 target 的时候是没有 initiator 连接的,大家可以将下面的截图与之前的日志做个对比。

以上就是 attach volume 的全部内容,下一节我们讨论 detach 操作。

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

Attach Volume 操作(Part II) - 每天5分钟玩转 OpenStack(54)相关推荐

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

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

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

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

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

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

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

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

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

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

  6. Start Instance 操作详解 - 每天5分钟玩转 OpenStack(31)

    本节通过日志文件详细分析 instance start 操作. 下面是 start instance 的流程图 向 nova-api 发送请求 nova-api 发送消息 nova-compute 执 ...

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

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

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

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

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

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

  10. LVM 类型的 Storage Pool - 每天5分钟玩转 OpenStack(8)

    http://www.cnblogs.com/CloudMan6/p/5277927.html LVM 类型的 Storage Pool - 每天5分钟玩转 OpenStack(8) LVM 类型的 ...

最新文章

  1. 【新】欢庆网自动搜索请柬console方法,面对多种网站改版的情况
  2. ASP.Net生成静态HTML页!
  3. 【Linux】一步一步学Linux——dpkg-reconfigure命令(272)
  4. P4045-[JSOI2009]密码【AC自动机,状压dp】
  5. Python笔记-UiSelector中resourceId定位方式
  6. 数据科学家:21世纪最性感的职业
  7. 【Level 08】U08 Positive Attitude L1 See the world
  8. 校招应聘产品经理,怎么准备?网易大佬来回答
  9. OpenShift 4 之Knative(1) - 创建Knative无服务器架构环境
  10. android的xml登录,Android----xml文件中的控件的id设置
  11. python播放音乐-python 模拟(简易)音乐播放器
  12. textarea长度限制
  13. 准备创建一个自己的校验提示Extender
  14. Windows Terminal 窗口/控制台切换快捷键总结
  15. 翻译: Python range 函数指南 -- 从入门到精通
  16. 苹果偷学微信代码,程序员小哥:天知道微信为什么会引用这个变量
  17. u深度重装系统详细教程_U深度U盘安装原版win7系统的图文教程
  18. 贪吃蛇小程序(功能完善)
  19. 直流电机脉宽调制调速
  20. EXCEL-日常技巧整理-2-单元格拆分后原数据填充

热门文章

  1. undefined symbol: ap_log_rerror;apache2.4与weblogic点so文件
  2. 怎么让百度快速重新收录
  3. [工具推荐]用了TrueCrypt 再无难掩之隐
  4. 使用 NSURLSession 开发一个支持后台下载和断点续传的下载工具
  5. Exchange与ADFS单点登录 PART 2:部署和配置ADFS
  6. 主动学习综述(ACTIVE LEARNING)
  7. iOS 10 个实用小技巧(总有你不知道的和你会用到的)
  8. 目标跟踪之卡尔曼滤波---理解Kalman滤波的使用
  9. StingBuffer
  10. Ubuntu手机系统会成为第四大手机系统吗