文章目录
- 前言
 - 一、概述
 - 二、配置环境及搭建服务
 - 1.关闭防火墙、网络图形化工具及SElinux
 - 2.配置yum源
 - 3.测试网络连通性
 - 4.分配磁盘容量
 - 5.安装targetcli包
 - 6.服务器端进行配置
 - 7.客户端
 
- 总结
 
前言
本篇将简述的内容:Linux系统下的ISCSI服务
一、概述
iscsi全称:Internet Small Computer System Interface——互联网小型计算机接口
 通过网络获取磁盘设备在本地进行存储使用。
基于IP协议进行scsi数据的传输
 IP/SAN网络:基于双绞线为传输介质的存储网络
 光纤存储网络:基于光纤传输的存储网络(造价极高)
实现方式:软件形式;硬件形式
默认端口号:TCP/3260
相关名词
 iscsi initiator:iscsi客户端
 iscsi target:iscsi服务端
 lun:一个块设备存储
 iqn:
 iscsi名称
 iqn时间.域名反写:定义标识
二、配置环境及搭建服务
1.关闭防火墙、网络图形化工具及SElinux
关闭防火墙及禁止防火墙自启
systemctl stop firewalld && systemctl disable firewalld
 
关闭网络图形化工具
systemctl stop NetworkManager && systemctl disable NetworkManager
 
查看SElinux状态
getenforce
 
设置宽容模式(临时关闭SElinux)
setenforce 0
 
永久关闭SElinux
vim /etc/selinux/config
 
SELINUX=enforcing 
 
改为
SELINUX=disabled
 
2.配置yum源
进入yum配置目录
cd /etc/yum.repos.d
 
创建备份
mkdir backup
 
将CentOS-* 文件移入备份文件夹
mv CentOS-* backup
 
新建文件
vim local.repo
 
文件内容
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
 
卸载光驱
umount /dev/sr0
 
加载光驱
mount /dev/sr0 /mnt
 
3.测试网络连通性
ping 已知IP
 查看连通性
4.分配磁盘容量
使用虚拟机搭建本服务时,可额外添加一块硬盘进行此步操作
 添加硬盘后,进行热扫描
for i in `ls /sys/class/scsi_host`;do echo "- - -" > $i/scan;done
 
使用lsblk命令查看
 并对该磁盘进行分区(也可略过此步操作)
 fdisk /path/sdb (假定硬盘名为sdb)
 分区后,进行格式化,即可正常挂载使用
 分区后硬盘名为sdb1
5.安装targetcli包
yum -y install targetcli	
 
使用命令进入ISCSI服务端管理界面
targetcli
 
进入后使用ls查看

 使用targetcli工具进入到iscsi服务器端管理界面
| targetcli | 进入到服务器端的iscsi命令配置信息 | 
|---|---|
| o- / … […] | 顶级目录 | 
| o- backstores … […] | 后备存储,主备存储空间,要共享的设备或分区得先加入到这里 | 
| o- block … [Storage Objects: 0] | 块存储,o- backstores子目录 | 
| o- fileio … [Storage Objects: 0] | 文件存储,o- backstores子目录 | 
| o- pscsi … [Storage Objects: 0] | 真实物理scsi设备,o- backstores子目录 | 
| o- ramdisk … [Storage Objects: 0] | 闪存,o- backstores子目录 | 
| o- iscsi … [Targets: 0] | 以ISCSI的方式共享存储设备的目录 | 
| o- loopback … [Targets: 0] | 
6.服务器端进行配置
(一)进入到/backstores/block目录中添加设备到块设备列表
cd  /backstores/block
 
create disk0 /dev/sdb1
 
(二)进入到iscsi目录中生成iqn标签
create
 
#也可自行命名,例:iqn.日期.域名:域名组织分配的名字
(三)进入到/iscsi/iqn.*/tpg1/luns>目录下创建逻辑单元
cd /iscsi/iqn.*/tpg1/luns
 
create /backstores/block/disk0
 
进入到/iscsi/iqn.*/tpg1/acls>目录中创建访问控制规则
cd /iscsi/iqn.*/tpg1/acls
 
create iqn.*
 
进入到/iscsi/iqn.*/tpg1/portals>目录中创建端口
create 192.168.1.1 3260 #本机IP
 
#注意:因为原本存在一个端口0.0.0.0:3260,所以需要将原来的端口删除掉再进行创建
exit
 
退出,否则设置不会被保存
 在认证文件中成iqn编号
vim  /etc/iscsi/initiatorname.iscsi
 
将原来的认证编号改为新生成的编号
 启动服务
systemctl start iscsi
 
systemctl start iscsid
 
7.客户端
安装软件
yum -y install iscsi-initiator-utils
 
在认证文件中生成iqn编号
vim  /etc/iscsi/initiatorname.iscsi
 
将原来的认证编号改为新生成的编号
 开启客户端服务
systemctl start iscsi
 
systemctl start iscsid
 
查找可用的iscsi资源列表
iscsiadm -m discovery -t st -p 192.168.1.1:3260
 
-m 指定模式
 -t 指定动作类型,st sendtargets
 -p 指定服务器和端口
 访问服务器的共享资源
iscsiadm -m node -T iqn.* -l
 
-T targetnameiqn
 -l login
 即可挂载使用
登出设备
scsiadm -m node -T iqn.* -u -p 192.168.91.138
 

















