概述
共享存储是指两个或多个处理机共用一个主存储器的并行体系结构。每一个处理机都可以把信息存入主存储器,或从中取出信息。处理机之间的通信通过访问共享存储器来实现。
ISCSI
iSCSI技术实现了物理硬盘设备与TCP/TP网络传输协议的相互结合,使得用户可以通过互联网方便的获取到远程机房提供的共享存储资源
targetcli
targetcli是Linux-IO Target的用户态的管理配置工具。用户可以使用yum或apt-get直接从各大发行版的官方仓库安装,对于较老的linux版本需要自己编译源码安装。targetcli提供一个类似shell的界面,各种Target、TPG、LUN、backstore对象则被组织成目录树的形式,用户可以用ls、cd命令来浏览目录树,用create、delete命令来创建和删除各种对象。浏览配置,就是浏览目录树,创建删除各种对象,就是在目录树的各级节点中创建新的节点。同时targetcli还提供了常见的shell命令辅助编辑功能,例如TAB智能补全、上下键切换命令历史、Ctrl + R搜索命令历史。凡是有不熟悉的命令,都可以用help命令查询使用说明。
部署
实验环境
客户端server1-172.25.66.11
服务端server2-172.25.66.12
一、
1:在服务端下载targetcli 关闭防火墙并开启targetcli
2:创建一个分区,大小为2G
fdisk /dev/vdb
3:执行targetcli
ls
/backstores/block create westos:storage1 /dev/vdb1
/iscsi create iqn.2018-06.com.example:storage1 ###创建一个磁盘名
ls
/iscsi/iqn.2018-06.com.example:storage1/tpg1/acls create iqn.2018-06.com.exampe:westoskey
/iscsi/iqn.2018-06.com.example:storage1/tpg1/luns create /backstores/block/westos:storage1
/iscsi/iqn.2018-06.com.example:storage1/tpg1/portals create 172.25.66.12
如果出现上图红框中的报错,可按上面的方法排错
exit
二、
1:在客户端下载iscsi
2:cd /etc/iscsi
vim initiatorname.iscsi
将密钥改为刚才在服务端里面用targetcli设置的
3:systemctl restart iscsid.service
4:iscsiadm -m discovery -t st -p 172.25.66.12
5:iscsiadm -m node -T iqn.2018-06.com.example:storage1 -p 172.25.66.12 -l
###-m(要执行的动作) -t(类型为st) -p(要访问的主机) -l(login登陆) -T(targetname)
6:fdisk -l
我们在客户端看到的/dev/sda就是从服务端共享到的共享磁盘
三、先启动网络再挂载设备
在客户端
1:fdisk /dev/sda ###创建一个分区sda1
2:mkfs.xfs /dev/sda1
3:mount /dev/sda1 /mnt
3:vim /etc/fstab
/dev/sda1 /mnt xfs defaults,_netdev 0 0
4:先将刚才挂载的sda1卸载,然后poweroff机器,第一次需要poweroff,后面直接reboot就可以实现自动挂载
重新开机后查看挂载
四、删除共享磁盘/dev/sda
在客户端
1:yum install tree -y #####可以将目录内容树形显示
2:umount /mnt
3:vim /etc/fstab ###删除所写自动挂载
4:iscsiadm -m node -T iqn.2018-06.com.example:storage1 -p 172.25.66.12 -u #######将此设备登出
5:iscsiadm -m node -T iqn.2018-06.com.example:storage1 -p 172.25.66.12 -o delete
#######将设备所属文件全部删除
6:systemctl restart iscsi
7:fdisk -l
可以看到,共享磁盘已经被删除