Linux iSCSI 网络磁盘

Linux iSCSI 网络磁盘

介绍

​ ISCSI网络磁盘是一种利用TCP/IP协议在网络上传输SCSI命令的技术,可以实现远程访问存储设备的功能。ISCSI网络磁盘可以用于存储整合和灾难恢复的场景,也可以节省专用光纤网络的成本。1

​ 如果你想使用ISCSI网络磁盘,你需要在服务器端安装和配置ISCSI目标服务,然后在客户端安装和配置ISCSI发起程序,通过IP地址或DNS名称连接到服务器上的虚拟磁盘,并进行格式化和使用。

iSCSI 优缺点

ISCSI网络磁盘的优点有:

  • 成本低廉:ISCSI网络磁盘可以利用现有的以太网和IP网络,无需额外的光纤网络和设备,节省了硬件和维护的费用。
  • 部署简单:ISCSI网络磁盘可以通过IP地址或DNS名称进行连接,无需复杂的配置和调试,也方便了远程管理和扩展。
  • 灵活性高:ISCSI网络磁盘可以支持多种类型的存储设备,如SCSI和SATA,也可以与传统的RAID磁盘阵列结合使用,提供更大的存储容量。

ISCSI网络磁盘的缺点有:

  • 性能较低:ISCSI网络磁盘的数据传输速度受到以太网和TCP/IP协议的限制,比光纤通道存储网络要慢得多。
  • 安全性较差:ISCSI网络磁盘的数据在网络上可能会遭到拦截或篡改,需要额外的加密和验证机制来保证安全性。
  • 技术不成熟:ISCSI网络磁盘是一种相对较新的技术,市场上支持该技术的软硬件产品还不够多,可能会遇到兼容性或稳定性的问题。

ISCSI网络磁盘如何提高性能?

ISCSI网络磁盘的性能受到多种因素的影响,如果想要提高性能,可以从以下几个方面进行优化:

  • 提高网络带宽:ISCSI网络磁盘的数据传输速度取决于网络的带宽,如果网络拥塞或者带宽不足,会导致数据包的丢失或延迟,影响性能。因此,可以通过升级网络设备,使用千兆网卡和交换机,或者使用多路径技术,来提高网络的带宽和可靠性。
  • 使用专用网络:ISCSI网络磁盘的数据在网络上可能会与其他类型的流量发生冲突,造成干扰和抖动,影响性能。因此,可以通过使用专用的网络或者虚拟局域网(VLAN),来隔离ISCSI流量和其他流量,减少网络的负载和竞争。
  • 使用硬件加速:ISCSI网络磁盘的数据在传输过程中需要进行封装和解封装,以及加密和验证等操作,这些操作会消耗服务器的CPU资源和内存资源,影响性能。因此,可以通过使用硬件加速设备,如ISCSI HBA或者TCP/IP卸载引擎(TOE),来减轻服务器的负担,提高数据处理的效率。

部署

Server 端

初始化配置

#关闭防火墙
systemctl stop firewalld
systemctl disable firewalld   

#关闭selinux
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

安装 iSCSI 服务端软件包

yum -y install targetcli

配置 iSCSI 服务端

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

/> 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]
/> 

创建iSCSI target名称及配置共享资源。

/> cd /backstores/block 
/backstores/block> create disk01 /dev/sdb
Created block storage object disk0 using /dev/md0.
/backstores/block> cd /
/> ls
o- / ............................................................................ [...]
  o- backstores ................................................................. [...]
  | o- block ..................................................... [Storage Objects: 1]
  | | o- disk0 ............................ [/dev/sdb (20.0GiB) write-thru deactivated]
  | |   o- alua ...................................................... [ALUA Groups: 1]
  | |     o- default_tg_pt_gp ...........................[ALUA state: Active/optimized]
  | o- fileio .................................................... [Storage Objects: 0]
  | o- pscsi ..................................................... [Storage Objects: 0]
  | o- ramdisk ................................................... [Storage Objects: 0]
  o- iscsi ............................................................... [Targets: 0]
  o- loopback ............................................................ [Targets: 0]
/> 

创建iSCSI target名称及配置共享资源。

