iscsi配置共享存储高级应用

云计算 虚拟化
利用iscsi target软件,可以将服务器的存储空间分配给客户机使用,客户机就可以像使用本地硬盘一样使用iscsi磁盘.

本文系统Centos6.0

本文主要是iscsi存储配置及安全验证方面的应用;

关于iscsi方面的介绍大家去查询很多资料;这里就不废话了;直接进入主题

iscsi target

一个可以被用于存储数据的iscsi磁盘阵列或者具有iscsi功能的设备都可以被称为iscsi target

利用iscsi target软件,可以将服务器的存储空间分配给客户机使用,客户机就可以像使用本地硬盘一样使用iscsi磁盘

相关软件;比如linux平台的iscsi enterprise target

Iscsi initiator

Iscsi initiator是一个安装在计算机上的一个软件或是一个硬件设备,它负责处理同iscsi存储设备进行通信。

相关软件;linux平台的iscsi initiator。Windows平台也有,比如win7自带的Iscsi发起程序;下面会分别介绍;

关于Iscsi存储数据过程;会先进行封装iscsi协议加tcp/ip协议头进行传输

 

 

一、下面就是简单展示案例拓扑了:

 

 

Linux iscsi target : ServerA : 192.168.182.132

linux iscsi initiator : Client A:192.168.182.133

 

Windows7 :Client B:192.168.182.134#p#

1、Server A 安装target程序:

1

2

3

4wget http://nchc.dl.sourceforge.net/project/iscsitarget/iscsitarget/1.4.20.2/iscsitarget-1.4.20.2.tar.gz

cd iscsitarget-1.4.20.2

make

make install

然后你就可以使用service 进行管理

 

 

事先提醒:本Server端有三块硬盘,sda,sdb,sdc;sdb为2G;sdc为3G;

 

 

接下来配置主配置文件:(先实验将sdb共享,让linux client和windows client发现 )

1

2

3[root@centos iet]# vim ietd.conf

Target iqn.2013-07-17.com.lansgg:storage.disk2.sdb

Lun 0 Path=/dev/sdb,Type=fileio,ScsiId=xyz,ScsiSN=xyz

注释:

1

2

3

4

5

6

7

8Target iqn.2013-07.com.lansgg:storage.disk2.sdb

Iqn.yyyy-mm.:[identifier]

Iqn:表示iscsi squalfled name 简称iqn

Yyyy-mmm:表示年份-月份。

Reversed domain name:表示倒过来的域名。

Identifier:标识识别代码。这里是storage.disk2.sdb

Lun 0 path=/dev/sdb.Type=fileio,scsild=xyz,SisiSN=xyz

Lun 0 Path=/dev/sdb 表示块设备号为0,映射的磁盘为/dev/sdb,type 值fileio是默认的可以用于磁盘、file和lvm,这里设定的的是fileio,主要用来对一个磁盘进行存储共享。

 

 

 

 

 

接下来在Windows client进行操作:: (客户端过程大概就是:发现>>连接)#p#

我的windows os 是win7,使用其自带的iscsi initiator程序;

 

 

双击后;点击“发现”选项卡

 

 

切换到“目标”选项卡后;你会发现我们共享出来的sdb

 

 

点击确定后;状态更换为“已连接”状态

现在你去右键电脑管理,发现一块2G的硬盘

 

 

进行格式化;

你会发现一个2G的盘;我这里将他格式化为FAT32的一个分区;在里面写了一个test的文件,内容是test;

 

 

接下来在linux client进行操作

1[root@centos ~]# yum install iscsi-initiator* -y

你会发现启动 service iscsid start 是无效的;这也是当时让我很郁闷的一件事情;

我们就直接进行discovery吧,他会自动启动程序

 

 

自动启动了iscsid;接下来我们进行启动iscsi

 

 

Ps:每次成功执行一次targets发现后,iscsi initiator就会将查询记录写到/var/lb/iscsi/send_targets对应的目录下。因此,只需成功一次discovery即可;

里面会记录一下信息,可以去cat下

 

 

里面记录了很多的信息;

通过iscsiadm 指令与iscsi targets建立关联

 

iscsiadm是用来管理(更新、删除、插入、查询)iscsi配置数据库文件的命令行工具,用户能够用他对iscsi nodes、sessions、connections和discovery records进行一系列的操作;#p#

1、登录 iscsi target; 也就是上面说的“连接”;因为上面已经discovery过了

1[root@centos ~]# iscsiadm -m node -T iqn.2013-07.com.lansgg:storage.disk2.sdb -p192.168.182.131 -l

 

 

Ps:这里的“-T”后面跟target名称,“ip-address”是target主机的ip地址,“port”是target主机的端口号,默认是3260 -l 代表 --login

现在我们进行fdisk查看

 

 

注意后面的System标识为FAT32;因为本盘已经在windows进行了格式化,并且创建了test文件;见上面。

现在来看看这个test文件:

 

 

成功看到~

2、如何我们不想使用想断开呢?

1[root@centos ~]# iscsiadm -m node -T iqn.2013-07.com.lansgg:storage.disk2.sdb -p192.168.182.131 -u

 

 

现在你fdisk就看不到sdb了;

3、查看iscsi session和设备信息

1

2

3[root@centos ~]# iscsiadm -m session

###就会提示如下#####

tcp: [5] 192.168.182.131:3260,1 iqn.2013-07.com.lansgg:storage.disk2.sdb

如果一个target下新增了一个卷,在服务器上使用iscsiadm -m session -R 命令可以刷新当前连接的session以看到新增的卷;

1[root@centos ~]# iscsiadm -m session -R

