基于ceph集群的iSCSI传输服务配置


声明:本文转载自https://my.oschina.net/u/3741169/blog/1584255,转载目的在于传递更多信息,仅供学习交流之用。如有侵权行为,请联系我,我会及时删除。

准备:
系统:CentOS-7-x86_64-DVD-1511(最小化安装 中文)
一个完善的ceph集群(本文中使用的集群的为一个mon节点,三个osd节点的健康集群)
使用工具:服务端scsi-target-utils-1.0.38-48   Linux客户端iscsi-initiator-utils
scsi-target-utils-1.0.38-48下载地址
http://apt-mirror.sepia.ceph.com/centos6-qemu-kvm/scsi-target-utils-1.0.38-48.bf6981.ceph.el6.x86_64.rpm
关闭防火墙以及selinux
systemctl disable firewalld(关闭防火墙开机自启动)
systemctl stop firewalld(关闭防火请)
setenforce 0(临时关闭selinux)
永久关闭修改/etc/selinux/config文件中的SELINUX为disabled
SELINUX=disabled

步骤:

1.下载
方式一:浏览器可视化下载,使用xshell发送至服务端
        yum install -y lrzsz
        rz
方式二:yum install -y wget
        wget http://apt-mirror.sepia.ceph.com/centos6-qemu-kvm/scsi-target-utils-1.0.38-48.bf6981.ceph.el6.x86_64.rpm

2.安装
方式一:rpm -ivh  scsi-target-utils-1.0.38-48.bf6981.ceph.el6.x86_64.rpm(在服务器端有网络连接的情况下不建议使用这种方式)
        方式一安装的过程中所需的依赖
        boost-iostreams.x86_64 0:1.53.0-27.el7   boost-random.x86_64 0:1.53.0-27.el7         
        boost-system.x86_64 0:1.53.0-27.el7      boost-thread.x86_64 0:1.53.0-27.el7         
        libibverbs.x86_64 0:13-7.el7             librados2.x86_64 1:10.2.10-0.el7            
        librbd1.x86_64 1:10.2.10-0.el7           librdmacm.x86_64 0:13-7.el7                 
        lsof.x86_64 0:4.87-4.el7                 lttng-ust.x86_64 0:2.4.1-4.el7              
        perl.x86_64 4:5.16.3-292.el7             perl-Carp.noarch 0:1.26-244.el7             
        perl-Config-General.noarch 0:2.61-1.el7  perl-Encode.x86_64 0:2.51-7.el7             
        perl-Exporter.noarch 0:5.68-3.el7        perl-File-Path.noarch 0:2.09-2.el7          
        perl-File-Temp.noarch 0:0.23.01-3.el7    perl-Filter.x86_64 0:1.49-3.el7             
        perl-Getopt-Long.noarch 0:2.40-2.el7     perl-HTTP-Tiny.noarch 0:0.033-3.el7         
        perl-PathTools.x86_64 0:3.40-5.el7       perl-Pod-Escapes.noarch 1:1.04-292.el7      
        perl-Pod-Perldoc.noarch 0:3.20-4.el7     perl-Pod-Simple.noarch 1:3.28-4.el7         
        perl-Pod-Usage.noarch 0:1.63-3.el7       perl-Scalar-List-Utils.x86_64 0:1.27-248.el7
        perl-Socket.x86_64 0:2.010-4.el7         perl-Storable.x86_64 0:2.45-3.el7           
        perl-Text-ParseWords.noarch 0:3.29-4.el7 perl-Time-HiRes.x86_64 4:1.9725-3.el7       
        perl-Time-Local.noarch 0:1.2300-2.el7    perl-constant.noarch 0:1.27-2.el7           
        perl-libs.x86_64 4:5.16.3-292.el7        perl-macros.x86_64 4:5.16.3-292.el7         
        perl-parent.noarch 1:0.225-244.el7       perl-podlators.noarch 0:2.5.1-3.el7         
        perl-threads.x86_64 0:1.87-4.el7         perl-threads-shared.x86_64 0:1.43-6.el7     
        sg3_utils.x86_64 0:1.37-12.el7           sg3_utils-libs.x86_64 0:1.37-12.el7         
        userspace-rcu.x86_64 0:0.7.16-1.el7     
