I have a shiny new computer with a not-that-large SSD (120GB) and two gigantic spinning-rust HDs (3TB each). I want to partition it as follows:
- swap (~128GB), operating system (~128GB), and data (all the rest) partitions striped across the HDs
- tiny boot partition on the SSD
- all the rest of the SSD's space is used for a cache pool
- the cache pool should be shared among all of the HD partitions, except maybe not the swap
I tried to do this with lvmcache and ran into the following problems:
If you just create a cache pool in the obvious way (as described e.g. here) you can only assign that to cache a single origin LV. So I could have it for the OS or for the data, but not both.
I tried to work around that by creating a "thin pool" spanning all of the HDs, thinking that I could cache the entire thin pool, then assign OS and data LVs out of that, but got told that it is not possible to cache a thin pool. (The
lvmthinmanpage doesn't make a hell of a lot of sense, it is possible that I did that part wrong.)
I am out of ideas. Can anyone suggest how to make this work? Note that I am not married to lvm, if bcache+plain MD (for the striping) can do this, or some other tool I don't know about, then that would be Just Fine Too.