SAN iSCSI网络存储配置+ iSCSI GFS网络集群
        iSCSI主要是透过TCP/IP的技术,将储存设备端透过iSCSI target(iSCSI目标)功能,做成可以为服务器端提供软碟的”终端“,再通过iSCSI initiator(iSCSI 初始化用户)功能,做成能够挂载使用iSCSI target的用户端,这样就能够使用SCSI设备了。

iSCSI target:就是储存设备端,存放软碟或RAID的设备,目的在于为其他主机提供存储设备;
iSCSI initiator:就是能够使用target的用户端,通常是服务器。也就是说,想要连接到iSCSI target的服务器,必须要安装iSCSI initiator的相关功能。

实验规划:
“终端”:192.168.0.27(server)
“服务器”:192.168.0.63(client1) 192.168.0.75(client2)
【先以client1做网络存储配置实验,再加上client2做集群测试】

A.【server】
1、准备存储:(这里以lvm创建lv作为共享存储)
[root@desktop27 server]# vgs
  VG   #PV #LV #SN Attr   VSize  VFree
  vol0   3   4   0 wz--n- 55.25g 15.06g
(空间够了,我取4G做共享吧)
[root@desktop27 server]# lvcreate -L 4G -n iscsi_test vol0   
  Logical volume "iscsi_test" created
[root@desktop27 server]# ls /dev/vol0/iscsi_test
/dev/vol0/iscsi_test
(检查lv创建成功)

2、server上安装 scsi-target-utils
[root@desktop27 server]# yum install scsi-target-utils -y
3、配置server端,加入存储设备 iscsi_test
[root@desktop27 server]# vim /etc/tgt/targets.conf
注意:
***target定义格式:
【iqn.yyyy-mm.<reversed domain name>:target_name】
【iqn.年-月.域名反写.target的名字】
***常见参数说明:
backing-store/direct-store:如果你的整个磁盘都拿来做iscsi分享用,那么使用direct-store,一般情况下都优先使用backing-store参数。
initiator-address:如果你想要限制能够使用这个target的用户端来源,才需要填写这个。
incominguser:如果除了来源 IP 的限制之外,还可以限定输入帐号密码才能使用。

配置文件里有相应的模板,我复制一份改成下面这样:
<target iqn.2012-03.com.example:kevin>    //日期,名字
    backing-store /dev/vol0/iscsi_test    //分享的存储
    initiator-address 192.168.0.0/24    //允许发现target的client,不写则为全部允许
    incominguser kevin kevin    //要求有正确的用户和密码,可以不用
</target>

启动tgtd服务并设置开机启动:
[root@desktop27 server]# service tgtd start
[root@desktop27 server]# chkconfig tgtd on

查看所开启的端口和分享的存储:
[root@desktop27 server]# netstat -antlp | grep tgt
tcp     0     0 0.0.0.0:3260      0.0.0.0:*      LISTEN    1792/tgtd          
[root@desktop27 server]# tgt-admin --show
Target 1: iqn.2012-03.com.example:kevin
    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
            Online: Yes
            Removable media: No
            Backing store type: rdwr
            Backing store path: None
        LUN: 1
            Type: disk
            SCSI ID: IET     00010001
            SCSI SN: beaf11
            Size: 4295 MB
            Online: Yes
            Removable media: No
            Backing store type: rdwr
            Backing store path: /dev/vol0/iscsi_test   
(就是刚分出的存储)
    Account information:
        kevin   
(账户kevin)
    ACL information:
        192.168.0.0/24   
(允许的ip网段)

为了让client能发现target,还得iptables允许呀,设定iptables:
[root@desktop27 server]# iptables -A INPUT -p tcp -s 192.168.0.0/24 --dport 3260 -j ACCEPT
[root@desktop27 server]# /etc/init.d/iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[  OK  ]
好了,到这里server端就设定好了。

B.【client】
1、安装client软件 iscsi-initiator-utils
[root@desktop63 client1]# yum install iscsi-initiator-utils -y
我们知道刚刚target有设定帐号和密码kevin,所以就得要修改一下/etc/iscsi/iscsid.conf的内容才行。(修改为kevin)
 53 node.session.auth.username = kevin
 
54 node.session.auth.password = kevin
 
67 discovery.sendtargets.auth.username = kevin
 
68 discovery.sendtargets.auth.password = kevin

由于我们还没有与target接入,所以iscsi是无法顺利启动的!因此只需要服务开机启动就可以了,现在不用启动他。
[root@desktop63 client1]# chkconfig iscsid on
[root@desktop63 client1]# chkconfig iscsi on
现在用命令iscsiadm发现共享设备吧:
[root@desktop63 client1]# iscsiadm -m discovery -t st -p 192.168.0.27    (st:senttargets)
Starting iscsid:                                           [  OK  ]
192.168.0.27:3260,1 iqn.2012-03.com.example:kevin
[root@desktop63 client1]# iscsiadm -m node -l    (l:login)
Logging in to [iface: default, target: iqn.2012-03.com.example:kevin, portal: 192.168.0.27,3260]
Login to [iface: default, target: iqn.2012-03.com.example:kevin, portal: 192.168.0.27,3260] successful.
查看一下:
[root@desktop63 client1]# ls /var/lib/iscsi/nodes/
iqn.2012-03.com.example:kevin
[root@desktop63 client1]# ls /dev/sd*
/dev/sda  /dev/sda1  /dev/sda2  /dev/sdb   
(sdb就是啦,现在可以格式化自己挂载使用了,注意以后开机得保证server端先于client开机,不然client一直挂载target而开机出现问题)
挂载参数:/etc/fstab
[设备] [挂载点] [文件系统格式] [defaults,_netdev] [是否备份] [启动时扫描顺序]

到server端查看一下吧:
[root@desktop27 server]# tgt-admin --show
Target 1: iqn.2012-03.com.example:kevin
    System information:
        Driver: iscsi
        State: ready
    I_T nexus information:
        I_T nexus: 1
            Initiator: iqn.1994-05.com.redhat:b87850f11eeb
            Connection: 0
                IP Address: 192.168.0.63  
  (client1连接上了)

正常卸载命令:
[root@desktop63 client1]# iscsiadm -m node -p 192.168.0.27 -u    (退出登录)
[root@desktop63 client1]# iscsiadm -m node -p 192.168.0.27 -o delete    (删除发现的设备)

集群实验:将iSCSI GFS2 整合到RHCS中实验统一部署管理
http://linuxkeep.blog.51cto.com/1010009/803550


留下联系方式QQ345258361,有错误还望指正~