Linux下配置iSCSI服务器,实现资源共享
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux下配置iSCSI服务器,实现资源共享相关的知识,希望对你有一定的参考价值。
iSCSI(Internet SCSI):支持从客户端通过IP向远程服务器上的SCSI存储设备发送SCSI命令
SCSI 结构基于客户/服务器模式,其通常应用环境是:设备互相靠近,并且这些设备由 SCSI 总线连接。iSCSI 的主要功能是在 TCP/IP 网络上的主机系统(启动器 initiator)和存储设备(目标器 target)之间进行大量数据的封装和可靠传输过程。此外,iSCSI 提供了在 IP 网络封装 SCSI 命令,且运行在 TCP 上。
限定名称格式:iqn.yyyy-mm.{reverse domain}:label
一、服务器端配置如下:
1.安装并启动服务
[[email protected] Desktop]# yum install targetcli -y #安装iSCSI目标软件包 [[email protected] Desktop]# systemctl start target #启动target服务 [[email protected] Desktop]# systemctl enable target #设置服务开机自启动
2.进入iSCSI交互式配置模式
[[email protected] Desktop]# targetcli #输入targetcli命令 targetcli shell version 2.1.fb34 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] /> /backstores/block create pt.example.disk1 /dev/sda4 #使用/dev/sda4创建ISCSI远程存储块pt.example.disk1 Created block storage object pt.example.disk1 using /dev/sda4. /> /iscsi create iqn.2016-03.pt.example1:storage #创建要分享的ISCSI文件名(格式必须是iqn.yyyy-mm.{reverse domain}:label) Created target iqn.2016-03.pt.example1:storage. Created TPG 1. /> /iscsi/iqn.2016-03.pt.example1:storage/tpg1/acls create iqn.2016-03.pt.example2:desktop #指定访问ISCSI设备块的ACL权限(即允许initiator name为iqn.2016-03.pt.example2:desktop的客户端可以访问) Created Node ACL for iqn.2016-03.pt.example2:desktop /> /iscsi/iqn.2016-03.pt.example1:storage/tpg1/luns create /backstores/block/pt.example.disk1 #将创建的ISCSI远程存储块加入进来 Created LUN 0. Created LUN 0->0 mapping in node ACL iqn.2016-03.pt.example2:desktop /> /iscsi/iqn.2016-03.pt.example1:storage/tpg1/portals create 172.25.254.209 #打开访问所使用的端口 Using default IP port 3260 Created network portal 172.25.254.209:3260. /> ls #完成后如下所示 o- / ..................................................................... [...] o- backstores .......................................................... [...] | o- block .............................................. [Storage Objects: 1] | | o- pt.example.disk1 ............ [/dev/sda4 (1.0GiB) write-thru activated] | o- fileio ............................................. [Storage Objects: 0] | o- pscsi .............................................. [Storage Objects: 0] | o- ramdisk ............................................ [Storage Objects: 0] o- iscsi ........................................................ [Targets: 1] | o- iqn.2016-03.pt.example1:storage ............................... [TPGs: 1] | o- tpg1 ........................................... [no-gen-acls, no-auth] | o- acls ...................................................... [ACLs: 1] | | o- iqn.2016-03.pt.example2:desktop .................. [Mapped LUNs: 1] | | o- mapped_lun0 .................. [lun0 block/pt.example.disk1 (rw)] | o- luns ...................................................... [LUNs: 1] | | o- lun0 ......................... [block/pt.example.disk1 (/dev/sda4)] | o- portals ................................................ [Portals: 1] | o- 172.25.254.209:3260 .......................................... [OK] o- loopback ..................................................... [Targets: 0] /> exit Global pref auto_save_on_exit=true Last 10 configs saved in /etc/target/backup. Configuration saved to /etc/target/saveconfig.json
设置防火墙
[[email protected] Desktop]# firewall-cmd --permanent --add-port=3260/tcp #将要使用的端口加入到防火墙允许之中 success [[email protected] Desktop]# firewall-cmd --reload #重载防火墙的设置 success
二、客户端配置如下:
[[email protected] Desktop]# yum install iscsi-initiator-utils -y #安装iSCSI发起端软件包 [[email protected] Desktop]# vim /etc/iscsi/initiatorname.iscsi #设置发起端的IQN InitiatorName=iqn.2016-03.pt.example2:desktop [[email protected] Desktop]# iscsiadm -m discovery -t st -p 172.25.254.209 #获得可以访问共享的块 172.25.254.209:3260,1 iqn.2016-03.pt.example1:storage [[email protected] Desktop]# iscsiadm -m node -T iqn.2016-03.pt.example1:storage -p 172.25.254.209 -l #连接服务端的ISCSI目标块到本机 Logging in to [iface: default, target: iqn.2016-03.pt.example1:storage, portal: 172.25.254.209,3260] (multiple) Login to [iface: default, target: iqn.2016-03.pt.example1:storage, portal: 172.25.254.209,3260] successful. [[email protected] Desktop]# fdisk -l #查看磁盘,多了/dev/sdb Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 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: 0x000c235a Device Boot Start End Blocks Id System /dev/sda1 * 2048 411647 204800 83 Linux /dev/sda2 411648 4605951 2097152 82 Linux swap / Solaris /dev/sda3 4605952 35796991 15595520 83 Linux Disk /dev/sdb: 1073 MB, 1073741824 bytes, 2097152 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 4194304 bytes Disk label type: dos Disk identifier: 0x00000000 Device Boot Start End Blocks Id System
然后就可以正常使用所得到的ISCSI资源,正常格式化,并挂载。
########中断使用ISCSI目标#########
先将挂载进行卸载,确保没有使用目标所提供的任何设备
[[email protected] Desktop]# iscsiadm -m node -T iqn.2016-03.pt.example1:storage -p 172.25.254.209 -u #退出ISCSI目标,以暂时断开连接 [[email protected] Desktop]# iscsiadm -m node -T iqn.2016-03.pt.example1:storage -p 172.25.254.209 -o -delete #删除本地连接ISCSI目标的本地记录,以永久断开连接
本文出自 “ptallrights” 博客,请务必保留此出处http://ptallrights.blog.51cto.com/11151122/1793228
以上是关于Linux下配置iSCSI服务器,实现资源共享的主要内容,如果未能解决你的问题,请参考以下文章
Linux下搭建iSCSI共享存储的方法 Linux-IO Target 方式 Debian9.5下实现
Linux下搭建iSCSI共享存储的方法 Linux-IO Target 方式CentOS7-1810下实现
Linux下搭建iSCSI共享存储详细步骤(服务器模拟IPSAN存储)
radhat7下使用targetcli为多个启动器配置iSCSI访问控制