本文主要讲ISISI目标端以及发起端在RHEL6下的配置,希望会给大家带来帮助。
 
    iSCSI存储分为服务器端(targets)和客户端(initiators),客户端发送SCSI命令到远程的存储设备端(服务器端),iSCSI使用的是TCP/IP协议,默认使用TCP的3260端口。
 
    其实配置相对来说比较简单,主要参考官方文档一步步进行来就可以了,安装相对应软件包后会在 /usr/share/doc/scsi-target-utils-0.0/README.iscsi 有相对应帮助文件。
 
开始:
 
Target Server 目标端(192.168.3.17):
 
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

  1.安装scsi-target-utils包:
 
       #yum -y install *scsi*           (提前配置YUM仓库,然后在执行上命令)

 

  2.启动服务,并设置开机自启动:

 

       #/etc/init.d/tgtd start

 

       #chkconfig tgtd on

 
 3. create one target device. 建立target device设备:
 
      #tgtadm --lld iscsi --op new --mode target --tid 1 -T iqn.2012-12.com.xuhairl:iscsi-mysql
     
        iqn    : iscsi的合格名称

 

        yyyy-mm: 年-月      如:2012-12

 

        Reversed domain name : 把域名反过来写(只是DNS域名)      如:com.xuhairl

 

        Identifier : 描述iscsi的用途,随意写        如:iscsi-mysql   
 
        You can get the current configuration:    查看配置
        #tgtadm --lld iscsi --op show --mode target
 
4. Add a logical unit to the target :        target device里添加LUN逻辑单元:
 
    #tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 1 -b /dev/hdc1     也可以添加逻辑卷
   
    添加后还可以用命令去查看:#tgtadm --lld iscsi --op show --mode target
 
    如果想要添加多块硬盘,可以在target设备上,添加多个logical unit(逻辑单元),如:

        

    #tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 2 -b /dev/hdc2
    #tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 3 -b /dev/hdd1   等.....
 
5. 允许initiator(发起者)主机可以存取该target device设备
 
    #tgtadm --lld iscsi --op bind --mode target --tid 1 -I ALL   允许所有
    用命令去查看:#tgtadm --lld iscsi --op show --mode target
   
    #tgtadm --lld iscsi --op bind --mode target --tid 1 -I 192.168.3.20   允许一台主机
 
    #tgtadm --lld iscsi --op bind --mode target --tid 1 -I 192.168.3.0/24   允许这一个网络 
 
6. 设置ISNS
 
    查看:
    #tgtadm --lld iscsi --op show --mode sys
       iSNS:
         iSNS=off
          iSNSServerport=3205
           iSNSAccessControl=Off
    设置:
      #tgtadm --op update -mode sys --name iSNSServerIP -v 192.168.3.17
       #tgtadm --op update -mode sys --name iSNS -v On
     
       在进行查看:
          #tgtadm --lld iscsi --op show --mode sys
            iSNS:
                     iSNS=on
                     iSNSServerIP=192.168.3.17
                     iSNSServerport=3205
                     iSNSAccessControl=Off
           
7. 修改配置文件/etc/tgt/targets.conf
 
           <target  iqn.2012-12.com.xuhairl:iscsi-mysql>
                backing-store /dev/hdc1
                backing-store /dev/hdc2   
            </target>
 
        重新启动服务 /etc/init.d/tgtd restart
 
Initiator发起端
 
     1.安装 iscsi-initiator-utils包:

 

       #yum -y install iscsi-initiator-utils
 
     2.启动服务,设置开机自启动:

 

       #/etc/init.d/iscsi start

 

       #chkconfig iscsi on
 
       #chkconfig iscsid on   

 

     3.发现 target device

 

       #iscsiadm -m discovery -t sendtargets -p 192.168.3.17:3260

 

         example: 192.168.3.17:3260,1 iqn.2012-12.com.xuhairl:iscsi-mysql

 

       这里发现了,ISCIS Target上的LUN设备.

 

     4.连接 SCSI存储:

 

       #iscsiadm -m node -T  iqn.2012-12.com.xuhairl:iscsi-mysql -p 192.168.3.17:3260 -l

 
   
     使用fdisk -l,可以看到映射到的逻辑磁盘的详细内容,可以像使用本地硬盘一样对其进行分区,创建文件系统、挂载、卸载等操作。 
 
  5.断开SCSI存储:
 
    (1)先卸载逻辑磁盘;

    (2)再断开逻辑磁盘,否则会在Target服务器上留下僵死进程,浪费服务器资源.
 
       #iscsiadm -m node -T iqn.2012-12.com.xuhairl:iscsi-mysql -p 192.168.3.17:3260 --logout
 
      #iscsiadm -m node -T iqn.2012-12.com.xuhairl:iscsi-mysql -p 192.168.3.17:3260 -o delete