MySQL, Oracle, Linux, 软件架构及大数据技术知识分享平台

网站首页 > 精选文章 / 正文

极空间部署 iSCSI 协议保姆级教程,高效利用剩余容量

2025-05-26 16:15 huorong 精选文章 4 ℃ 0 评论

目前极空间支持使用多种网络协议,包括Samba、WebDAV、DLNA、SFTP、FTP、NFS,每种协议都有其独特的功能和适用场景,可以满足多样化需求,如果还不懂如何使用这些协议那就戳这里一篇文章带你读懂“极空间的六种网络协议”,合理搭配效率提升300%

不过想要将极空间的剩余容量分配给其他设备使用的时候,就需要借助iSCSI协议。

iSCSI协议:是一种基于IP网络的块存储协议,允许客户端通过网络访问远程存储设备,就像访问本地硬盘一样。iSCSI的核心价值在于通过网络将NAS等存储设备的容量转化为可灵活分配的“本地”存储资源,满足扩展、备份、虚拟化等多种需求。

今天小极君就为大家带来了在极空间上使用iSCSI协议的玩法教程。只需要简单的配置,通过图形化界面创建iSCSI Target和LUN,绑定存储空间后即可一键挂载,全程无需手动编写配置文件,即可自由分配剩余容量,高效利用宝贵的存储空间。

玩法亮点:

  • 简单易用:通过极空间的Docker功能,轻松创建容器并配置iSCSI服务,无需复杂的设置。
  • 高速传输:读写速度受物理硬盘和网络影响,实际使用体验与本地硬盘相差无几。
  • 灵活配置:支持多Target、多LUN、多磁盘的混合挂载,满足不同用户的需求。
  • 智能管理:提供web管理界面,方便用户直观地进行各种操作和管理,如查看系统基本信息、根目录、Target、LUN、磁盘数量等。

感谢@可爱的小Cherry 带来的超详细部署教程。赶快动手试一试吧,让你的空间利用率再上一层楼。


风险提示

1、容器由Docker仓库提供,极空间仅提供支持创建Docker镜像的环境,软件功能与注意事项详见该软件内具体使用规则。

2、本文仅代表作者观点;使用第三方解决方案,均非官方正式方案,可能会产生相关风险,请用户自行斟酌。


玩法教程

前言

NAS作为网络存储设备,可以提供各式各样基于网络的存储服务。其中,常用的分类又包含文件传输协议(泛指)、对象存储协议、块存储协议、数据库存储协议等。

文件传输协议(泛指),就是最常见的就是SMB、NFS、FTP/SFTP、WebDav等;此外,Syncthing、Rysnc等也算是。

数据库存储协议,是指将文件以一定的编码格式存入各类数据库中。

对象存储协议,以AWS S3、MinIO为常见服务,将文件存在对象桶中。

块存储协议,以iSCSI为例,提供原始块设备访问,可作为物理存储。

日常工作、生活中,最常用的就是文件传输协议,这也是大部分NAS会提供的服务;其次是对象存储协议,比如图床等;再次是块存储协议,例如NAS给小主机扩容等;最后是数据库存储协议,一般仅在开发中使用。

例如极空间私有云,就提供了常见的文件传输服务。

最近,我利用 AI 工具,开发了一款基于docker的 iSCSI管理软件,原理是基于ubuntu docker的 tgt web管理界面,实现原生的tgt服务。在本项目的支持下,极空间除了提供能实现文件传输外,也能提供块存储协议!


一、项目部署

1、下载镜像

该项目镜像,我通过github action定时发布,可以通过极空间的自定义拉取功能直接下载

2、创建容器

选择刚导入/下载的镜像,选择添加到容器。

基本设置取消性能限制,让 iSCSI 拥有更好的性能。

【文件夹路径】:默认提供了/app/config和/app/iscsi两个路径,前者用来存储配置文件、日志;后者用来存储虚拟磁盘,如果这两个文件不映射,那重启容器后就掉盘了,因此务必填写。

此外,如果在极空间里已经有现成的各类虚拟磁盘,我们也可以挂载到/app/iscsi/XXX.img下,这样容器会直接读取磁盘,并且自动挂载到iSCSI上。

【网络】,本项目采用了3260(iSCSI端口),13260(web管理端口)两个端口,请务必将网络更改为host模式。

【环境变量】,目前没有设置参数,唯一可以改的就是TZ时区,根据你所在地区修改即可。


二、系统使用方法

1、使用方法

如果我们启动容器的时候,挂在了虚拟磁盘的,那么软件会在第一次启动的时候直接将虚拟磁盘挂载到 iSCSI Target 1 LUN 1上,我们直接就可以使用了。

在windows的搜索框,搜索iSCSI发起程序并打开。

在目标里输入极空间的ip地址,点击快速连接。

确保连接成功。

接着,搜索并打开计算机管理,切换到磁盘管理,挂载成功的话,系统会提示要初始化磁盘。选择GPT分区并确认即可。

然后选择增加的未分配磁盘,右键新建简单卷,一直下一步。

然后你就可以看到挂载为盘符的 LUN块了,这样我们就可以正常在PC里使用NAS割出来的iSCSI 块存储了。磁盘的读写速度是受物理硬盘、网络的影响的,实际使用速度和挂载SMB差不多,不会有更多性能损耗。

2、功能详解

除了默认挂载的第一个磁盘外,我们还可以手动配置iSCSI服务。

首先是最上方的状态栏,这里展示了系统的基本信息、根目录、Target、LUN、磁盘数量;中间的LUN性能目前还在开发中,忽略即可;iSCSI状态栏,用于打印tgt的信息。

系统启动时,会创建一个
iqn.2025-05.com.cherry:target1的默认IQN,target id 是1。大家可以删除也可以保留,设置自己喜欢的IQN和Target ID。

点击创建Target,可以随意输入ID和IQN,注意IQN要保持iqn.yyyy-mm.com.xxxx:name的格式,默认开放全部白名单。

清除ACL策略,就是删除现有的白名单。

增加ACL策略,就是增加白名单。

白名单会在列表里展示,全部放行代表ALL。

接着,我们要创建虚拟磁盘。默认采用qemu方式创建虚拟磁盘,两者的区别写在了系统里,建议使用qemu方式创建,配置更灵活。

虚拟磁盘删除功能:考虑到删除是永久性的,所以建议从NAS删除,系统里不单独做删除功能。并且在删除之前,需要先将LUN块和虚拟磁盘解绑,否则会生成一个空的虚拟磁盘。

创建好虚拟磁盘以后,我们将虚拟磁盘挂载到Target和LUN中,LUN作用主要是标记。

最终一个完整的LUN块,包括Target ID、LUN ID、后备磁盘(即虚拟磁盘)。

当然,我们还支持多Target、多LUN、多磁盘的混合挂载。详见下图,同时连接了2个IQN,并且挂载了3个LUN。

注意,一块虚拟磁盘不要挂载给不同的客户端,这会导致读写错乱,切记一块磁盘至多对应一台PC,但是一台PC可以对应多块磁盘。


总结

本文通过我自行开发的web管理工具,让极空间增加了iSCSI存储协议,从而实现给PC、miniPC、其它NAS提供块存储的能力。

Tags:minio删除文件

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言