ISCSI测试

Initiator为应用客户端,服务端Target包括设备服务器端和队列管理两部分。
服务端两种共享方式:
1、在服务端共享分区
2、在服务端以文件方式作为共享设备共享出来

构建ISCSI网络存储

测试环境:(RHEL7.4)

Server0 192.168.100.200
Desktop1 192.168.100.201
Desktop2 192.168.100.202

一、Server0 服务端安装配置
# yum install targetcli  -y   --安装软件包
# firewall-cmd --permanent --add-port=3260/tcp  --添加防火墙策略
# firewall-cmd –reload

重启并设置target服务开机启动
#systemct restart/enable target

1、添加一块磁盘,作为共享的网络设备

[root@server0 ~]# fdisk -l /dev/sdb

Disk /dev/sdb: 2147 MB, 2147483648 bytes, 4194304 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x5f1780a4

   Device Boot      Start         End      Blocks   Id  System

2、创建共享设备

[root@server0 ~]# targetcli
/> backstores/block create testdisk /dev/sdb  --创建块设备,命名为testdisk,并指定跟哪个物理磁盘对应
/> iscsi/ create iqn.2018-02.com.ultrapower:testdisk  --创建iscsi设备,并指定名称。
/> iscsi/iqn.2018-02.com.ultrapower:testdisk/tpg1/acls create iqn.2018-02.com.ultrapower:desktop1 

--设置acl权限,指定允许哪个主机使用该iscsi设备,有多个主机要访问就得创建多条记录
/> iscsi/iqn.2018-02.com.ultrapower:testdisk/tpg1/luns create /backstores/block/testdisk --指明lun管理的iscsi设备对应哪个块设备
/> iscsi/iqn.2018-02.com.ultrapower:testdisk/tpg1/portals/ delete 0.0.0.0 3260   --删除默认portal
/> iscsi/iqn.2018-02.com.ultrapower:testdisk/tpg1/portals/ create 192.168.100.200 3260 --添加portal,指明共享iscsi设备的IP和端口号

/> saveconfig  保存并退出
/> exit

服务器端安装配置完成。下边,我们在客户机desktop1上使用服务器server0上创建的iscsi设备。

二、客户端安装配置

Desktop1 客户端安装配置:

[root@desktop1 ~]# yum install iscsi-initiator-utils -y
[root@desktop1 ~]# systemctl enable iscsi iscsid 
[root@desktop1 ~]# systemctl restart iscsi iscsid

[root@desktop1 ~]# vi /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2018-02.com.ultrapower:desktop1

下面的几条命令可以查看 man iscsiadm 帮助文档中的EXAMPLE示例。

[root@desktop1 /]# iscsiadm --mode discoverydb --type sendtargets --portal 192.168.100.200 –discover
[root@desktop1 /]# iscsiadm --mode node --targetname iqn.2018-02.com.ultrapower:testdisk --portal 192.168.100.200 --login
[root@desktop1 /]# fdisk -l /dev/sdb   --登入之后,就可以看到server0共享出来的sdb磁盘了。

下面我们就可以把/dev/sdb设备当做本地磁盘来使用。比如,划分出一个新的500M的分区,并格式化为xfs格式,然后自动挂载到/mnt/iscsidisk目录下。

[root@desktop1 /]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): n
Partition type:
    p   primary (0 primary, 0 extended, 4 free)
    e   extended
Select (default p): p
Partition number (1-4, default 1):
First sector (65528-4194303, default 65528):
Using default value 65528
Last sector, +sectors or +size{K,M,G} (65528-4194303, default 4194303): +500M 
Partition 1 of type Linux and of size 512 MiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
[root@desktop1 /]# partprobe
Warning: Unable to open /dev/sr0 read-write (Read-only file system).  /dev/sr0 has been opened read-only.
[root@desktop1 /]# fdisk -l /dev/sdb

Disk /dev/sdb: 2147 MB, 2147483648 bytes, 4194304 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 33550336 bytes
Disk label type: dos
Disk identifier: 0x5f1780a4

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1           65528     1113975      524224   83  Linux
[root@desktop1 /]#

格式化为xfs格式,并自动挂载到/mnt/iscsidisk目录:

[root@desktop1 /]# mkfs.xfs /dev/sdb1 --以xfs格式化/dev/sdb1分区
[root@desktop1 /]# mkdir /mnt/iscsidisk  --创建挂载目录
[root@desktop1 /]# blkid | grep sdb1   --查看/dev/sdb1分区的UUID
/dev/sdb1: UUID="e568398e-4560-4948-bec1-3430afb5021b" TYPE="xfs"
[root@desktop1 /]# vi /etc/fstab --添加如下一行,实现开机自动挂载
UUID=e568398e-4560-4948-bec1-3430afb5021b /mnt/iscsidisk xfs defaults,_netdev 0 0

测试:

[root@desktop1 /]# mount -a
[root@desktop1 /]# df -hT | grep sdb1
/dev/sdb1                xfs       285M   15M  271M   6% /mnt/iscsidisk
[root@desktop1 /]# cd /mnt/iscsidisk/
[root@desktop1 iscsidisk]# touch desktop1test
[root@desktop1 iscsidisk]# ls
desktop1test

