代码改变世界

Linux_ISCSI服务器

2015-11-26 21:28  云物互联  阅读(115)  评论(0编辑  收藏  举报

目录

网络存储

网络存储(Network Storage)是基于数据存储的一种,网络存储结构大致分为三种:直连式存储(DAS:Direct Attached Storage)、网络存储设备(NAS:Network Attached Storage)和存储网络(SAN:Storage Area Network),由于NAS对于普通消费者而言较为熟悉,所以一般网络存储都指NAS。

ISCSI

iSCSI:Internet小型计算机系统接口(iSCSI:Internet Small Computer System Interface),是一个供硬件设备使用的可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议。iSCSI技术是一种新储存技术,该技术是将现有SCSI接口与以太网络(Ethernet)技术结合,使服务器可与使用IP网络的储存设备互相交换数据。iSCSI的主要功能是在TCP/IP网络上的主机系统(启动器Initiator)和存储设备(目标器Target)之间进行大量数据的封装和可靠传输过程。此外,iSCSI提供了在IP网络上封装的SCSI命令,且运行在TCP上。
技术原理:ISCSI实现了在IP协议基础上运行SCSI协议,将现有的SCSI接口和以太网技术结合。实现了ISCSI服务器可以使用IP网络的存储装备间互相交换数据。
1. Port:TCP 3260
2. ISCSI存储设备使用iqn标识符来命名
ipn.YYYY-MM.反向域名.识别标识

How to setup ISCSI server

SCSI Commands

Server Side

step1 install software

yum install scsi-target-utils

serviceName: tgtd
commandName:tgtadm
step2 Create target object

service tgtd start
tgtadm -L iscsi -o new -m target -t 1 -Y iqn.2015-11.com.fan.JustShow
        -L:assign drive type
        -o:assign operation type
        -m:assign mode
        -t:assign target number
        -T:assign target identification
        new:Create the new one

step3. Check target detail list infomation

tgtadm -L iscsi -o show -m target

step4. Create LUN(逻辑单元)

tgtadm -L iscsi -o new -m logicalunit -t 1 -l 1 -b /dev/sdName
        -l assign LUN

step5. Bind Client’s IPAddr to LUN

tgtadm -L iscsi -o bind -m target -t 1 -I clientIP

step6. Show the Account info

sgt-admin -S

NOTE
If the AccountInfo is null, anyone can use the target.
If ACLInfo is null, no people can use the target.
The IPInfo will output in the ACLInfo when the ip bind to target.

Client Side

step1. Install iscsi-initiator-utils

yum install iscsi-initiator-utils

serviceName:iscsi
commandName:iscsiadm
step2. Find usable target in local client, get usable target’s iqnFlag

service iscsi start
iscsiadm -m discovery -t sendtargets -p serverIP

step3. Connect service target share device

iscsiadm -m node -T iqnFlag -l
        -l login

step4. After connect server find usable dervice in local

lsscsi

step5. After connect ISCSI server find the target config file

ls -R /var/lib/iscsi/nodes

step6. Formatling the ISCSI share device when the ISCSI device haven’t FS. And mount the device.
NOTE: mount the device at the same time add option -netdev to /etc/fstab, the meaning is monut the device after connect the network.

mkfs.ext4 /dev/sdName
mount -t /dev/sdName /mnt/iscsi

step7. unload ISCSI drvice.

iscsiadm -m node -T iqnFlag -u  #For a short time ,logout
iscsiadm -m node -T iqnFlag -0  #Delete

Edit the ISCSI configuration file

ServerSide

vim /etc/tgt/target.conf

<target iqn.2015-01.com.fan.jmilk:lvm>
    backing-store /dev/vg_iscsi/lv_iscsi
    direct-store /dev/sda2
    initator-address 192.168.0.1      #Bind client IP
    incominguser jmilk                #authentication parameter
</target>

Step2. restart the tgt service

service tgtd restart

ClientPort

step1.

iscsiadm -m discovery -t sendtargets -p serverIP

step2. Defined connect authentication method, create auth user.

 iscsiadm -m node -o update -T iqnFlag -n node.session.auth authmethod -V CHAP
 iscsiadm -m node -o update -T iqnFlag -n node.session.auth username -V jmilk
 iscsiadm -m node -o update -T iqnFlag -n node.session.auth passwork -V jmilk.com

step3.

iscsiadm -m node -T iqnFlag -l

step4.

lsscsi