实验结构:

系统 IP 角色 LUN
Linux 192.168.26.132 service
Linux 192.168.26.134 client LUN0-5G
Windows 192.168.26.110 client LUN1-5G
Esxi 192.168.26.139 工作网卡192.168.5.240,管理网卡 client LUN2-10G

服务端:

这里我就配置了一块磁盘。/dev/sdc
一,iscsi服务器端配置
1,准备磁盘 这里我准备的一块20G /dev/sdc 计划分区为三块分别对应三个系统挂载。

[root@iscsi-service ~]# lsblk 
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   20G  0 disk 
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   19G  0 part 
  ├─centos-root 253:0    0   27G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sdb               8:16   0   10G  0 disk 
└─sdb1            8:17   0   10G  0 part 
  └─centos-root 253:0    0   27G  0 lvm  /
sdc               8:32   0   20G  0 disk 
sr0              11:0    1  4.2G  0 rom  

[root@iscsi-service ~]# lsblk 
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   20G  0 disk 
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   19G  0 part 
  ├─centos-root 253:0    0   27G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sdb               8:16   0   10G  0 disk 
└─sdb1            8:17   0   10G  0 part 
  └─centos-root 253:0    0   27G  0 lvm  /
sdc               8:32   0   20G  0 disk 
├─sdc1            8:33   0    5G  0 part 
├─sdc2            8:34   0    5G  0 part 
└─sdc3            8:35   0   10G  0 part 
sr0              11:0    1  4.2G  0 rom  

2,安装targetcli
yum install -y targetcli
3,启动服务
systemctl start target
4,配置共享iscis 磁盘-linux

[root@iscsi-service ~]# targetcli
targetcli shell version 2.1.53
Copyright 2011-2013 by Datera, Inc and others.
For help on commands, type 'help'.

/backstores/block> create dev=/dev/sdc1 name=LUN0
Created block storage object LUN0 using /dev/sdc1.

5,创建iscsi名称和共享资源关联

/backstores/block> cd /iscsi 
/iscsi> create wwn=iqn.2022-12.com.emporerlinux:service
Created target iqn.2022-12.com.emporerlinux:service.
Created TPG 1.
Global pref auto_add_default_portal=true
Created default portal listening on all IPs (0.0.0.0), port 3260.
/iscsi> cd iqn.2022-12.com.emporerlinux:service/
/iscsi/iqn.20...linux:service> ls
o- iqn.2022-12.com.emporerlinux:service .................................................................................. [TPGs: 1]
  o- tpg1 ................................................................................................... [no-gen-acls, no-auth]
    o- acls .............................................................................................................. [ACLs: 0]
    o- luns .............................................................................................................. [LUNs: 0]
    o- portals ........................................................................................................ [Portals: 1]
      o- 0.0.0.0:3260 ......................................................................................................... [OK]
/iscsi/iqn.20...linux:service> cd tpg1/luns 
/iscsi/iqn.20...ice/tpg1/luns> create /backstores/block/LUN0 
Created LUN 0.

6,设置访问列表

/iscsi/iqn.20...ice/tpg1/luns> cd ..
/iscsi/iqn.20...:service/tpg1> cd acls 
/iscsi/iqn.20...ice/tpg1/acls> create iqn.2022-12.com.emporerlinux:linuxclient
Created Node ACL for iqn.2022-12.com.emporerlinux:linuxclient
Created mapped LUN 0.

7,设置iscsi服务端监听ip和端口

/iscsi/iqn.20...ice/tpg1/acls> cd ..
/iscsi/iqn.20...:service/tpg1> cd portals/
/iscsi/iqn.20.../tpg1/portals> delete 0.0.0.0 3260   #这里需要删除掉默认监听所有ip
Deleted network portal 0.0.0.0:3260
/iscsi/iqn.20.../tpg1/portals> create  192.168.26.132 3260
Using default IP port 3260
Created network portal 192.168.26.132:3260.

