1.直接连接存储(DAS)

这可以从字面上来理解:直接连接到服务器,这是最早的磁盘和主机相互连接的方式。对小规模安装而言,这种方法可能仍是最佳选择。DAS价格低廉,安装和支持方便,但DAS的伸缩性不好,而且基础安装缺少以下两类产品具有的数据冗余性。不过,既然你所购买的只是一堆磁盘,就不要有太多奢望了。

可以改进DAS的性能,即采用硬件RAIDSCSI卡来增强冗余性,或者是采用光纤通道连接的磁盘,以获得更高的可伸缩性。不过,你真这么做,还不如考虑采用下述解决方案:NAS或者SAN

2.网络连接存储(NAS)

网络连接存储(NAS)是通过IP网络访问的存储系统,采用NFS或者CIFS协议(NFSUnix协议,CIFSWindows协议)。这两种协议实际上都可以在文件层面对数据进行操作,所以你在改动数据时,就是在改动整个文件。这有助于编辑改动不大频繁的电子表格(因为电子表格放在本地PC的内存中)的用户,不过并不适合大规模数据库,因为这种数据库可能会有容量达到数百兆的诸多文件。对这些大规模需求而言,就需要存储基础设施的重要角色:SAN

3.存储区域网络(SAN)

存储区域网络可以让众多存储部件和主机利用名为光纤通道的一种基础设施,相互连接起来。光纤通道包括多个交换机和光纤线缆,实施方式类似IP网络。

iscsi实现ip——sansannas

试验环境:

服务器端redhat5.5ip192.168.10.2且给服务器端增加一块硬盘

客户端redhat5.5ip192.168.10.20

1、首先修改服务器端的yum

cd/etc/yum.repos.d/

vimServer.repo

[ClusterStorage]

name=ClusterStorage

baseurl=file:///mnt/ClusterStorage

enabled=1

gpgcheck=0

[base]

name=base

baseurl=file:///mnt/Server

enabled=1

gpgcheck=0

同时客户端也需要修改yum

2、在服务器端上挂在光盘镜像

mount/dev/cdrom/mnt/

安装

yuminstalllibibverbs-devellibibverbslibrdmacmlibrdmacm-develscsi-target-utils–y

启动服务

/etc/init.d/tgtdstart

提示信息

StartingSCSItargetdaemon:Startingtargetframeworkdaemon

查看服务的启动进程

lsof-i:3260

COMMANDPIDUSERFDTYPEDEVICESIZENODENAME

tgtd4833root5uIPv615754TCP*:iscsi-target(LISTEN)

tgtd4833root6uIPv415755TCP*:iscsi-target(LISTEN)

tgtd4834root5uIPv615754TCP*:iscsi-target(LISTEN)

tgtd4834root6uIPv415755TCP*:iscsi-target(LISTEN)

以上信息就是提示安装成功

在做下面的操作之前必须先查看防火墙

iptables-L

iptables–F

iptables-X

现在的目的就是想共享刚才在服务器上添加的硬盘设备

先查看一下

fdisk-l

Disk/dev/sda:42.9GB,42949672960bytes

255heads,63sectors/track,5221cylinders

Units=cylindersof16065*512=8225280bytes

DeviceBootStartEndBlocksIdSystem

/dev/sda1*12520078183Linux

/dev/sda2262862096482+82Linuxswap/Solaris

/dev/sda3287522139640387+83Linux

Disk/dev/sdb:10.7GB,10737418240bytes

255heads,63sectors/track,1305cylinders

Units=cylindersof16065*512=8225280bytes

在这里要共享的是Disk/dev/sdb:10.7GB,10737418240bytes

首先创建分区

fdisk/dev/sdb

n

p

1

回车

