linux下iSCSI使用

SCSI官网http://stgt.sourceforge.net/

tgtadm文档:https://linux.die.net/man/8/tgtadm

drbdadm、drbdsetup,drbdmeta

         协议:

                   A:异步

                   B:半同步

                   C:同步

         模型:

                   primary/secondary

                            primary:可挂载,可读写

                            seconday:不可挂载

                   primary/promary:

                            必要条件:HA环境

                            Clusterfilesystem

                  

pacemaker+drbd:

         rimary/secondary

                   将drbd定义成master/slave类型的资源

                            能自动完成primary/secondary角色切换

                            还能通过在pacemaker中定义filesystem,从而完成drbd设备的自动挂载

                   primary/primary               

                            借助于dlm完成分布式锁资源

将drbd定义clone类型资源,从而使得多个节点能够使用 此资源

cluster FS

SSI & ISCSI

         存储类型

                            DAS:irectattached storage

                                     并行口,IDE(ATA),SCSI

                                     串行口:SATA,SAAS,USB,eSATA

                            NAS:文件服务协议实现文件服务器,NFS,CIFS

                                     RESTful

                            SAN:storage areanetwork

         SCSI:smallcomputer system interface

                  并行I/O接口规范,I/O通道,传输协议

                   协议分层:

                            应用层

                            传输层

物理层

                   注意:物理层可替换为其他的传输介质,而非必须使用SCSI线缆

                            FC,Ethernet,IB

                            fc-->fc

                            fc-->fcoe-->cee

                            fc-->fcip-->tcp-->ip-->Etnernet

                            ISCSI-->tcp-->ip-->Etnernet

                            SRP/iSER-->IB

                   iSCSI:

                            监听端口:3260/tcp

                            SAN的类型:FC SAN

                                     iSCSI:iP SAN

                            SCSI设备:

                                     initiator:HBA

                                     target:target id,tid

                                     lun:local unit,iun

                            iSCSIstorage:

                                     target端口:linux主机

                                               iSCSItarget

                                              iSCSILUN

                                     initiator:

案例:实践iSCSI

                  target:

                            认证:

基于IP认证

                                     CHAP:挑战握手认证协议

                            程序包:scsi-target-utils

                                     管理工具:

                                               tgtadm:全功能命令行配置工具,其配置结果在OS重启之后会失效

                                               tgt-admin:通过读取配置文件/etc/tgt/targets.conf进行配置的工具

                                     启动服务后,模拟的是SCSI总线,

                                               管理多个target

                                               每个target上,可管理多个lun(32)

                   initiator:

                            管理包:iscsi-initiator-utils

                                     iscsi          

                                     iscsid

                   target和initiator都需要使用iqn进行标示

                            iqn:iscsiqualified name

                                     格式:

                                               iqn.YEAR-MONTH.tld.domain:string[.substring]

                                               例如:iqn.2015-06.com.test.com:i1.c2


配置iscsi server:

    1.      准备磁盘设备

    2.      安装程序包,启动服务

    3.      创建target

    4.      创建lun

    5.      授权

target服务器上的安装:

        
yum install scsi-target-utils –y

service tgtd start

netstat –tnlp

tgtadm命令:
	模式化的工具
		target:管理target
		logicalunit:管理lun
		account:管理用户账号
	管理操作:
		new:新建
		show:查看
		update:修改
		bind:绑定,即实现授权,通过将IP或账号与target绑定进行
		unbind:解除授权
tgtadm --lld iscsi --mod target --op show
添加target:
tgtadm --lld iscsi --mod target --op new --tid 1 --targetname iqn.2018-04.com.ma:t1
tgtadm --lld iscsi --mod target --op show

现实的target如下:

Target 1: iqn.2018-04.com.ma:t1
    System information:
        Driver: iscsi
        State: ready
    I_T nexus information:
    LUN information:
        LUN: 0
            Type: controller
            SCSI ID: IET     00010000
            SCSI SN: beaf10
            Size: 0 MB, Block size: 1
            Online: Yes
            Removable media: No
            Prevent removal: No
            Readonly: No
            SWP: No
            Thin-provisioning: No
            Backing store type: null
            Backing store path: None
            Backing store flags: 
    		Account information:
    		ACL information:

添加lun:

tgtadm --lld iscsi --mod logicalunit --op new --tid 1 --lun 1 --backing-store /dev/sdb
tgtadm --lld iscsi --mod logicalunit --op new --tid 1 --lun 2 --backing-store /dev/sdc
其中/dev/sdb,/dev/sdc是新建的磁盘
	tgtadm --lld iscsi --mod target --op show
添加监听网段
tgtadm --lld iscsi --mod target --op bind --tid 1 --initiator-address 192.168.137.0/24

# tgtadm --lld iscsi --mod target --op show

显示的信息如下:

