网站首页 > 精选文章 / 正文
目前极空间支持使用多种网络协议,包括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删除文件
猜你喜欢
- 2025-05-26 2.2k star,一款业界领先的私有云+在线文档管理系统
- 2025-05-26 Linux面板8.0.54 测试版-已上线
- 2025-05-26 安装新版的QAnything(支持双显卡运行)搭建智能客服系统
- 2025-05-26 RAGFlow:深度文档理解的RAG引擎、大海捞针测试、API集成业务!
- 2025-05-26 使用 Cursor 帮我量身打造了一款 MarkDown To 公众号的桌面端应用
- 2025-05-26 Redis大Key问题如何排查?如何解决?
- 2025-05-26 TestCenter测试管理工具
- 2025-05-26 Util应用框架后端概述
- 2025-05-26 Rclone 使用文档
- 2025-05-26 今日实践:让Loki丝滑般的数据切换