8,配置完毕。
ee020e3c217ec8ad062f177ea17c3ee

Linux-客户端

1,安装启动器
这里需要自行安装iscsi-initiator-utils包 yum rpm自己安装

[root@iscsi-client ~]# rpm -qa |grep initiator
iscsi-initiator-utils-iscsiuio-6.2.0.874-22.el7_9.x86_64
iscsi-initiator-utils-6.2.0.874-22.el7_9.x86_64
[root@iscsi-client ~]# iscsiadm  -m discovery -t st -p 192.168.26.132
192.168.26.132:3260,1 iqn.2022-12.com.emporerlinux:service

2,配置iqn
这里的iqn 为服务器端配置的acl,不然无法连接

[root@iscsi-client iscsi]# pwd
/etc/iscsi
[root@iscsi-client iscsi]# cat initiatorname.iscsi
InitiatorName=iqn.2022-12.com.emporerlinux:linuxclient

挂载以前我们先检查下存储

[root@iscsi-client iscsi]# lsblk 
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   10G  0 disk 
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0    9G  0 part 
  ├─centos-root 253:0    0    8G  0 lvm  /
  └─centos-swap 253:1    0    1G  0 lvm  [SWAP]
sr0              11:0    1  4.2G  0 rom  
[root@iscsi-client iscsi]# 

3,发现存储

[root@iscsi-client iscsi]# iscsiadm  -m discovery -t st -p 192.168.26.132                                
192.168.26.132:3260,1 iqn.2022-12.com.emporerlinux:service

4,连接存储

[root@iscsi-client iscsi]# iscsiadm  -m node -T iqn.2022-12.com.emporerlinux:service -p 192.168.26.132 -l
Logging in to [iface: default, target: iqn.2022-12.com.emporerlinux:service, portal: 192.168.26.132,3260] (multiple)
Login to [iface: default, target: iqn.2022-12.com.emporerlinux:service, portal: 192.168.26.132,3260] successful.
[root@iscsi-client iscsi]# lsblk   检查是否连接
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   10G  0 disk 
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0    9G  0 part 
  ├─centos-root 253:0    0    8G  0 lvm  /
  └─centos-swap 253:1    0    1G  0 lvm  [SWAP]
sdb               8:16   0    5G  0 disk 
sr0              11:0    1  4.2G  0 rom  /mnt

5,挂载存储

[root@iscsi-client iscsi]# fdisk  /dev/sdb 
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

Device does not contain a recognized partition table
使用磁盘标识符 0xa8d02dd8 创建新的 DOS 磁盘标签。

命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
分区号 (1-4,默认 1):
起始 扇区 (8192-10485759,默认为 8192):
将使用默认值 8192
Last 扇区, +扇区 or +size{K,M,G} (8192-10485759,默认为 10485759):
将使用默认值 10485759
分区 1 已设置为 Linux 类型,大小设为 5 GiB

命令(输入 m 获取帮助):w^H
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@iscsi-client iscsi]# mkfs.ext4 /dev/sdb1 
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=1024 blocks
327680 inodes, 1309696 blocks
65484 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=1342177280
40 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912, 819200, 884736

Allocating group tables: 完成                            
正在写入inode表: 完成                            
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成 

[root@iscsi-client iscsi]# blkid 
/dev/sda1: UUID="977e163b-9506-4232-805c-2d10cf2dcfc8" TYPE="xfs" 
/dev/sda2: UUID="H8YCw1-GRNq-Q4P3-GnDD-0T3B-i9MX-nNdIgB" TYPE="LVM2_member" 
/dev/sr0: UUID="2018-05-03-20-55-23-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos" 
/dev/mapper/centos-root: UUID="f59bc585-f6c0-4d1a-bf6d-ae5a59fa604c" TYPE="xfs" 
/dev/mapper/centos-swap: UUID="2c5af54b-ae70-491e-83e0-07bcfd8f4286" TYPE="swap" 
/dev/sdb1: UUID="27da5364-3182-45e1-b55c-7b91e529192a" TYPE="ext4" 

