Page MenuHomePhabricator

Shared Storage NFS services request for wikipathways project on Cloud VPS
Closed, ResolvedPublic

Description

Hello,

I would like to occasionally share data between instances in the wikipathways project on Cloud VPS, so I think that means the wikipathways project needs Shared Storage NFS services:
https://wikitech.wikimedia.org/wiki/Help:Shared_storage#/data/project

Thanks!

Event Timeline

Some questions I like to ask about NFS usage requests:

  • How much data?
  • How often does it get written?
  • How often does it get read?
  • Are you aware that NFS is not backed up in an meaningful way?

How much data? under 1GB
How often does it get written? monthly
How often does it get read? monthly
Are you aware that NFS is not backed up in an meaningful way? yes

If NFS is enabled for wikipathways, we can still disable for an instance if we want to, right? I'm basically thinking of this as an alternative to rsync via SSH to transfer data between instances, but it won't be a critical daily part of our system.

If NFS is enabled for wikipathways, we can still disable for an instance if we want to, right? I'm basically thinking of this as an alternative to rsync via SSH to transfer data between instances, but it won't be a critical daily part of our system.

Yes, in fact, it is disabled by default. You set a hiera key of mount_nfs: true to mount.

Ah wait, it will not unmount, however, once it has been mounted. If you want, you can keep it unmounted and mount at will.

Yeah, that might be what I'll do. Thanks!

I'll see if I can provide a command line for you to mount when/where you want it then. If you want it permanently mounted at /data/project, you'd set mount_nfs: true in horizon for the puppet config of that VM.

You can always "permanently" mount it via puppet with that and then umount /data/project when you want to unmount as well, which could be easier for you.

Change 668234 had a related patch set uploaded (by Bstorm; owner: Bstorm):
[operations/puppet@production] shared-storage: enable project NFS for wikipathways

https://gerrit.wikimedia.org/r/668234

Change 668234 merged by Bstorm:
[operations/puppet@production] shared-storage: enable project NFS for wikipathways

https://gerrit.wikimedia.org/r/668234

@Ariutta sorry that took so long. At this point, I have some suggestions and options for you to try using the NFS share.

The really easy way, would be to set nfs_mount: true on horizon as a puppet hiera value applied to whichever host or groups of hosts you like. If you do it this way, puppet will add the NFS mount as something automatic with sane options already set for you. Puppet will also keep it mounted, which you may or may not want.

If you also add the following hiera options, that shouldn't be a problem at all:
This option will make it less likely to cause issues in an NFS outage.

profile::wmcs::nfsclient::mode: soft

If you are on buster, this tends to handle traffic to the server a bit better:

profile::wmcs::nfsclient::nfs_version: 4.2

If you prefer to mount yourself at will, it will work, but you'll need to specify something like:
sudo mount -t nfs4 -o rw,noatime,vers=4.2,rsize=1048576,wsize=1048576,soft nfs-tools-project.svc.eqiad.wmnet:/srv/misc/shared/wikipathways/project /mnt. This would mount at the /mnt folder, and you might want to use something else, but you get the idea. If you use the hiera keys, it will mount on /data/project in the VM after a puppet run.

@Bstorm thank you for setting it up and all the suggestions!