iSCSI远程块存储

一.概念

iSCSI(Internet SCSI)支持从客户端(发起端)通过IP向远程服务器上的SCSI存储设备(目标)发送SCSI命令。iSCSI限定名称用于确定发起端和目标,并采用iqn.yyyy-mm.{reverse domain}:label的格式。默认情况下,网络通信是至iSCSI目标上的端口3260/tcp的明文。

l1. iSCSI发起端:需要访问原始SAN存储的客户端。

l2. iSCSI目标:从iSCSI服务器提供的远程硬盘磁盘,或“目标门户”

l3. iSCSI目标门户:通过网络向发起端提供目标的服务器。

l4. IQN:“iSCSI限定名称”。每个发起端和目标需要唯一名称进行标识,

最好的做法是使用一个在Internet上可能独一无二的名称。

二.iSCSI目标配置

Demo

/> ls

o- / ..................................................................... [...]

o- backstores .......................................................... [...]

| o- block .............................................. [Storage Objects: 0]

| o- fileio ............................................. [Storage Objects: 0]

| o- pscsi .............................................. [Storage Objects: 0]

| o- ramdisk ............................................ [Storage Objects: 0]

o- iscsi ........................................................ [Targets: 0]

o- loopback ..................................................... [Targets: 0]

/> /backstores/block create server0.disk1 /dev/iSCSI_vg/disk1_lv

Created block storage object server0.disk1 using /dev/iSCSI_vg/disk1_lv.

/> /iscsi create iqn.2014-12.com.example:server0

Created target iqn.2014-12.com.example:server0.

Created TPG 1.

www.westos.org

9/> /iscsi/iqn.2014-12.com.example:server0/tpg1/acls create iqn.2014-12.com.example:desktop0

Created Node ACL for iqn.2014-12.com.example:desktop0

/> /iscsi/iqn.2014-12.com.example:server0/tpg1/luns create /backstores/block/server0.disk1

Created LUN 0.

Created LUN 0->0 mapping in node ACL iqn.2014-12.com.example:desktop0

/> /iscsi/iqn.2014-12.com.example:server0/tpg1/portals create 172.25.0.11

Using default IP port 3260

Created network portal 172.25.0.11:3260.

/> exit

1.服务器端加快磁盘用来作共享,配置iscsi的准备

iSCSI远程块存储_第1张图片

2.进入iSCSI目标交互式配置模式:

wpsCF74.tmp

wpsCF75.tmp

wpsCF76.tmp

wpsCF77.tmp

服务器端配置环境完成后:如下

iSCSI远程块存储_第2张图片

3.访问iSCSI存储

iSCSI远程块存储_第3张图片

安装iSCSI发起端软件包:

# yum install -y iscsi-initiator-utils

在/etc/iscsi/initiatorname.iscsi中设置发起端的IQN:

InitiatorName=iqn.2014-12.com.example:desktop0

l

查找iSCSI服务器所提供的iSCSI目标(目标门户)

# iscsiadm -m discovery -t st -p 172.25.0.11

l

登录服务器上的一个或多个iscsi目标

# iscsiadm -m node -T iqn.2024-12.com.example:server0 -p

172.25.0.11  -ll

此时,可以使用iSCSI磁盘,就好像它是本地连接硬盘驱动器。

可以挂载现有文件系统。如果磁盘未格式化,可以通过fdisk进行分区,例如,通过

文件系统格式化分区或作为LVM物理卷。

l

在/etc/fstab中永久挂载文件系统

1. 使用blkid确定文件系统UUID并使用UUID挂载,而不是/dev/sd*设备名称。(每次

引导时显示的设备名称都不同,具体取决于iSCSI设备通过网络进行响应的顺序。

如果按设备名称挂载,这会导致使用错误的设备。)

2. 在/etc/fstab中使用_netdev作为挂载选项。(这将确保客户端不会尝试挂载文件系

统,直至启用联网。否则,在引导时系统将出错。)

wpsCF7A.tmp

3. 确保iscsi服务在引导时启动。

三.中断使用iSCSI目标

确保没有使用目标所提供的任何设备。

确保从/etc/fstab等位置中删除使用目标的所有永久挂载

1.先解除挂载

wpsCF8B.tmp

2.登出iSCSI目标,以暂时断开连接

wpsCF8C.tmp

重启服务后发现sda1还是存在的

# iscsiadm -m node -T iqn.2010-09.com.example:rdisks.demo -p 192.168.0.254 -u

3.删除iSCSI目标的本地记录,以永久断开连接先-u 再-o delete

重启服务后 ,sda1还是不存在了

# iscsiadm -m node -T iqn.2010-09.com.example:rdisks.demo -p 192.168.0.254 -o delete

iSCSI远程块存储_第4张图片