Target 1: iqn.2018-04.com.ma:t1
    System information:
        Driver: iscsi
        State: ready
    I_T nexus information:
    LUN information:
        LUN: 0
            Type: controller
            SCSI ID: IET     00010000
            SCSI SN: beaf10
            Size: 0 MB, Block size: 1
            Online: Yes
            Removable media: No
            Prevent removal: No
            Readonly: No
            SWP: No
            Thin-provisioning: No
            Backing store type: null
            Backing store path: None
            Backing store flags: 
        LUN: 1
            Type: disk
            SCSI ID: IET     00010001
            SCSI SN: beaf11
            Size: 5369 MB, Block size: 512
            Online: Yes
            Removable media: No
            Prevent removal: No
            Readonly: No
            SWP: No
            Thin-provisioning: No
            Backing store type: rdwr
            Backing store path: /dev/sdb
            Backing store flags: 
        LUN: 2
            Type: disk
            SCSI ID: IET     00010002
            SCSI SN: beaf12
            Size: 5369 MB, Block size: 512
            Online: Yes
            Removable media: No
            Prevent removal: No
            Readonly: No
            SWP: No
            Thin-provisioning: No
            Backing store type: rdwr
            Backing store path: /dev/sdc
            Backing store flags: 
    Account information:
    ACL information:
        192.168.137.0/24
tgtadm命令常用选项:
	--lld,-L <driver>:指明驱动,此处均为iscsi
	--mod,-m <mode>
--op,-o <operation>
--tid,-t <TID>
--lun,-l <lun>
--backing-store,-b <path>
--initiator-address,-I <IP or NET>
--targetname,-T <iqn.NAME>
配置iSCSI initiator:
1.	安装程序包,配置initiator的名字,并启动服务
yum install iscsi-initiator-utils
有两个服务iscsi,iscsid,两个都需要启动
配置initiator的iqn格式的名字,/etc/iscsi/initiatorname.iscsi
echo "InitiatorName=$(iscsi-iname -p iqn.2018-04.com.ma)" > /etc/iscsi/initiatorname.iscsi  
其中iscsi-iname -p iqn.2018-04.com.ma产生名称
service iscsi start
service iscsid start
重启服务
	for i in iscsi iscsid ; do service  $i restart;done
2.	使用iscsiadm实现target的发现、注册等
(1)	发现模式:discovery
iscsiadm –m doscovery –d # -t type  -p IP:PORT
	type:
		sendtargets,简写st
iscsiadm -m discovery  -d 3 -t st -p 192.168.137.132:3260
		192.168.137.132:3260,1 iqn.2018-04.com.ma:t1
(2)	节点模式:node
iscsiadm -m node -d 1 -T iqn.2018-04.com.ma:t1  -p 192.168.137.132:3260 –l
其中iqn.2018-04.com.ma:t1是target节点上的名称
fdisk –l
issue主机上出现了target的两个硬盘的信息
iscsiadm -m node -d 1 -T iqn.2018-04.com.ma:t1  -p 192.168.137.132:3260  --logout:登出磁盘
		Logging out of session [sid: 1, target: iqn.2018-04.com.ma:t1, portal: 192.168.137.132,3260]
Logout of [sid: 1, target: iqn.2018-04.com.ma:t1, portal: 192.168.137.132,3260] successful.
查看映射结果:iscsiadm -m node
登出后再查看磁盘信息,target的磁盘不显示
重新发现并登陆
分区:
	fdisk -l
fdisk /dev/sdc
mke2fs -t ext4 /dev/sdc1
 		mount /dev/sdc1 /mnt
	在target主机上使用fdisk –l也可以看见在issue分区的结果
但是在issue上本来存在sdb,所以在issue上显示target的分区为/dev/sdc,/dev/sdd,而在target上显示sdb,需要对应起来
在第二个issue主机上也发现并注册target,挂载至/mnt目录,两个issue主机共享/mnt目录,会存在问题,比如两台主机对同一文件进行写操作

192.168.137.135的issue主机上:

Disk /dev/sdd: 5368 MB, 5368709120 bytes, 10485760 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x20ba0ccc
Device Boot      Start         End      Blocks   Id  System
/dev/sdd1         4194304    10485759     3145728   83  Linux

Disk /dev/sde: 5368 MB, 5368709120 bytes, 10485760 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

191.268.137.130的issue主机上:

Disk /dev/sdc: 5368 MB, 5368709120 bytes, 10485760 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x20ba0ccc

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1         4194304    10485759     3145728   83  Linux

Disk /dev/sdd: 5368 MB, 5368709120 bytes, 10485760 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

可以看出,磁盘标号在两台issue主机上不一致,需要对应关系,并挂载正确的磁盘分区至相应目录

192.168.137.130主机:

192.168.137.135主机:

尽量不要两台issue主机挂载同一分区

如果需要自动挂载则开机启动iscsi,iscsid服务,并在/etc/fstab文件中写入挂载

删除:

         两台issue主机登出

         删除逻辑单元,删除target

tgtadm -L iscsi -m target -o show
tgtadm -L iscsi -m logicalunit -o delete -t 1 -l 1
tgtadm -L iscsi -m logicalunit -o delete -t 1 -l 2
tgtadm -L iscsi -m target -o delete -t 1
tgtadm -L iscsi -m target -o show

 配置atrget的第二种方式/etc/tgt/targets.conf

target端配置文件内容加入:

<target iqn.2018-04.com.ma:s2.t1>
        backing-store /dev/sdb
        backing-store /dev/sdc
        initiator-address 192.168.137.0/24
</target>

重启tgtd服务:service tgtd restart

tgtadm -L iscsi -m target -o show

已经显示了lun1,lun2等信息

issue端与还是使用命令行的方式

开源存储工具:

                   openfiler,freeNAS,nexenta

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值