Ip-san 的配制

共享存储方式

1.Das直接附加存储(直接连接到主机)

2.Nas网络附加存储(提供共享机制nfs samba

--Windows 共享 cifs

简化操作系统 nfscifs smb 文件级别共享

效率低安全性不高

3.san 存储区域网络

 Scsi总线分为窄带7个可用控制器)宽带 16 15个可用的控制器)

--是块共享,代价高昂,需要光纤交换机,解决这样的问题采用iscsi基于ipscsi机制

相当于在两端安装scsi协议封装要传输的数据

San的分类:1>.Fcsan  2>.Ip san scsi

本地文件系统(ext2ext3 ext4)不能做群集共享。

--drbd通过网络把两个主机对接,保持两台主机的数据同步

--Active/active 需要两个流动ip

群集文件系统

Jfs12版本文件系统,有推送的能力,Rehat   jfs2

Ocfs12版本文件系统               Oracle  ocfs2

Ip-scan 的配制

一.Target配制

1.配置yum仓库

拓扑图:

Ip san 存储的配制_第1张图片

[rhel-server]

name=Red Hat Enterprise Linux server

baseurl=file:///mnt/cdrom/Server/

enabled=1

gpgcheck=1

gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release

[rhel-Clusterstorage]

name=Red Hat Enterprise Linux server

baseurl=file:///mnt/cdrom/ClusterStorage/

enabled=1

gpgcheck=1

gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release

2.安装 scsi-target-utils -y --nogpgcheck

[root@localhost yum.repos.d]# yum install scsi-target-utils -y --nogpgcheck

启动tgtd服务,并设置开机启动。

[root@localhost yum.repos.d]# service tgtd start

Starting SCSI target daemon:                               [确定]

[root@localhost yum.repos.d]# chkconfig tgtd on

3.现在去添加磁盘

[root@localhost ~]# fdisk -l

[root@localhost ~]# fdisk /dev/sdb

[root@target ~]# cat /proc/partitions

major minor  #blocks  name

   8     0   20971520 sda

   8     1     104391 sda1

   8     2   20755980 sda2

   8     3     104422 sda3

   8    16   10485760 sdb

   8    17    4120641 sdb1

4.Target 上的操作,可以通过man帮助

 tgtadm --lld [driver] --op [operation] --mode [mode] [OPTION]...

 --lld [driver] --op new --mode target --tid=[id] --targetname [name]

采用iqn 格式

Iqn.日期【年-月】.域名【反写】.string:substring

[root@target ~]# tgtadm --lld iscsi --op new  --mode target --tid 1  --targetname iqn.2012-12.com.a.target:disk

查看

[root@target ~]# tgtadm --lld iscsi --op show --mode target

Target 1: iqn.2012-12.com.a.target:disk

    System information:

        Driver: iscsi   驱动名称

        State: ready    状态

    I_T nexus information:

    LUN information:

        LUN: 0             逻辑单元号。  0-15 0是不能用的,是控制器自身。

            Type: controller    控制器

            SCSI ID: deadbeaf1:0

            SCSI SN: beaf10

            Size: 0 MB

            Online: Yes

            Removable media: No

            Backing store: No backing store

        LUN: 1

            Type: disk

            SCSI ID: deadbeaf1:1

            SCSI SN: beaf11

            Size: 4220 MB

            Online: Yes

            Removable media: No

            Backing store: /dev/sdb1

    Account information:

ACL information:

5.控制器写好了,没有磁盘。添加磁盘格式

[root@target ~]# tgtadm --lld iscsi --op new --mode=logicalunit --tid=1  --lun=1  --backing-store /dev/sdb1

Ip san 存储的配制_第2张图片

二.Initiator  target 的认证

1.地址 2.Chap

1.做出认证。语法格式。

 Tgtadm  --lld [driver] --op bind --mode=target --tid=[id] --initiator-address=[address]

[root@target ~]# tgtadm  --lld iscsi --op bind --mode=target --tid=1 --initiator-address=192.168.10.0/24   绑定10的网段。

2.这些命令都是临时的指令,重启完电脑以后就会消失的。可以写到脚本里面。

[root@target ~]# vim /etc/rc.d/rc.local  #写到这里面就行了。

也可以在配置文件中编辑如下:

[root@target ~]# vim /etc/tgt/targets.conf 

Ip san 存储的配制_第3张图片

3.保存退出即可 target的配置基本完成。现在要去配置initiator了。

三.客户端配置

配置如下:server1

[root@server1 Server]# rpm -ivh iscsi-initiator-utils-6.2.0.871-0.10.el5.i386.rpm

1.安装完以后查看本地磁盘如下:

[root@server1 Server]# fdisk -l

   Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *           1          13      104391   83  Linux

/dev/sda2              14        2597    20755980   83  Linux

/dev/sda3            2598        2610      104422+  82  Linux swap / Solaris

2.编辑为initiator指明iqn的名字。

[root@server1 Server]# vim /etc/iscsi/initiatorname.iscsi 

InitiatorName=iqn.2012-12.com.a.server1

启动iscis

[root@server1 Server]# service iscsi start

3.虽然已经启动但是没有发现target需要工具。

语法格式:

 iscsiadm --mode discovery --type sendtargets --portal 192.168.1.10

已经发现

[root@server1 Server]#   iscsiadm --mode discovery --type sendtargets --portal 192.168.10.40