/iscsi> create
Created target iqn.2003-01.org.linux-iscsi.demo01.x8664:sn.c9eccc3e35be
Created TPG 1.
Global pref auto_add_default_portal=true
Created default portal listening on all IPs (0.0.0.0), port 3260.
/iscsi> ls
o- iscsi ................................................................... [Targets: 1]
  o- iqn.2003-01.org.linux-iscsi.demo01.x8664:sn.c9eccc3e35be ............. [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 ......................

创建一个设备目录

/iscsi> cd iqn.2003-01.org.linux-iscsi.demo01.x8664:sn.c9eccc3e35be /
/iscsi/iqn.20....745b21d6cad5> cd tpg1/luns 
/iscsi/iqn.20...ad5/tpg1/luns> create /backstores/block/disk0 
Created LUN 0.

设置控制访问ACL

/iscsi/iqn.20...ad5/tpg1/luns> cd ..
/iscsi/iqn.20...21d6cad5/tpg1> cd acls 
/iscsi/iqn.20...ad5/tpg1/acls> create iqn.2003-01.org.linux-iscsi.demo01.x8664:sn.c9eccc3e35be 
Created Node ACL for iqn.2003-01.org.linux-iscsi.demo01.x8664:sn.c9eccc3e35be
Created mapped LUN 0.

设置iSCSI服务端的监听IP地址和端口号。

/iscsi/iqn.20...ad5/tpg1/acls> cd ../portals/
/iscsi/iqn.20.../tpg1/portals> ls
o- portals ................................................................... [Portals: 1]
  o- 0.0.0.0:3260 .................................................................... [OK]
/iscsi/iqn.20.../tpg1/portals> delete 0.0.0.0 3260
Deleted network portal 0.0.0.0:3260
/iscsi/iqn.20.../tpg1/portals> create 192.168.10.10
Using default IP port 3260
Created network portal 192.168.10.10:3260.

配置完成最后 ls 查看

/> ls
o- / .......................................................... [...]
  o- backstores ............................................... [...]
  | o- block ................................... [Storage Objects: 1]
  | | o- disk01 ........... [/dev/sdb (20.0GiB) write-thru activated]
  | |   o- alua .................................... [ALUA Groups: 1]
  | |     o- default_tg_pt_gp ........ [ALUA state: Active/optimized]
  | o- fileio .................................. [Storage Objects: 0]
  | o- pscsi ................................... [Storage Objects: 0]
  | o- ramdisk ................................. [Storage Objects: 0]
  o- iscsi ............................................. [Targets: 1]
  | o- iqn.2003-01.org.linux-iscsi.demo01.x8664:sn.c9eccc3e35be  [TPGs: 1]
  |   o- tpg1 ................................ [no-gen-acls, no-auth]
  |     o- acls ........................................... [ACLs: 1]
  |     | o- iqn.2003-01.org.linux-iscsi.demo01.x8664:sn.c9eccc3e35be  [Mapped LUNs: 1]
  |     |   o- mapped_lun0 ................. [lun0 block/disk01 (rw)]
  |     o- luns ........................................... [LUNs: 1]
  |     | o- lun0 ...... [block/disk01 (/dev/sdb) (default_tg_pt_gp)]
  |     o- portals ..................................... [Portals: 1]
  |       o- 192.168.10.25:3260 ................................ [OK]
  o- loopback .......................................... [Targets: 0

Client 端

安装客户端iSCSI 软件

yum -y install iscsi-initiator-utils

配置客户端

[root@linuxprobe ~]# vim /etc/iscsi/initiatorname.iscsi 
InitiatorName=iqn.2003-01.org.linux-iscsi.demo01.x8664:sn.c9eccc3e35be
[root@linuxprobe ~]# systemctl restart iscsid
[root@linuxprobe ~]# systemctl enable  iscsid

连接访问iSCSI

iscsiadm -m discovery -t st -p 192.168.10.25
192.168.10.25:3260,1 iqn.2003-01.org.linux-iscsi.demo01.x8664:sn.c9eccc3e35be


iscsiadm -m node -T  iqn.2003-01.org.linux-iscsi.demo01.x8664:sn.c9eccc3e35be -p 192.168.10.25 --login

格式化

mkfs.xfs /dev/sdb
meta-data=/dev/sdb               isize=512    agcount=16, agsize=654720 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1
data     =                       bsize=4096   blocks=10475520, imaxpct=25
         =                       sunit=128    swidth=256 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=5120, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

挂载

mkdir /data
mount /dev/sdb /data

查看挂载情况

df -TH
Filesystem              Type      Size  Used Avail Use% Mounted on
/dev/mapper/centos-root xfs        19G  1.4G   17G   8% /
devtmpfs                devtmpfs  942M     0  942M   0% /dev
tmpfs                   tmpfs     954M     0  954M   0% /dev/shm
tmpfs                   tmpfs     954M   11M  944M   2% /run
tmpfs                   tmpfs     954M     0  954M   0% /sys/fs/cgroup
/dev/sda2               xfs       1.1G  144M  920M  14% /boot
/dev/sda1               vfat      210M   12M  198M   6% /boot/efi
tmpfs                   tmpfs     191M     0  191M   0% /run/user/0
/dev/sdb               	xfs	      20G  	  19M  20G   1% /data
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力的小T

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值