一、什么是iscsi?
iscsi是一种块级别的协议,用于通过TCP/IP网络共享原始存储设备,即硬盘的共享。可以用已经存在的IP和以太网如网卡、交换机、路由器等通过iSCSI协议共享和访问存储。iSCSI target是一种由远程iSCSI服务器(target)提供的远程硬盘。
二、iscsi的安装部署
配置服务端:
安装:yum install targetcli -y
使用:targetcli
上图表示系统中还没有任何共享的硬盘。
创建一个共享硬盘:
先创建一个块设备:
注意:/backstores/block表示该设备位置,
wetsos:storage1是名称,可随便取
/dev/vdb1是指定硬盘,需要自己用fdisk /dev/vdb命令进行创建
创建一个target:
创建一个acl(相当于加密)
westoskey为acl的值,即加密的密码
创建一个lun(即将密码与target进行关联)
创建一个portals(即指定该共享硬盘的所在主机)
exit表示退出targetcli
退出后重启服务
如果防火墙没有关闭,则需要在防火墙上打开该服务端口,默认为3260
配置客户端:
安装:yum install iscsi-initiator-utils -y
启动:systemctl start iscsi
编辑配置文件,将服务端共享磁盘的加密密码给客户端
需要重新启动服务
发现共享硬盘:iscsiadm -m discovery -t st -p 172.25.254.221
将共享硬盘登录使用:iscsiadm -m node -T iqn.2017-12.com.example:storage1 -p 172.25.254.221 -l
登录后在系统的硬盘上就会有一个/dev/sda的硬盘可以被使用:
使用该硬盘:fdisk /dev/sda
建立好后需要格式化才能挂载使用:
自动挂载:vim /etc/fstab
但这种挂载方式容易出现挂载的漂移,所有使用UUID挂载比较靠谱
blkind:查找硬盘的UUID
挂载
磁盘的卸载:iscsiadm -m node -T iqn.2017-12.com.example:storage1 -p 172.25.254.221 -u
共享磁盘的删除:iscsiadm -m node -T iqn.2017-12.com.example:storage1 -p 172.25.254.221 -o delete
在服务端清空共享磁盘的内容:targetcli--->clearconfig confirm=true
三、lvm共享磁盘
lvm共享磁盘是指将lvm数据卷通过targetcli建立为数据块进行共享,优势在于大小可以无限扩充!!!
先建立一个lvm类型的磁盘
然后建立逻辑卷
创建共享硬盘
在客户端发现及应用:
可扩展:
先扩展服务端的逻辑卷
客户端重启iscsi服务即可同步扩展