文章目录

  • iscsi是什么
  • iscsi的实现步骤
  • iscsi服务器的搭建
  • iscsi的永久挂载
  • 共享硬件的删除
  • 在客户端的删除
  • 在服务端的删除


iscsi是什么

Internet小型计算机系统接口,又称为IP-SAN,是一种基于因特网及SCSI-3协议下的存储技术,由IETF提出,并于2003年2月11日成为正式的标准。
iSCSI使用 TCP/IP 协议(一般使用TCP端口860和3260)。 本质上,iSCSI 让两个主机通过 IP 网络相互协商然后交换SCSI命令。这样一来,iSCSI 就是用广域网仿真了一个常用的高性能本地存储总线,从而创建了一个存储局域网(SAN)——用于数据存储的区域网络。

上一篇博客nfs是对文件系统的共享:
是将服务器的磁盘以文件系统的形式映射到内核上面,然后在内核上面开启一个nfs服务,就可以把自己的文件系统共享出去了
此时就是客户端在本地直接可以远程修改nfs上面的东西,并且同步到nfs
本文的iscsi是把把服务器的磁盘直接划分一块出来放到内核上面,在内核上面直接下载iscsi服务,将设备共享
此时客户端就可以检测并且使用服务端的共享磁盘。

iscsi的实现步骤

iscsi服务器的搭建

在服务器 172.25.254.110上 白色截图

fdisk /dev/vdb
划分出一个500M 的存储块 /dev/vdb1

1.

iscsi 与 nfs iscsi与nfs区别_服务端

2.

iscsi 与 nfs iscsi与nfs区别_客户端_02

yum install targetcli -y #一定注意安装源和系统的版本是否一致,不一致会出错。

systemctl start target
systemctl enable target

iscsi 与 nfs iscsi与nfs区别_iscsi 与 nfs_03


iscsi 与 nfs iscsi与nfs区别_客户端_04

targetcli
ls
1./backstores/block create westos:storage1 /dev/vdb1
在服务端环境里  /dev/vdb1的名字是 westos:storage1
2.iscsi/ create iqn.2019-12.com.westos:storage1 
在客户端里 /de/vdb1 的,名字是iqn.2019...
3./iscsi/iqn.2019-12.com.westos:storage1/tpg1/luns
create /backstores/block/westos:storage1 
将两个关联起来
4.iscsi /iqn.2019-12.com.westos:storage1/tpg1/acls create iqn.2019-12.com.westos:westos:westoskey1 
给客户端的设备给密钥(本来应该是加密的,这里就不写成加密的了)

5.iscsi/iqn.2019-12.com.westos:storage1/tpg1/portals create 172.25.254.110
给客户端提示 设置ip  服务端
ip设置错了可以delete tab键两次看有什么命令可以使用

6.exit

1.

iscsi 与 nfs iscsi与nfs区别_服务器_05

2.

iscsi 与 nfs iscsi与nfs区别_客户端_06

3.在/下

iscsi 与 nfs iscsi与nfs区别_客户端_07

4.在/下

iscsi 与 nfs iscsi与nfs区别_服务器_08

火墙添加端口

firewall-cmd --permanent --add-port=3260/tcp
firewall-cmd --reload

iscsi 与 nfs iscsi与nfs区别_客户端_09


在客户端

1.

yum  search  iscsi
yum install  initiatorname.iscsi -y

1.

iscsi 与 nfs iscsi与nfs区别_服务端_10


2.

vim /etc/iscsi/initiatororname.iscsi
添加服务端给的密钥
InitiatorName=iqn.2019-12.com.westos.storage1:westoskey1

iscsi 与 nfs iscsi与nfs区别_服务端_11

iscsi 与 nfs iscsi与nfs区别_客户端_12


3.

重启服务
sysetmctl restart iscsid


iscsicadm -m discovery -t st -p 172.25.254.110
发现

iscsiadm -m node -T iqn.2019-12.com.westos:storage1 -p 172.25.254.110 -l (登陆)

iscsi 与 nfs iscsi与nfs区别_iscsi 与 nfs_13


成功之后

5.

fdisk -l  发现服务端的硬盘/dev/sda

iscsi 与 nfs iscsi与nfs区别_客户端_14


6.

fdisk /dev/sda  划分分区  就像操作自己的硬盘一样
mkfs.xfs /dev/sda1  格式化分区
mount /dev/sda1  /mnt 挂载分区
cd /mnt 新建文件并没有建在客户机上 而是建立在服务器上
df

1.

iscsi 与 nfs iscsi与nfs区别_服务端_15


iscsi 与 nfs iscsi与nfs区别_iscsi_16

2.

iscsi 与 nfs iscsi与nfs区别_服务器_17


你在客户端对sda进行操作 其实是对服务端的/dev/vdb1 进行操作
客户端的sda是虚拟出来的 ,它在服务端是真实存在的
客户端

iscsi 与 nfs iscsi与nfs区别_客户端_18

iscsi的永久挂载

在客户端

vim /etc/fstab
添加
/dev/sda1 /mnt xfs defaults,_netdev 0  0


mount -a 激活永久挂载

iscsi 与 nfs iscsi与nfs区别_服务端_19


这个文件是当系统启动时,内核加载后就被读取的,若不加_netdev 则系统会启动失败。

因为内核加载后会想要加载 /sda1 但是它是在有网络的情况下才会产生。

加上_netdev告诉系统它是网络设置,就不会出错了。

共享硬件的删除

在客户端的删除

可以先yum install tree -y 来下载一个树 遍历工具
执行tree /var/lib/iscsi 可以以树型显示此目录的内容 ,也可以遍历其他目录

1.iscsiadm -m node -T iqn.2019-12.com.westos:storage1 -p 172.25.254.110 -u 只是临时停止正在使用的设备

systemctl resatrt iscsid之后 /dev/sda 又会再次出现
并且tree /var/lib/iscsi的时候,设备的信息还存在在系统中

2.iscsiadm -m node -T iqn.2019-12.com.westos:storage1 -p 172.25.254.110 -o delete  永久删除硬盘信息

tree /var/lib/iscsi/的时候。系统中资源不存在
systemctl resatrt iscsid之后 /dev/sda 不会再次出现,实现了永久删除

1.

iscsi 与 nfs iscsi与nfs区别_服务器_20

2.

iscsi 与 nfs iscsi与nfs区别_iscsi_21

3.

iscsi 与 nfs iscsi与nfs区别_服务端_22

4.

iscsi 与 nfs iscsi与nfs区别_iscsi 与 nfs_23

5.

iscsi 与 nfs iscsi与nfs区别_服务器_24

在服务端的删除

targetcli 
ls
clearconfig confirm =Ture  永久清除
ls
exit

1.

iscsi 与 nfs iscsi与nfs区别_服务端_25

iscsi 与 nfs iscsi与nfs区别_服务端_26