如何在CentOS scsi目标utils包中启用对ceph的支持?
我要将ceph重新导出到iSCSI,但我不能这样做。看起来像CentOS 7中的epel包scsi目标UTIL,在没有rbd支持的情况下编译 当我跑步时:如何在CentOS scsi目标utils包中启用对ceph的支持?,centos,iscsi,ceph,Centos,Iscsi,Ceph,我要将ceph重新导出到iSCSI,但我不能这样做。看起来像CentOS 7中的epel包scsi目标UTIL,在没有rbd支持的情况下编译 当我跑步时: $ sudo tgtadm --lld iscsi --mode system --op show System: State: ready debug: off LLDs: iscsi: ready iser: error Backing stores: sheepdog bsg sg
$ sudo tgtadm --lld iscsi --mode system --op show
System:
State: ready
debug: off
LLDs:
iscsi: ready
iser: error
Backing stores:
sheepdog
bsg
sg
null
ssc
smc (bsoflags sync:direct)
mmc (bsoflags sync:direct)
rdwr (bsoflags sync:direct)
aio
Device types:
disk
cd/dvd
osd
controller
changer
tape
passthrough
iSNS:
iSNS=Off
iSNSServerIP=
iSNSServerPort=3205
iSNSAccessControl=Off
我没有看到任何与ceph相关的字符串。由于rbd支持补丁已被纳入tgt存储库的主线
如何在CentOS 7的scsi目标utils包中启用rbd支持?据我调查,在scsi目标utils包中实际禁用了rbd支持。您可以看到它,如果您安装它的SRPM和看看规范文件的这个包 以下是该文件的7-8行:
# Disable rbd on epel7 b/c deps are not present
%{!?rhel:%global with_rbd 1}
在scsi目标UTIL中,此后台存储还有一个附加依赖项。您需要安装ceph-devel软件包(可以从ceph repos获取)
因此,要安装支持rbd的scsi目标UTIL,您需要执行以下操作:
cd /tmp
sudo yum install -y epel-release
sudo rpm --import 'https://download.ceph.com/keys/release.asc'
sudo yum install -y http://download.ceph.com/rpm/rhel7/noarch/ceph-release-1-1.el7.noarch.rpm
sudo yum install -y yum-utils rpm-build redhat-rpm-config make gcc
yumdownloader --source scsi-target-utils
rpm -i scsi-target-utils*.src.rpm
cd ~/rpmbuild
sed -ie 's/%{!?rhel:%global with_rbd 1}/%global with_rbd 1/' SPECS/scsi-target-utils.spec
sudo yum install -y libxslt docbook-style-xsl libaio-devel systemd-devel libibverbs-devel librdmacm-devel ceph-devel glusterfs-api-devel
rpmbuild -ba SPECS/scsi-target-utils.spec
sudo yum install -y ./RPMS/x86_64/scsi-target-utils-1.*.rpm ./RPMS/x86_64/scsi-target-utils-rbd-1.*.rpm
安装完成后,启动tgtd守护进程并检查可用组件:
$ sudo systemctl enable tgtd.service
$ sudo systemctl start tgtd.service
$ sudo tgtadm --lld iscsi --mode system --op show
System:
State: ready
debug: off
LLDs:
iscsi: ready
iser: error
Backing stores:
rbd (bsoflags sync:direct)
sheepdog
bsg
sg
null
ssc
smc (bsoflags sync:direct)
mmc (bsoflags sync:direct)
rdwr (bsoflags sync:direct)
aio
Device types:
disk
cd/dvd
osd
controller
changer
tape
passthrough
iSNS:
iSNS=Off
iSNSServerIP=
iSNSServerPort=3205
iSNSAccessControl=Off
正如我所调查的,在scsi目标utils包中,rbd支持实际上已禁用。您可以看到它,如果您安装它的SRPM和看看规范文件的这个包 以下是该文件的7-8行:
# Disable rbd on epel7 b/c deps are not present
%{!?rhel:%global with_rbd 1}
在scsi目标UTIL中,此后台存储还有一个附加依赖项。您需要安装ceph-devel软件包(可以从ceph repos获取)
因此,要安装支持rbd的scsi目标UTIL,您需要执行以下操作:
cd /tmp
sudo yum install -y epel-release
sudo rpm --import 'https://download.ceph.com/keys/release.asc'
sudo yum install -y http://download.ceph.com/rpm/rhel7/noarch/ceph-release-1-1.el7.noarch.rpm
sudo yum install -y yum-utils rpm-build redhat-rpm-config make gcc
yumdownloader --source scsi-target-utils
rpm -i scsi-target-utils*.src.rpm
cd ~/rpmbuild
sed -ie 's/%{!?rhel:%global with_rbd 1}/%global with_rbd 1/' SPECS/scsi-target-utils.spec
sudo yum install -y libxslt docbook-style-xsl libaio-devel systemd-devel libibverbs-devel librdmacm-devel ceph-devel glusterfs-api-devel
rpmbuild -ba SPECS/scsi-target-utils.spec
sudo yum install -y ./RPMS/x86_64/scsi-target-utils-1.*.rpm ./RPMS/x86_64/scsi-target-utils-rbd-1.*.rpm
安装完成后,启动tgtd守护进程并检查可用组件:
$ sudo systemctl enable tgtd.service
$ sudo systemctl start tgtd.service
$ sudo tgtadm --lld iscsi --mode system --op show
System:
State: ready
debug: off
LLDs:
iscsi: ready
iser: error
Backing stores:
rbd (bsoflags sync:direct)
sheepdog
bsg
sg
null
ssc
smc (bsoflags sync:direct)
mmc (bsoflags sync:direct)
rdwr (bsoflags sync:direct)
aio
Device types:
disk
cd/dvd
osd
controller
changer
tape
passthrough
iSNS:
iSNS=Off
iSNSServerIP=
iSNSServerPort=3205
iSNSAccessControl=Off