Ive been working on an opensource HSM (Hierarchical Storage Management) engine called HuskHoard. Most transparent storage tools on Linux use FUSE, but I found the contextswitching overhead was killing my NVMe performance for hot data. I decided to bypass FUSE and use the fanotify API to intercept file access at the kernel level instead. How it works A background janitor moves cold files to slow storage HDD/Tape/S3. It leaves a sparse husk file on the SSD. When an app tries to read the husk, HuskHoard pauses the process, recalls the data, and resumes. Its written in Rust and licensed under AGPL3.0. Github: https://github.com/huskhoard/huskhoard Technical Architecture: https://www.huskhoard.com/blog.html Im curious if anyone else here has experimented with fanotify for storage management? I'd love some technical feedback on the architecture

you are viewing a single comment's thread
view the rest of the comments
[–] 6 points 1 month ago (1 child)

This project seems like a lot of fun! I will try it

Please consider changing the headline font on the website. It is nothing short of a war crime.

  • source
  • hideshow 2 child comments
  • [–] [S] 2 points 1 month ago (1 child)

    it is an attention getter! I have a hard time reading it sometimes. perhaps it is ready for a freshen up. Please let me know if you have a chance to try it I could use the feedback.

  • source
  • parent
  • hideshow 2 child comments