4、查看有那些target记录在了数据库中;

1[root@centos ~]# iscsiadm -m node

5、查看target存储端相关配置信息;

1[root@centos ~]# iscsiadm -m node -T iqn.2013-07.com.lansgg:storage.disk2.sdb -p192.168.182.131

二、基于安全验证的共享存储配置;

其实,在上面已经发现了,我们将硬盘共享出去后,谁都可以发现,连接,使用,这就不能保证自己的数据安全,不方便管理,上面的文件内容可能不只你自己的;

现在我们进行基于安全验证的配置;

比如:sdb硬盘共享出去给Windows主机使用,sdc给linux主机使用;

(只允许客户端主机A连接target共享出来的磁盘分区一,而客户端主机B只允许连接target共享出来的磁盘分区二)

在安全控制上有两个手段,一个就是我们指定某个ip使用某个共享区域;另一个就是账户、密码验证;

方式一:指定授权ip访问共享磁盘

sdb; iqn.2013-07.com.lansgg:storage.disk2.sdb (windows使用) ip:192.168.182.135

sdc ; iqn.2013-07.com.lansgg:storage.disk2.sdc (linux使用) ip:192.168.182.133

1

2

3

4[root@centos iet]# vim /etc/iet/initiators.allow

#ALL ALL #将默认的注释掉

iqn.2013-07.com.lansgg:storage.disk2.sdb 192.168.182.135

iqn.2013-07.com.lansgg:storage.disk2.sdc 192.168.182.133

重启server端iscsi-target服务,你会发现sdb归135所有使用权,sdc归133所有使用权

在client端重启iscsi进行触发即可;

方式二:client主机以密码认证获取iscsi target资源;

配置server端

1

2

3

4

5

6

7

8[root@centos iet]# vim /etc/iet/ietd.conf

IncomingUser discoveryuser discoverysecret

##第一个“IncomingUser”是个全局参数,用来指定discovery查询认证所使用的帐号和密码

Target iqn.2013-07.com.lansgg:storage.disk2.sdb

IncomingUser lansgg lansggsecret

Lun 0 Path=/dev/sdb,Type=fileio,ScsiId=xyz,ScsiSN=xyz

##第二个IncomingUser是login认证;

关于sdc的认证是一样的配置

Ps:ip验证和密码验证不能共存;

这里用windows来验证下;

首先进行discovery

 

 

然后进行login操作

 

 

最后查看连接成功:

 

 

然后在linux客户端验证:

1

2

3

4

5

6

7

8

9vim /etc/iscsi/iscsid.conf

#以下三个是针对discovery的

Discovery.sendtargets.auth.authmethod=chap #表示discovery时启用chap验证

Discovery.sendtargets.auth.username=discoveryuser #验证用户名称,可以是任意字符,但必须与target端的incominguser配置的名称一致。

Discovery.sendtargets.auth.password=discoverysecret #验证密码,必须与target对应的incominguser选择设置的密码一致;

#以下三个是针对login的

Node.session.auth.authmethod=chap #表示在login时启用chap验证。

Node.session.auth.username=lansgg #验证用户名称,可以是任意字符,但必须与target端的incominguser配置的名字一致。

Node.session.auth.password=lansggsecret #验证密码,必须与target端对应的incominguser选项配置的密码一致。

继续安装上面linux client进行discovery、login即可;然后格式化就可以使用了;

友情提示:

管理共享磁盘:

》Linux 上的ext文件系统的一个特性,对某个分区mount、umount很多次后会或者隔一个固定的时间后,系统会对该分区进行检测,这就会导致硬盘反映速度很慢,影响业务,本操作的目地就是去掉文件系统自动检查的属性;

Tune2fs 修改文件系统的属性,去掉自动检查的属性:

1Tune2fs -c -1 -i 0 /dev/sdb5 # /dev/sdb5为挂载的共享磁盘

2》设定文件系统的自动挂载

使用uid标识进行挂载

1

2

3Tune2fs -l /dev/sdb5

Vim /etc/fstab

UUID=uuid /data ext3 _netdev 0 0

磁盘设备的名称可能会发生变化,从而引起文件系统不能挂载上来或者不能正确挂载,使用

 

_netdev 是针对iscsi设备的特殊mount选项,此挂载选择指示将在网络启动后挂载改卷,在关闭网络前卸载改卷。

责任编辑:老门 来源: 51cto博客
相关推荐

2021-12-15 08:29:46

Starwind ISCSI 共享存储

2011-12-23 10:45:34

虚拟化桌面虚拟化SRM

2013-06-19 09:43:47

vSphereiSCSINFS

2018-05-16 09:08:40

ISCSI网络存储

2017-11-13 10:04:08

IP存储iSCSI

2009-11-05 09:08:38

iSCSI技术

2009-07-20 09:18:38

存储虚拟化服务器虚拟化iSCSI

2021-07-05 09:40:25

iSCSI存储协议以太网

2009-11-13 09:46:32

LinuxDHCP高级配置

2018-04-28 09:20:19

DASNASSAN

2012-05-09 11:12:47

Linuxiscsi存储服务

2019-04-09 11:24:20

存储

2013-02-25 10:19:20

存储虚拟化集群共享卷

2012-12-17 11:15:47

VDI共享存储桌面虚拟化

2011-11-11 10:31:07

Ubuntu浏览器

2011-08-05 09:43:51

2011-08-16 14:37:35

2009-09-14 09:17:43

.settings配置

2010-12-31 10:51:32

2019-11-27 16:34:00

配置
点赞
收藏

51CTO技术栈公众号