192.168.10.40:3260,1 iqn.2012-12.com.a.target:disk

4.下面就要连接: 可以发现已经连接上了。

[root@server1 Server]#  iscsiadm --mode node --targetname iqn.2012-12.com.a.target:disk --portal 192.168.10.40:3260 --login

Logging in to [iface: default, target: iqn.2012-12.com.a.target:disk, portal: 192.168.10.40,3260]

Login to [iface: default, target: iqn.2012-12.com.a.target:disk, portal: 192.168.10.40,3260]: successful

5.target上做查看如下:

[root@target ~]# tgtadm --lld iscsi --op show --mode target

Target 1: iqn.2012-12.com.a.target:disk

    System information:

        Driver: iscsi

        State: ready

    I_T nexus information:

        I_T nexus: 3

            Initiator: iqn.2012-12.com.a.server1

            Connection: 0

                IP Address: 192.168.10.20    #可以发现已经连上的客户端。

6.server1上进行分区操作:

[root@server1 Server]# fdisk -l

Disk /dev/sda: 21.4 GB, 21474836480 bytes

255 heads, 63 sectors/track, 2610 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *           1          13      104391   83  Linux

/dev/sda2              14        2597    20755980   83  Linux

/dev/sda3            2598        2610      104422+  82  Linux swap / Solaris

Disk /dev/sdb: 4219 MB, 4219536384 bytes

130 heads, 62 sectors/track, 1022 cylinders

[root@server1 Server]# fdisk /dev/sdb

/dev/sdb1               1         513     2067359   83  Linux

[root@server1 Server]# mkfs -t ext3 /dev/sdb1  #建立本地文件系统

[root@server1 Server]# mkdir /mnt/abc

[root@server1 Server]# mount /dev/sdb1 /mnt/abc

[root@server1 Server]# mount

/dev/sdb1 on /mnt/abc type ext3 (rw)

[root@server1 Server]# df -h

文件系统              容量  已用 可用 已用挂载点

/dev/sda2              20G  2.1G   17G  12% /

/dev/sda1              99M   12M   83M  12% /boot

tmpfs                 125M     0  125M   0% /dev/shm

/dev/hdc              2.8G  2.8G     0 100% /mnt/cdrom

/dev/sdb1             2.0G   36M  1.9G   2% /mnt/abc

7.现在就可以在文件系统上进行I/O操作了。

[root@server1 abc]# mkdir server1

[root@server1 abc]# ll

总计 24

drwx------ 2 root root 16384 12-31 20:19 lost+found

drwxr-xr-x 2 root root  4096 12-31 20:30 server1

8.server2上和server1上做同样的操作

[root@server2 Server]# vim /etc/iscsi/initiatorname.iscsi 

InitiatorName=iqn.2012-12.com.a:server2

9.发现target

[root@server2 Server]# iscsiadm --mode discovery --type sendtargets --portal 192.168.10.40

192.168.10.40:3260,1 iqn.2012-12.com.a.target:disk

10连接target

iscsiadm --mode node --targetname iqn.2012-12.com.a.target:disk --portal 192.168.10.40:3260 --login

Login to [iface: default, target: iqn.2012-12.com.a.target:disk, portal: 192.168.10.40,3260]: successful

11.创建挂载点并挂载。

[root@server1 Server]# mkdir /mnt/abc

[root@server1 Server]# mount /dev/sdb1 /mnt/abc

12.Target上查看如下:

[root@target ~]# tgtadm --lld iscsi --op show --mode target

Target 1: iqn.2012-12.com.a.target:disk

    System information:

        Driver: iscsi

        State: ready

    I_T nexus information:

        I_T nexus: 3

            Initiator: iqn.2012-12.com.a.server1

            Connection: 0

                IP Address: 192.168.10.20

        I_T nexus: 4

            Initiator: iqn.2012-12.com.a:server2

            Connection: 0

                IP Address: 192.168.10.30

本地文件系统,没有锁机制,没有推送机制。

没有锁机制 挂载的客户端都可以对共同能够发现的文件同一时间进行修改

比如这个 drwx------ 2 root root 16384 12-31 20:19 lost+found

没有推送机制。即在server2上创建的文件在server1看不到。

[root@server2 abc]# ll

总计 40

-rw-r--r-- 1 root root     4 12-31 20:40 abc

drwx------ 2 root root 16384 12-31 20:19 lost+found

drwxr-xr-x 2 root root  4096 12-31 20:39 server2

[root@server1 abc]# ll

总计 32

drwxr-xr-x 2 root root  4096 12-31 20:39 1

drwx------ 2 root root 16384 12-31 20:19 lost+found

drwxr-xr-x 2 root root  4096 12-31 20:30 server1

登出

[root@server1 ~]#  iscsiadm --mode node --targetname iqn.2012-12.com.a.target:disk --portal 192.168.10.40:3260 --logout

[root@server1 ~]# umount /mnt/abc   卸载/abc

登陆

[root@server1 ~]#  iscsiadm --mode node --targetname iqn.2012-12.com.a.target:disk --portal 192.168.10.40:3260 --login

[root@server1 ~]# mount /dev/sdb1 /var/www/html

[root@server1 ~]# vim /var/www/html/index.html

server1

注:如果server1想让server2看到自己建的文件,当server2退出时,建文件,server2再次登陆就行了。   尽量使用群集文件系统。