ISCSI

一、简介

  ISCSI主要是通过TCP/IP的技术,将存储设备端通过ISCSI target的功能,做成可以提供磁盘的服务器端,再通过ISCSI initiator功能,做成能够挂载使用ISCSI target的客户端,如此便能通过ISCSI协议来进行磁盘的应用了。

  简而言之,就是将target(服务器)端的磁盘提供给initiator(客户端)使用。

二、组成

  ISCSI主要由两部分组成

  1、ISCSI target:就是存储设备端,提供磁盘或RAID,即服务端;

  2、ISCSI initiator:就是能够发现target的客户端;

  注释:本文使用linux操作系统(kylin3.2.5)作为服务端。

三、ISCSI target

  1、磁盘准备

    ISCSI服务器可以使用真实机操作,也能使用虚拟机搭建,这里用虚拟机搭建示范。

    服务器端需要提供单独的磁盘来提供给其他主机使用,本文使用“/dev/sdb”盘。如下图所示“硬盘2”

    

  2、安装target包

    target需要如下两个rpm包,大家可以去网上下载或者从linux系统文件中安装yum源

      perl-Config-General-2.40-1.noarch.rpm(可能已经安装)

      scsi-target-utils-0.0-5.20080917snap.ky3.x86_64.rpm

    我使用的是直接从系统文件中安装yum源,步骤如下:

   3、挂载镜像文件

      如上图所示,虚拟机设置,点击【浏览】,找到kylin操作系统文件,设备状态点击“已连接”,虚拟机挂载光盘成功,df查看:

      

   4、安装yum源

          进入挂载目录

      [root@localhost tgt]# cd /media/NeoKylin-3.2/KYLIN

      安装iscsi target 包

      [root@localhost KYLIN]# yum install iscsi-initiator-utils-6.2.0.873-10.ky3.x86_64.rpm 

      遇到提示,输入“y”即可;

   5、修改配置文件

      在target.conf文件中添加如下字段。

      [root@localhost KYLIN]# vi /etc/tgt/targets.conf      

        <target iqn.iscsi:server.target1>  
          backing-store /dev/sdb
          initiator-address 10.60.1.181
          initiator-address 10.60.1.180
          incominguser iscsi qwer1234qwer1234

          wirte-cache off
        </target>

      解释:

        iqn.iscsi:启动器名称

        backing-store:虚拟机设备,即提供的磁盘。也可以使用硬盘的某个分区,如:sdb1;

        direct-store:实际设备(虚拟机中不要使用);

        initiator-adress:用户地址。后面加入地址后,代表仅有该地址的主机才能连接该磁盘;(可不写)

        incominguser:用户账号和密码设置。iscsi为账号,qwer1234qwer1234为密码。客户端检测、连接时使用的账号密码;(可不写)

        write-cach2 [off|on]:是否使用缓存。默认情况下,tgtd会使用缓存来提高速度,不过,这样可能会有遗失数据的风险;

   6、启动tgtd

        service tgtd start

   7、查看target信息

       [root@localhost KYLIN]# tgt-admin --show

                        Target 1: iqn.iscsi:server.target1
                              System information:
                              Driver: iscsi
                              State: ready
                        I_T nexus information:
                               I_T nexus: 1
                               Initiator: iqn.iscsi
                               Connection: 1
                               IP Address: 10.60.1.180
                        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
                             Backing store type: null
                             Backing store path: None
                             Backing store flags:
                        LUN: 1
                            Type: disk                            
                            SCSI ID: IET 00010001
                            SCSI SN: beaf11
                            Size: 21475 MB, Block size: 512            ------磁盘容量大小
                            Online: Yes
                            Removable media: No
                            Prevent removal: No
                            Readonly: No
                            Backing store type: rdwr
                            Backing store path: /dev/sdb                -------------磁盘所在的实际文件名
                            Backing store flags:
                     Account information:
                                  iscsi                                               --------账号
                     ACL information:
                            10.60.1.181                                        --------受限IP
                            10.60.1.180            ---------受限IP

   8、关闭防火墙

        service iptables stop 

   9、设置开机自启

        chkconfig tgtd on

四、ISCSI initiator(linux客户端)

   1、安装initiator

      安装步骤参考“安装target”。

      iscsi-initiator-utils-6.2.0.868-0.18.ky3.x86_64.rpm

   2、修改iscsi.conf文件   

      增加下面几行设置:

      node.session.auth.username = iscsi                  -------连接时使用的账号  

      node.session.auth.password = qwer1234qwer1234       -------连接时使用的密码

      discovery.sendtargets.auth.username = iscsi           -------检测时使用的账号

      discovery.sendtargets.auth.password = qwer1234qwer1234---监测时使用的密码

    3、启动iscsid

      service iscsid start

  

    4、 连接/查看/注销

    •   连接所有检测到的targets

        service iscsi start

    

    •   连接指定节点:

        iscsiadm –m node –T iscsi –P 10.60.1.182 –l

    •   注销某个target

        iscsiadm –m node –p 10.60.1.182 –u

    •   查看挂载的硬盘

        iscsiadm –m session –P 3

 五、ISCSI initiator(windows客户端)

   1、打开ISCSI程序

     点击【开始】菜单按钮,输入“iscsi”启动ISCSI程序。

   2、修改启动器

    点击【配置】—【更改】

    根据实际情况修改启动器名称

  

  3、连接目标

  点击【目标】输入目标地址,点击【快速连接】

  

  点击【连接】—【高级设置】—【启动CHAP登录】,输入CHAP认证账户/密码。点击完成

  

  连接成功

  

原文地址:https://www.cnblogs.com/ykhyq/p/9602802.html