标签:iscsi
前边说过的cifs以及nfs这个文件共享系统虽然已经是比较成熟的了,但是在客户机端连接到服务器端上传文件时,先会将文件转换为2进制文件,在接受端接受到2进制文件后在转化为相应的格式显示出来,然后在服务器端把这个文件转化为2进制文件,然后存储在磁盘中。既然是要将文件存储在服务器端,那么为什么不能直接保存到磁盘中呢?在这个过程中,无疑出现了很多没有必要的部分,所以我们现在来看看这个磁盘共享问题--------iscsi(Internet Small Computer System Interface)。iscsi是一个供硬件设备使用的、可在IP协议上层运行的SCSI指令集,是一种开放的基于IP协议的工业技术标准。该协议可以用TCP/IP对SCSI指令进行 封装,使得这些指令能够通过基于P网络进行传输,从而实现SCSI 和TCP/IP协议的连接。对于局域网环境中的用户来说,采用该标准只需要不多的投资就可以方便、快捷地对信息和数据进行交互式传输及管理。
首先通过fdisk? 创建出来一块要做实验的硬盘
?? pvcreate /dev/vdb1
?? vgcreate iscsi_vg0 /dev/vdb1
? lvcreate ?-L 2.2G-n iscsi_lv0 iscsi_vg0??????????????? ---------------磁盘满了,这块暂时忽略
开始使用targetcli共享
targetcli??
/backstores/block??? create?? westos:storage1?????? /dev/vdb1??????????????? ---------------先将要共享的磁盘块化,名字自定义。
/iscsi??? create?? iqn.2017-12.com.example:storage1?????????????????? ----------------创建要共享的磁盘,这个名字必须以iqn.开头。
/iscsi/iqn.2017-12.com.example:storage1/tpg1/acls? create? iqn.2017-12.com.example:westoskey???????????????? ---------------创建要给客户端主机使用的钥匙
/iscsi/iqn.2017-12.com.example:storage1/tpg1/luns ? create??? /backstores/block/westos:storage1??????????? --------------创建要啊共享出去的逻辑单元。
iscsi/iqn.2017-12.com.example:storage1/tpg1/portals?? create? 172.25.254.220????????????? ----------------t提供共享硬盘的主机ip
通过ls查看。可以得到创建的所有信息。
firewall-cmd --permanent? --add-port=3260/tcp???????????????????????????? ---------------------------添加3260端口到防火墙。
然后在客户端:
yum install iscsi-initiator-utils.x86_64 -y?????????????? --------------------安装iscsi软件
vim /etc/iscsi/initiatorname.iscs
InitiatorName=iqn.2017-12.com.example:westoskey ?? 将服务器端的钥匙拿到
没有获得共享硬盘之前:
iscsiadm -m discovery -t st -p172.25.254.230??????? ????????????????
iscsiadm -m node -Tiqn.2016-12.com.example:storage1 -p 172.25.254.230 -l ????? 登陆到172.25.254.220
然后fdisk? -l
/dev/sda就是共享到的硬盘.
fdisk /dev/sda
partprobe
mkfs.xfs /dev/sda1
mount /dev/sda1 /mnt/
成功获取到分区/dev/sda1
然后mount /dev/sda1??? /mnt???? 就可以用了!
开机要自动启动:vim /etc/fstab?
因为开机时候系统会自动扫描这个文件,如果用/dev/sda1有可能会使名称发生“漂移“现象,会出现读取不准确,所以在这里使用它的uid还是比较好的,使用_netdev 是因为要从服务器端获取这个硬盘资源。
要删除时候:客户主机端:
iscsiadm? -m?? node -T? iqn.2017-12.com.example:storage1? -u?? ---------------暂时删除
iscsiadm? -m?? node -T? iqn.2017-12.com.example:storage1? -o ? delete ? --------------永久删除
从服务器获取到的node信息存放在? /etc/iscsi/nodes/这个目录下
从哪台服务器端获取到的信息存放在?? /var/lib/iscsi/send_tarages/这个目录下边
通过rm? -rf? /etc/iscsi/nodes/可以清空登陆服务器信息
服务器端删除:
clearconfig?? confirm=true
标签:iscsi
原文地址:http://blog.51cto.com/13355576/2049587