iSCSI是一种将SCSI接口与以太网技术相结合的新型存储技术,通过网络获取其他电脑的硬盘资源。
iSCSI-HBA卡连接SCSI接口或FC(光纤通道)总线和内存,基于iSCSI协议把硬盘设备命令和数据打包成标准的TCP/IP数据包,然后通过以太网传送到目标存储设备,然后目标存储设备基于iSCSI协议把TCP/IP数据包解压成硬盘设备命令和数据。
一. 服务器端
1. 创建安全的服务端磁盘资源(创建RAID磁盘阵列)
1.1 创建RAID5,添加4块20G的硬盘
1.2 mdadm -Cv /dev/md0 -n 3 -l 5 -x 1 /dev/sdb /dev/sdc /dev/sdd /dev/sde;其中-Cv表示创建阵列并显示过程;md0是生成阵列组名称;-n 3表示所需硬盘个数;-l 5表示磁盘阵列级别;-x 1表示备份盘个数;后面是所需硬盘名称
1.3 mdadm -D /dev/md0查看新设备,其中UUID是新设备唯一标识号
2. 配置iSCSI服务端
2.1 安装iSCSI服务端程序和配置命令工具,-y表示安装过程中不再需要手动确认yum -y install targetd targetcli
2.2 启动服务并添加到开机启动项systemctl start targetd;systemctl enable targetd
2.3 targetcli进入交互式命令行,把刚刚创建的RAID5磁盘阵列md0文件加入到配置共享设备的资源池中。
targetcli
ls
cd /backstores/block
create disk0 /dev/md0
2.4 创建iSCSI target名称及配置共享资源
cd iscsi
create # 创建描述此共享资源唯一字符串iqn...
cd iqn.2003-01.org.linux-iscsi.linuxprobe.x8664:sn.6b9e8d3cdfa7/ #创建同名目录,存放共享资源
ls
cd tpg1/luns
create /backstores/block/disk0
其中tpg1文件夹下三个目录:acls表示允许用户访问列表名称;luns表示用户访问设备名称;portals表示哪个地址为用户提供
2.5 设置访问控制列表(ACLS),设置客户端允许访问的唯一标识。
cd ..
cd acls
create iqn.2003-01.org.linux-iscsi.linuxprobe.x8664:sn.6b9e8d3cdfa7:client
# 创建的唯一标识符加个字符,可确保其唯一性
2.6 设置iSCSI服务端的监听IP和端口号
cd ..
cd portals
create 192.168.10.10
2.7 配置妥当后检查配置信息ls,退出命令行使用exit
2.8 重启服务和配置防火墙
systemctl restart targetd
firewall-cmd --permanent --add-port=3260/tcp
firewall-cmd --reroad
二.Linux客户端
在Linux客户端设置,访问远程存储资源。
1. 安装iscsi客户端服务程序initiator
2. iscsi协议是通过客户端的名称进行验证,编辑initiator名称文件,把服务端的访问控制列表名称(iqn....:client)填入。vim /etc/iscsi/initiatorname.iscsi;重启服务:systemctl restart iscsid;systemctl enable iscsid;
3. iscsiadm是用于管理、查询、插入、更新或删除iscsi数据库配置文件的命令行工具。先查询一下: iscsiadm -m discovery -t st -p 192.168.10.10;-m discovery是扫描并发现可用存储资源;-t st表示执行扫描操作的类型;-p IP地址表示服务端IP地址。
4. 登录:iscsiadm -m node -T iqn.2003-01.org.linux-iscsi.linuxprobe.x8664:sn.6b9e8d3cdfa7 -p 192.168.10.10 --login;其中-m node表示将客户端主机作为一台节点服务器;-T iqn...表示要使用的资源。
5. 查看设备ls /etc/dev*,最新的设备应该为刚刚添加的设备。
6. 将其执行格式化操作并挂载。mkfs.xfs /dev/sdb; mkdir /iscsi; mount /dev/sdb /iscsi;df -h;
7. 挂载新设备,使用新设备的UUID挂载是最稳妥的方式。查看UUID:blkid | grep /dev/sdb;
8. 挂载操作。vim /etc/fstab;格式: UUID /iscsi xfs defaults,_netdev 0 0;其中_netdev表示当系统联网后再进行挂载操作。
9. 卸载设备,-u参数表示卸载。iscsiadm -m node -T iqn.2003-01.org.linux-iscsi.linuxprobe.x8664:sn.6b9e8d3cdfa7 -u
三.Windows客户端
控制面板----系统和安全-----管理工具----iSCSI发起程序-----目标(输入服务器IP地址)----快速链接----配置----发起程序名称(见ACL列表)---更改----连接。
计算机右键----管理----磁盘管理----创建新建卷----完成。
计算机双击----发现网上共享硬盘资源。