我有一个通过SATA 3.0背板安装8x10TB HDD的Ubuntu 16.04备份服务器。8个硬盘组装成RAID6,正在使用EXT4文件系统。该文件系统存储大量的小文件,这些文件具有很多SEEK操作,但IO吞吐量低。实际上,每天都有来自不同服务器的许多小文件通过rsnapshot快照(多个INODES直接指向相同的文件。由于文件系统(60TB净值)超过了50%的使用率,我的性能非常差。使用率是75%,
du -sch /backup-root/
需要几天(!)。该机器具有8核和16G RAM。RAM由OS Filesystem Cache完全利用,由于IOWAIT,8个内核中的7个始终处于空闲状态。
Filesystem volume name: <none>
Last mounted on: /
Filesystem UUID: 5af205b0-d622-41dd-990e-b4d660c12bd9
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr dir_index filetype needs_recovery extent 64bit flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
Filesystem flags: signed_directory_hash
Default mount options: user_xattr acl
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 912203776
Block count: 14595257856
Reserved block count: 0
Free blocks: 4916228709
Free inodes: 793935052
First block: 0
Block size: 4096
Fragment size: 4096
Group descriptor size: 64
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 2048
Inode blocks per group: 128
RAID stride: 128
RAID stripe width: 768
Flex block group size: 16
Filesystem created: Wed May 31 21:47:22 2017
Last mount time: Sat Apr 14 18:48:25 2018
Last write time: Sat Apr 14 18:48:18 2018
Mount count: 9
Maximum mount count: -1
Last checked: Wed May 31 21:47:22 2017
Check interval: 0 (<none>)
Lifetime writes: 152 TB
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 256
Required extra isize: 28
Desired extra isize: 28
Journal inode: 8
First orphan inode: 513933330
Default directory hash: half_md4
Directory Hash Seed: 5e822939-cb86-40b2-85bf-bf5844f82922
Journal backup: inode blocks
Journal features: journal_incompat_revoke journal_64bit
Journal size: 128M
Journal length: 32768
Journal sequence: 0x00c0b9d5
Journal start: 30179
我缺乏这种文件系统用法的经验。我必须调整哪些选项。在这种情况下,哪种文件系统会更好?除了操作系统内置的选项以外,是否还有其他选项可以将RAM用于其他缓存选项?
如何处理大型RAID组合件上的大量小文件?
谢谢塞巴斯蒂安