使用tgt搭建一个基于rbd的SCSI target

本文讲述了如何利用Linux Target Framework (tgt) 创建一个基于Ceph RBD的SCSI目标。tgt允许将块设备或文件转换为SCSI逻辑单元,并通过iSCSI等协议进行访问。Ceph的rbd模块提供了与tgt集成的可能性,使得在tgt中使用librbd访问Ceph块存储成为可能。文章详细介绍了配置和验证tgt中rbd支持的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux target framework(tgt/stgt)是为创建、维护SCSI target 驱动(包括iSCSI、FC、SRP等)提供支持。换句话说,它能将块设备、文件转换为SCSI LU并提供iSCSI、iSER等SAN中常用的传输方式来访问这些LU。它的关键目标是简洁地集成到scsi-mid层,并且大部分实现都在用户层。以 Linux 2.6.38 为分界线,此前Linux 中默认的SCSI target是STGT(即tgt),之后的标准是 Linux-IO Target。

ceph作为一个统一存储方案,它通过rbd模块来对外提供块设备,目前对于rbd模块来说,它既有用户态的librbd也有内核态的krbd。而tgt作为用户层的SCSI target,支持通过librbd来访问ceph的块存储是一件水到渠成的事。最终由Dan Mick在tgt中加入了对rbd的支持,并在ceph社区发表了一篇文章,有兴趣的同学可以看看。

本篇文章介绍了如何使用stgt搭建一个基于rbd的SCSI target。

1.为了能在tgt中使用librbd访问ceph的块设备,需要tgt有相应的模块,你可以通过以下命令来确认。

$ tgtadm --lld iscsi --mode system --op show|grep rbd
rbd (bsoflags sync:direct)
如果有类似于上面的输出结果,说明你的tgt加载了rbd模块。该模块实际上是一个名为bs_rbd.so的动态链接库。如果命令没有输出,则说明你的tgt还不
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值