方式二:yum isntall scsi-target-utils-1.0.38-48.bf6981.ceph.el6.x86_64.rpm(在服务器有网络连接的情况下建议使用这种方式,会自动解决依赖关系)

3.使能tgt服务
systemctl enable tgtd.service
systemctl start tgtd.service
开启scsi-target-utils服务
service tgtd start 或 systemctl start tgtd
开机自启动scsi-target-utils服务
chconfig tgtd on
查看scsi-target-utils是否启动
netstat –anltp|grep 3260

4.验证tgt是否支持rbd
tgtadm --lld iscsi --mode system --op show | grep rbd
建议使用下载方式二提供的网站,使用1.0.38版本,验证支持rbd通过

5.创建iscsi target

创建存储池和rbd镜像
ceph osd pool create iscsi-pool 192 192(在执行下一步之前,建议使用rbd ls -p iscsipool命令查看是否创建成功)
rbd create iscsipool/image01 --size 10240
注意:本例中使用的集群为一个mon节点,三个osd节点的ceph集群,pgs值为192,具体实施时根据osd节点数量判定
创建的镜像容量为10G(如果创建失败,使用命令ceph osd pool delete iscsipool iscsipool --yes-i-really-really-mean-it删除创建的池,其中iSCSIpool为我创建的池的名称)
在创建镜像成功后,ceph集群会出现不健康的情况,在pgs没有错误的情况下会逐渐恢复至健康状态

6.修改配置文件
vi /etc/tgt/targets.conf
添加如下配置
<target 192.168.1.104:iscsi>
    driver iscsi
    bs-type rbd
    backing-store iscsi-pool/image01
</target>
或在/etc/tgt目录下创建conf.d目录,在conf.d目录下创建后缀名为.conf的配置文件,写入内容示例如下
<target 192.168.1.104:iscsi>
    driver iscsi
    bs-type rbd
    backing-store iscsi-pool/image01
</target>

7.重启target服务
systemctl restart tgtd.service

8.查看创建的scsi target
tgtadm --lld iscsi --mode target --op show
可以看到创建的lun1表示成功

9.使用客户端验证iSCSI服务

控制面板->管理工具->iSCSI 发起程序->在目标中输入提供iSCSI服务的服务器的ip地址->点击快速连接
如果提示不活动,点击左下角的连接按钮。
Linux客户端配置:1.配置拓展源,1511中的源不含有iscsi-initiator-utils的安装包
                   yum install -y epel-release
                   yum install -y iscsi-initiator-utils
                 2.发现目标设备
                   iscsiadm -m discovery -t sendtargets -p 192.168.1.111
                 3.挂载目标设备
                   iscsiadm -m node -T 192.168.1.111:iscsi -l
                 4.卸载目标设备
                   iscsiadm -m node -T 192.168.1.109:iscsi -u

本文发表于2017年12月04日 10:38
(c)注:本文转载自https://my.oschina.net/u/3741169/blog/1584255,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除.

阅读 2560 讨论 0 喜欢 0

抢先体验

扫码体验
趣味小程序
文字表情生成器

闪念胶囊

你要过得好哇,这样我才能恨你啊,你要是过得不好,我都不知道该恨你还是拥抱你啊。

直抵黄龙府,与诸君痛饮尔。

那时陪伴我的人啊,你们如今在何方。

不出意外的话,我们再也不会见了,祝你前程似锦。

这世界真好,吃野东西也要留出这条命来看看

快捷链接
网站地图
提交友链
Copyright © 2016 - 2021 Cion.
All Rights Reserved.
京ICP备2021004668号-1