-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Compile fscache modules to speedup NFS shares #699
Conversation
This is needed in order to speedup NFS connections, as described here: http://chase-seibert.github.io/blog/2014/03/09/vagrant-cachefilesd.html
@tianon ? (I havn't tested, but I like the idea) |
This is just the kernel part, than we need the userspace client: http://linux.die.net/man/8/cachefilesd |
I'm +1 as long as it's compiled as a module and has negligible impact otherwise. Can't the userspace client run in a container? |
thanks @tianon, let me check if the userspace client running in a container, very nice idea indeed, i'll back soon. |
A bit late, but i've finally find some spare time to test it. Boot2docker built with fscache support (this PR):
Cachefilesd dockerized Dockerfile:
RUN output:
Container dmesg:
The problem seems related to this function: https://github.com/dz0ny/nims-kernel-ics/blob/master/fs/cachefiles/security.c#L34 I'm still trying to understand what is going on, in the meanwhile if have any suggestions they are more than welcome. |
Ok, it seems that cachefilesd client requires some selinux kernel configuration, i'm going to put everything together, i'll keep you posted. |
Updated with required kernel configurations. |
CONFIG_SECURITY_PATH=y | ||
CONFIG_INTEL_TXT=y | ||
CONFIG_LSM_MMAP_MIN_ADDR=0 | ||
CONFIG_SECURITY_SELINUX=y |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
@tianon any updates ? |
Sorry for bumping up, any updates @tianon @SvenDowideit ? |
adding SELinux brings up red flags which mean we need to do some more research - we discussed it somewhere, and were told there were consequences - but this might be under slightly different details. |
Indeed, that discussion was in #459 (comment). |
@tianon @SvenDowideit i've tried extensively in the meanwhile without any nasty side effects. Anyway SELINUX is disabled by default:
|
@paolomainardi can you rebase this PR please? |
@SvenDowideit yes, i'll do it ASAP. |
Rebased, @SvenDowideit everything works as expected. In order to test it, follows this steps.
Edit
Replacing Now restart NFS service:
Compile and run:
You should see something like this:
Where Check if it works correctly, you should see something like this:
|
I'll do some testing in the next week - doing some conference speaking atm |
ok @SvenDowideit thanks |
@tianon I can't find a downside to this change. |
Thanks for testing @SvenDowideit |
Thanks @SvenDowideit ❤️ |
LGTM |
Compile fscache modules to speedup NFS shares
i finally made time to play with the experimental volume plugins -
see https://github.com/SvenDowideit/docker-volumes-nfs for where i'm heading. |
@SvenDowideit that's interesting! Looks like your README is incomplete
I tried, but 😉 :
|
Wow, thanks a lot guys! Now i nave to test new NFS volume driver and we need a simple way to choose vboxfs/NFS share. |
@thaJeztah ooops - it was in the Makefile, but i forgot to talk it up :) I havn't had time since my flight, but hopefully I'll find time during one of the hackathons (or worst case, July, when I'm back in AU. wrt a simple way to choose the share - yup, that too is coming :) |
This is needed in order to speedup NFS connections, as described here: http://chase-seibert.github.io/blog/2014/03/09/vagrant-cachefilesd.html