文章目录
- 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.
2.
yum install targetcli -y #一定注意安装源和系统的版本是否一致,不一致会出错。
systemctl start target
systemctl enable target
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.
2.
3.在/下
4.在/下
火墙添加端口
firewall-cmd --permanent --add-port=3260/tcp
firewall-cmd --reload
在客户端
1.
yum search iscsi
yum install initiatorname.iscsi -y
1.
2.
vim /etc/iscsi/initiatororname.iscsi
添加服务端给的密钥
InitiatorName=iqn.2019-12.com.westos.storage1:westoskey1
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 (登陆)
成功之后
5.
fdisk -l 发现服务端的硬盘/dev/sda
6.
fdisk /dev/sda 划分分区 就像操作自己的硬盘一样
mkfs.xfs /dev/sda1 格式化分区
mount /dev/sda1 /mnt 挂载分区
cd /mnt 新建文件并没有建在客户机上 而是建立在服务器上
df
1.
2.
你在客户端对sda进行操作 其实是对服务端的/dev/vdb1 进行操作
客户端的sda是虚拟出来的 ,它在服务端是真实存在的客户端
iscsi的永久挂载
在客户端
vim /etc/fstab
添加
/dev/sda1 /mnt xfs defaults,_netdev 0 0
mount -a 激活永久挂载
这个文件是当系统启动时,内核加载后就被读取的,若不加_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.
2.
3.
4.
5.
在服务端的删除
targetcli
ls
clearconfig confirm =Ture 永久清除
ls
exit
1.