1.直接连接存储(DAS)
这可以从字面上来理解:直接连接到服务器,这是最早的磁盘和主机相互连接的方式。对小规模安装而言,这种方法可能仍是最佳选择。DAS价格低廉,安装和支持方便,但DAS的伸缩性不好,而且基础安装缺少以下两类产品具有的数据冗余性。不过,既然你所购买的只是一堆磁盘,就不要有太多奢望了。
可以改进DAS的性能,即采用硬件RAIDSCSI卡来增强冗余性,或者是采用光纤通道连接的磁盘,以获得更高的可伸缩性。不过,你真这么做,还不如考虑采用下述解决方案:NAS或者SAN。
2.网络连接存储(NAS)
网络连接存储(NAS)是通过IP网络访问的存储系统,采用NFS或者CIFS协议(NFS是Unix协议,CIFS是Windows协议)。这两种协议实际上都可以在文件层面对数据进行操作,所以你在改动数据时,就是在改动整个文件。这有助于编辑改动不大频繁的电子表格(因为电子表格放在本地PC的内存中)的用户,不过并不适合大规模数据库,因为这种数据库可能会有容量达到数百兆的诸多文件。对这些大规模需求而言,就需要存储基础设施的重要角色:SAN。
3.存储区域网络(SAN)
存储区域网络可以让众多存储部件和主机利用名为光纤通道的一种基础设施,相互连接起来。光纤通道包括多个交换机和光纤线缆,实施方式类似IP网络。
iscsi实现ip――san、san、nas
试验环境:
服务器端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�Cy
启动服务
/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�CF
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�Cy
启动
/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(全局文件系统)