三、以文件方式作为共享网络存储设备

上面是以磁盘作为共享网络存储设备。下面我们在server0上以文件方式作为共享网络存储设备,然后再desktop2上使用该设备。

首先,在server0上创建共享文件:

[root@server0 ~]# dd if=/dev/zero of=/iscsifiletest bs=1M count=500   --在根目录下创建一个500M的iscsifiletest文件

把该文件创建为iscsi设备:

[root@server0 ~]# targetcli
/> backstores/fileio create iscsitestfile /iscsifiletest
/> iscsi/ create iqn.2018-02.com.ultrapower:iscsitestfile
/> iscsi/iqn.2018-02.com.ultrapower:iscsitestfile/tpg1/acls create iqn.2018-02.com.ultrapower:desktop2
/> iscsi/iqn.2018-02.com.ultrapower:iscsitestfile/tpg1/luns create /backstores/fileio/iscsitestfile
    portal使用默认的192.168.100.200 3260。
/> saveconfig
/> exit

然后,我们就可以在desktop2机上上使用上面创建的iscsi设备了。

Desktop2机器上:

[root@desktop2 ~]# yum install iscsi-initiator-utils -y
[root@desktop2 ~]# systemctl enable iscsi iscsid 
[root@desktop2 ~]# systemctl restart iscsi iscsid

[root@desktop2 ~]# iscsiadm --mode discoverydb --type sendtargets --portal 192.168.100.200 --discover
[root@desktop2 ~]# iscsiadm --mode node --targetname  iqn.2018-02.com.ultrapower:iscsitestfile  --portal 192.168.100.200 --login
[root@desktop2 ~]# fdisk -l | grep sdb 
Disk /dev/sdb: 524 MB, 524288000 bytes, 1024000 sectors
[root@desktop2 ~]# fdisk /dev/sdb ---分区出/dev/sdb1,并格式化,然后挂载使用。
[root@desktop2 ~]# mkfs.xfs /dev/sdb1
[root@desktop2 ~]# mkdir /mnt/isscsidisk
[root@desktop2 ~]# blkid | grep sdb
/dev/sdb1: UUID="3f33dd07-6fbe-4173-a7d0-a9a447311105" TYPE="xfs"
[root@desktop2 ~]# vi /etc/fstab
UUID="3f33dd07-6fbe-4173-a7d0-a9a447311105" /mnt/iscsidisk      xfs defaults,_netdev 0 0

测试:

[root@desktop2 ~]# mount -a
[root@desktop2 ~]# df -hT
Filesystem            Type      Size  Used Avail Use% Mounted on
/dev/mapper/rhel-root xfs       8.5G  3.1G  5.4G  37% /
devtmpfs              devtmpfs  716M     0  716M   0% /dev
tmpfs                 tmpfs     731M   84K  731M   1% /dev/shm
tmpfs                 tmpfs     731M  8.8M  722M   2% /run
tmpfs                 tmpfs     731M     0  731M   0% /sys/fs/cgroup
/dev/sda1             xfs       497M  140M  358M  29% /boot
tmpfs                 tmpfs     147M   16K  147M   1% /run/user/42
tmpfs                 tmpfs     147M     0  147M   0% /run/user/0
/dev/sr0              iso9660   3.8G  3.8G     0 100% /mnt/cdrom
/dev/sdb1             xfs       493M   25M  468M   6% /mnt/iscsidisk
[root@desktop2 ~]# cd /mnt/iscsidisk/
[root@desktop2 iscsidisk]# touch desktop2test
[root@desktop2 iscsidisk]# ls
desktop2test
[root@desktop2 iscsidisk]#

ISCS客户端及服务端卸载(注意修改相应的参数):

卸载网络设备(客户端):
[root@desktop2 ~]# umount /mnt/iscsidisk/
[root@desktop2 ~]# iscsiadm --mode node --targetname iqn.2018-02.com.ultrapower:iscsidevice0 --portal 192.168.100.200:3260 --logout
[root@desktop2 ~]# vi /etc/iscsi/initiatorname.iscsi 
InitiatorName=iqn.2018-02.com.ultrapower:desktop2  --删除
[root@desktop2 ~]# vi /etc/fstab 
#UUID="0f62e50c-50bc-4abf-ac3f-b6b8bd1dda2d" /mnt/iscsidisk     xfs defaults,_netdev 0 0 --删除
[root@desktop2 ~]# systemctl disable iscsi iscsid

卸载网络设备(服务端):
[root@server0 ~]# targetcli
/> iscsi/iqn.2018-02.com.ultrapower:iscsidevice0/tpg1/acls/ delete iqn.2018-02.com.ultrapower:desktop1
/> iscsi/iqn.2018-02.com.ultrapower:iscsidevice0/tpg1/luns/ delete lun=0 
/> iscsi/iqn.2018-02.com.ultrapower:iscsidevice0/tpg1/portals/ delete  192.168.100.200 3260
/> iscsi/ delete iqn.2018-02.com.ultrapower:iscsidevice0 
/> backstores/block/ delete san1
/> saveconfig 
/> exit
[root@server0 ~]# systemctl disable target
原文地址:https://www.cnblogs.com/rusking/p/8431995.html