cinder-volume 初始化 volume 的连接
cinder-volume 接收到 initialize_connection 消息后,会通过 tgt 创建 target,并将 volume 所对应的 LV 通过 target export 出来。
通过命令 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。
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 连接的。
-----------------------------------------------------引用来自--------------------------------------------------
https://mp.weixin.qq.com/s?__biz=MzIwMTM5MjUwMg==&mid=2653587739&idx=1&sn=5f23fdf07800f25491535dc5c6bc1cb0&chksm=8d308102ba470814e40be7523b8769a3630959991f75562541b13b4e6ad80f962aba6c36be26&scene=21#wechat_redirect