自定义大小(m

w

partprobe/dev/sdb更新设备

查看新建分区

fdisk-l

Disk/dev/sda:42.9GB,42949672960bytes

255heads,63sectors/track,5221cylinders

Units=cylindersof16065*512=8225280bytes

DeviceBootStartEndBlocksIdSystem

/dev/sda1*12520078183Linux

/dev/sda2262862096482+82Linuxswap/Solaris

/dev/sda3287522139640387+83Linux

Disk/dev/sdb:10.7GB,10737418240bytes

255heads,63sectors/track,1305cylinders

Units=cylindersof16065*512=8225280bytes

DeviceBootStartEndBlocksIdSystem

/dev/sdb1110008032468+83Linux

分区新建成功

3、在服务器上创建target

创建命令:

tgtadm--lldiscsi--opnew--modetarget--tid1-Tiqn.2013-10-11.com.zhang.test:sdb1

#tgtadm--lldiscsi--opnew--modetarget--tid1-Tiqn.是固定格式

创建lun

tgtadm--lldiscsi--opnew--modelogicalunit--tid1--lun1-b/dev/sdb1

#需要修改的地方是-b/dev/sdb1根据需要而修改

设置访问控制

tgtadm--lldiscsi--opbind--modetarget--tid1-IALL

在这里是所有的人都能访问

查看创建的target

#tgtadm--lldiscsi--modetarget--opshow

Target1:iqn.2013-10-11.com.zhang.test:sdb1

Systeminformation:

Driver:iscsi

State:ready

I_Tnexusinformation:

LUNinformation:

LUN:0

Type:controller

SCSIID:IET00010000

SCSISN:beaf10

Size:0MB

Online:Yes

Removablemedia:No

Backingstoretype:rdwr

Backingstorepath:None

LUN:1

Type:disk

SCSIID:IET00010001

SCSISN:beaf11

Size:8225MB

Online:Yes

Removablemedia:No

Backingstoretype:rdwr

Backingstorepath:/dev/sdb1

Accountinformation:

ACLinformation:

ALL

在客户端设置

安装

yuminstalliscsi-initiator-utils–y

启动

/etc/init.d/iscsistart

iscsidisstopped

StartingiSCSIdaemon:[OK]

[OK]

SettingupiSCSItargets:iscsiadm:Norecordsfound!

[OK]

网络发现

iscsiadm-mdiscovery-tsendtargets-p192.168.10.2:3260

提示信息:192.168.10.2:3260,1iqn.2013-10-11.com.zhang.test:sdb1

登录

iscsiadm-mnode-Tiqn.2013-10-11.com.zhang.test:sdb1-p192.168.10.2-l

提示信息:

Logginginto[iface:default,target:iqn.2013-10-11.com.zhang.test:sdb1,portal:192.168.10.2,3260]

Loginto[iface:default,target:iqn.2013-10-11.com.zhang.test:sdb1,portal:192.168.10.2,3260]:successful

查看客户端的设备

fdisk-l

Disk/dev/sda:42.9GB,42949672960bytes

255heads,63sectors/track,5221cylinders

Units=cylindersof16065*512=8225280bytes

DeviceBootStartEndBlocksIdSystem

/dev/sda1*12520078183Linux

/dev/sda2262862096482+82Linuxswap/Solaris

/dev/sda3287522139640387+83Linux

Disk/dev/sdb:8225MB,8225247744bytes

254heads,62sectors/track,1020cylinders

Units=cylindersof15748*512=8062976bytes

Disk/dev/sdbdoesn'tcontainavalidpartitiontable

对于客户端的使用也是先创建分区

fdisk/dev/sdb

n

p

1

回车

Size大小

w

执行partprobe/dev/sdb

创建文件系统(执行格式化)

mkfs.ext3/dev/sdb1

[root@zhan~]#mkdir-pv/tmp/iscsi

mkdir:createddirectory`/tmp/iscsi'

[root@zhan~]#mount/dev/sdb1/tmp/iscsi

[root@zhan~]#cp/etc/passwd/tmp/iscsi/

[root@zhan~]#cd/tmp/iscsi/

[root@zhaniscsi]#ls

lost+foundpasswd

这个算是使用这个块设备

如果不使用的话

就可以执行

[root@zhantmp]#umount/tmp/iscsi/

[root@zhantmp]#iscsiadm-mnode-Tiqn.2013-10-11.com.zhang.test:sdb1-p192.168.10.2-u

Loggingoutofsession[sid:1,target:iqn.2013-10-11.com.zhang.test:sdb1,portal:192.168.10.2,3260]

Logoutof[sid:1,target:iqn.2013-10-11.com.zhang.test:sdb1,portal:192.168.10.2,3260]:successful

这样就没有了

如果以后再想用,就再次登录,执行上面的登录操作

[root@zhantmp]#iscsiadm-mnode-Tiqn.2013-10-11.com.zhang.test:sdb1-p192.168.10.2-l

Logginginto[iface:default,target:iqn.2013-10-11.com.zhang.test:sdb1,portal:192.168.10.2,3260]

Loginto[iface:default,target:iqn.2013-10-11.com.zhang.test:sdb1,portal:192.168.10.2,3260]:successful

[root@zhantmp]#mount/dev/sdb1/tmp/iscsi/

[root@zhantmp]#cd/tmp/iscsi/

[root@zhaniscsi]#ls

lost+foundpasswd

这个功能和nfs不同的是,nfs可以调用rpc(远端进程调用),实现网络锁

可以多个人使用一个目录

iscsi不能多人同时使用

如果想多人一起使用解决办法可以是iscsi+gfs(全局文件系统)