创建一个/iscsi-data做为挂载点 ,编辑/etc/fstab,这里采用uuid 挂载,如果涉及多路径 /dev下这个设备符容易变

[root@iscsi-client iscsi]# mkdir  /iscsi-data
[root@iscsi-client iscsi]# vim /etc/fstab 

#
# /etc/fstab
# Created by anaconda on Wed Jul 21 06:40:56 2021
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=977e163b-9506-4232-805c-2d10cf2dcfc8 /boot                   xfs     defaults        0 0
/dev/mapper/centos-swap swap                    swap    defaults        0 0
 UUID="27da5364-3182-45e1-b55c-7b91e529192a" /iscsi-data ext4 defaults,_netdev 0 0

6,检查iscsi 存储是否可用

[root@iscsi-client iscsi]# df -TH
文件系统                类型      容量  已用  可用 已用% 挂载点
devtmpfs                devtmpfs  496M     0  496M    0% /dev
tmpfs                   tmpfs     510M     0  510M    0% /dev/shm
tmpfs                   tmpfs     510M  8.1M  502M    2% /run
tmpfs                   tmpfs     510M     0  510M    0% /sys/fs/cgroup
/dev/mapper/centos-root xfs       8.6G  3.8G  4.9G   44% /
/dev/sda1               xfs       1.1G  178M  887M   17% /boot
tmpfs                   tmpfs     102M     0  102M    0% /run/user/0
/dev/sr0                iso9660   4.5G  4.5G     0  100% /mnt
/dev/sdb1               ext4      5.2G   21M  4.9G    1% /iscsi-data
[root@iscsi-client iscsi]# echo "iscsi ok " >>/iscsi-data/1.txt
[root@iscsi-client iscsi]# cat /iscsi-data/1.txt 
iscsi ok 

windows 客户端

重复服务器配置的5.6.7配置

/iscsi> create  wwn=iqn.2022-12.com.emporerlinux:windows 
Created target iqn.2022-12.com.emporerlinux:windows.
Created TPG 1.
Default portal not created, TPGs within a target cannot share ip:port.
/iscsi> cd iqn.2022-12.com.emporerlinux:windows/
/iscsi/iqn.20...linux:windows> cd tpg1/luns 
/iscsi/iqn.20...ows/tpg1/luns> create /backstores/block/LUN1
Created LUN 0.
/iscsi/iqn.20...ows/tpg1/luns> cd ..
/iscsi/iqn.20...:windows/tpg1> cd acls 
/iscsi/iqn.20...ows/tpg1/acls> create iqn.2022-12.com.emporerlinux:windowsclient 
Created Node ACL for iqn.2022-12.com.emporerlinux:windowsclient
Created mapped LUN 0.
/iscsi/iqn.20...ows/tpg1/acls> cd ..
/iscsi/iqn.20...:windows/tpg1> cd p
portals   path=     
/iscsi/iqn.20...:windows/tpg1> cd portals 
/iscsi/iqn.20.../tpg1/portals> create  192.168.26.1 3260
Using default IP port 3260
Created network portal 192.168.26.132:3260.
/iscsi/iqn.20.../tpg1/portals> cd /iscsi/iqn.2022-12.com.emporerlinux:windows/
/iscsi/iqn.20...linux:windows> ls
o- iqn.2022-12.com.emporerlinux:windows .................................................................................. [TPGs: 1]
  o- tpg1 ................................................................................................... [no-gen-acls, no-auth]
    o- acls .............................................................................................................. [ACLs: 1]
    | o- iqn.2022-12.com.emporerlinux:windowsclient ............................................................... [Mapped LUNs: 1]
    |   o- mapped_lun0 ...................................................................................... [lun0 block/LUN1 (rw)]
    o- luns .............................................................................................................. [LUNs: 1]
    | o- lun0 .......................................................................... [block/LUN1 (/dev/sdc2) (default_tg_pt_gp)]
    o- portals ........................................................................................................ [Portals: 1]
      o- 192.168.26.132:3260 .................................................................................................... [OK]
