RouterOS v7.8beta2新增ROSE存储功能

ROSE–为RouterOS增加了额外的企业数据中心功能,包括支持磁盘监控、改进的格式化、RAID、rsync、iSCSI、基于TCP的NVMe、NFS和改进的SMB。该功能目前支持arm, arm64, x86和tile平台。需RouterOS v7.8beta2以上版本

要求功能包: rose-storage

在使用此功能前,需要单独安装RouterOS扩展功能包rose-storage,下载扩展功能包访问https://mikrotik.com/download,选择对应设备硬件构建,下载Extra packages,获得zip文件,解压后,找到rose-storage-xxx-xxx.npk文件上传到RouterOS设备File的根目录下,重启设备。

ROSE功能扩展代表RouterOS开始具备完整的网络数据存储功能,NAS存储成为RouterOS的一个扩展功能。

简单测试

使用一台CHR的RouterOS,添加外部存储,使用NFS分享给Linux,用SMB分享给CHR,首先在winbox的/system/disk下进行格式化操作,从v7.8beta3开始支持GPT分区,需要先对扩展的磁盘单独划分一个空间,不能直接将整个磁盘分配出去。

添加一个500M的分区

[admin@MikroTik] /disk>add type=partition parent=sata1 partition-size=500M partition-offset=auto[admin@MikroTik] /disk> printFlags: B - BLOCK-DEVICE; M, F - FORMATTING; g, p - PARTITIONColumns: SLOT, MODEL, SERIAL, INTERFACE, SIZE, FREE#     SLOT        MODEL          SERIAL             INTERFACE      SIZE       FREE0 B g sata1      QEMU HARDDISK  QM00007            SATA 1.5 Gbps  85899345921 BMp sata1-part1               @65'536-500'065'280              499999744  457854976

使用ext4格式分区

[admin@MikroTik] /disk> format-drive sata1-part1 file-system=ext4Columns: OUTPUT
OUTPUT
file-system: ext4
mke2fs -t ext4 /dev/sdb1
mke2fs 1.46.5 (30-Dec-2021)Discarding device blocks: doneCreating filesystem with 488280 1k blocks and 121920 inodesFilesystem UUID: c88ad052-d5ba-4a04-b30d-d13bf2a3d84dSuperblock backups stored on blocks:8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409Allocating group tables: doneWriting inode tables: doneCreating journal (8192 blocks): doneWriting superblocks and filesystem accounting information: done[admin@MikroTik] /disk>

查看格式化结果

[admin@MikroTik] /disk> printFlags: B - BLOCK-DEVICE; M, F - FORMATTING; g, p - PARTITIONColumns: SLOT, MODEL, SERIAL, INTERFACE, SIZE, FREE, FS, RAID-MASTER#     SLOT       MODEL         SERIAL             INTERFACE       SIZE    FREE  FS    RAID0 B g sata1      QEMU HARDDISK QM00007             SATA1.5Gbps 8589934592               none1 BMp sata1-part1            @65'536-500'065'280              499999744 457854976 ext4 none

可以看到Slot下有两项,编号1的是新键sata1-part1分区,这里我们通过指定编号,开启sata1-part1的smb和nfs服务

[admin@MikroTik] /disk> set 1 smb-export=yes nfs-export=yes

使用print detail命令查看详情。

[admin@MikroTik] /disk> print detailFlags: X - disabled, E - empty, B - block-device; M - mounted, F - formatting; f - raid-member-failed;r - raid-member, c - encrypted; g - guid-partition-table, p - partition;t - nvme-tcp-export, i - iscsi-export, s - smb-export; n - nfs-export;O - tcg-opal-self-encryption-enabled, o - tcg-opal-self-encryption-supported0 B   g    slot="sata1" slot-default="sata1" parent=none device="sdb" model="QEMU HARDDISK" serial="QM00007"fw-version="2.5+" size=8 589 934 592 interface="SATA 1.5 Gbps" interface-speed=1200.0Mbpsraid-master=none nvme-tcp-export=no iscsi-export=no nfs-export=no smb-export=no1 BM  psn  type=partition slot="sata1-part1" slot-default="sata1-part1" parent=sata1 device="sdb1"uuid="c88ad052-d5ba-4a04-b30d-d13bf2a3d84d" fs=ext4 serial="@65'536-500'065'280" size=499 999 744free=457 854 976 partition-number=1 partition-offset=65 536 partition-size=499 999 744raid-master=none nvme-tcp-export=no iscsi-export=no nfs-export=yes smb-export=yes smb-user="GUEST"smb-password="" smb-encryption=no[admin@MikroTik] /disk>

查看file下的文件情况,在sata1-part1下存放一个backup文件

[admin@MikroTik] /file> print Columns: NAME, TYPE, SIZE#  NAME                                       TYPE       SIZE   0  skins                                      directory         
1  sata1-part1                                disk              
2  sata1-part1/lost+found                     directory         
3  sata1-part1/MikroTik-20230227-1350.backup  backup     19.2KiB

在PVE的linux测试连接RouterOS的NFS,在home下创建一个nfs目录,将远程的nfs挂载到/home/nfs目录下,并查看目录下的文件

root@pve:/home# mkdir nfsroot@pve:/home# mount -t nfs 192.168.99.30:/ /home/nfs/root@pve:/home# cd nfs/root@pve:/home/nfs# lsusb1-part1
root@pve:/home/nfs# cd usb1-part1/root@pve:/home/nfs/usb1-part1# ls53#MikroTik-20230227-1350.backup lost+foundroot@pve:/home/nfs/usb1-part1#

在另外一台CHR上测试SMB连接,添加路径是smb-share=sata1-part1,具体配置如下:

[admin@MikroTik] /disk> add type=smb smb-address=192.168.99.30 smb-share=sata1-part1[admin@MikroTik] /disk> print Flags: B - BLOCK-DEVICE; M, F - FORMATTING; g, p - PARTITION; s - SMB-EXPORTColumns: SLOT, MODEL, SERIAL, INTERFACE#      SLOT                           MODEL                            SERIAL                 INTERFACE        0      smb-192-168-99-30-sata1-part1  smb://192.168.99.30/sata1-part1                         network

如果连接成功,在file下可以看到文件目录

windows连接SMB路径是: \\192.168.99.30\sata1-part1

ROSE可以查看官方资料

基于hAP ax3测试SMB共享文件测试,致态Ti Plus5000 1T nvme固态,使用绿联nvme转USB,USB3.0接口,网络是接hAP ax3的2.5Gb网卡对接笔记本电脑1Gb网卡。

1Gb网络限制已经跑满,4个CPU负载也很高,CPU1已经98%,如果都是2.5Gb网卡传输,hAP ax3的CPU应该爆了!从测试看传输文件性能的确有很大改进,只能说明ROSE又增加了一个不务正业的功能!