/iscsi/iqn.20...linux:windows> 

image-1671181899829
windows客户端配置
1,发现门户,填写服务器的ip地址或域名
c85fac69b937fa6af539b642146c7ec
2,选择目标连接
0a6b32e1b2c732702c2ac26459bef3c
3,更改启动的iqn号为服务器端配置的
2cbaef0b87b5e9e8da64a163c23fca8
4,连接目标
image-1671181697508
5,然后在设备器管理器分区就ok啦,
image-1671181732626

ESXI连接

iscsi 服务端重复linux服务器端的5.6.7步骤

/iscsi/iqn.20...rerlinux:esxi> ls
o- iqn.2022-12.com.emporerlinux:esxi ..................................................................................... [TPGs: 1]
  o- tpg1 ................................................................................................... [no-gen-acls, no-auth]
    o- acls .............................................................................................................. [ACLs: 1]
    | o- iqn.1998-01.com.vmware:esxi-6-35a398c3  ................................................................... [Mapped LUNs: 1]
    |   o- mapped_lun0 ...................................................................................... [lun0 block/LUN2 (rw)]
    o- luns .............................................................................................................. [LUNs: 1]
    | o- lun0 .......................................................................... [block/LUN2 (/dev/sdc3) (default_tg_pt_gp)]
    o- portals ........................................................................................................ [Portals: 1]
      o- 192.168.26.132:3260 ........

这个iqn 为
image-1671196376800
因为设置别名不会访问,最好采用默认。
客户端配置
1,网络-虚拟交换机,添加虚拟交换机
image-1671194918789
2,网络-端口组,添加端口组关联新加的虚拟交换机
image-1671194986363
3,网络-vmkernel,添加vmkernel 网卡选择新加的端口组
image-1671195118777
4,存储-适配器-配置iscsi 使用自动发现。
image-1671196475573
5,存储-设备 ,新建数据存储 ,分区存储并且使用
image-1671196833573
image-1671196905913
image-1671196974835
随便放一个文件测试,先创建一个目录,然后上传
image-1671197032156
总结:1,iscis服务器端配置较为复杂,各个逻辑目录,wwn,acl,lun需要各层级创建。2,各个客户端的iqn号尽量使用默认配置,这里是实验所以我改了的,默认target启动端口号为3260,3,如果开启防火墙的话,需放开3260,firewall-cmd --add-port=3260/tcp,有空再写firewall相关的。上面的lun划分在第一步iscsi就创建了4,实际应该有多张网卡配置,对内,对外。关联关系就是LUN-target-initiator.5,scsi,小型计算机接口,iscsi这个i就是Internet,意思就是只要网络可达,都可以通过iscsi挂载,无线也行。共享存储。真正的工作环境应该都有存储设备,因为数据很中亚。还有多重路径挂载同一个iscsi设备啥的,需要配合多路径软件实现。我也刚学,多多指教。自己备忘录。

[root@iscsi-service ~]# firewall-cmd --add-port=3260/tcp 
success
[root@iscsi-service ~]# firewall-cmd --list-ports        
3260/tcp
[root@iscsi-service ~]# firewall-cmd --add-port=3260/tcp  --permanent
Warning: ALREADY_ENABLED: 3260:tcp
success
[root@iscsi-service ~]# firewall-cmd --list-ports                    
3260/tcp
[root@iscsi-service ~]# firewall-cmd --reload
success
[root@iscsi-servi
文章作者: emporer
本文链接:
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Emporer-Linux
linux storage iscsi
喜欢就支持一下吧