Hi all, I want to enable the NUFA translator on a distributed volume and I am uncertain about the correct way of doing this. As far as I can tell it's not possible to use the gluster CLI to either specify the translator when creating the volume or change the volume to use this translator after creating it. I've found a few examples for NUFA configurations, but unfortunately they either do not specify the name of the configuration file to edit, or the name does not match the file names on my system. I ended up changing the files /etc/glusterd/vols/run-fuse.vol on both servers (which are also clients) adding in a sub-volume (run being the name of the volume). I added the nufa volume and disabled the dht volume (see below). My first question is: is this the correct way of making configuration changes? The second issue is that the NUFA volume does not actually work. I can mount it and use it, but after writing a few files to the volume on both clients, I end up with empty files on the remote server: [root at server02 vols]# ls -l /local/run/ total 0 ---------T 1 root root 0 Jun 13 12:19 FILE-1 Is there something wrong with my NUFA configuration? Changes I made to the volume configuration files: #volume run-dht # type cluster/distribute # subvolumes run-client-0 run-client-1 #end-volume volume run-nufa type cluster/nufa subvolumes run-client-0 run-client-1 option scheduler nufa option lookup-unhashed yes option local-volume-name run-client-0 # the following on the other server: # option local-volume-name run-client-1 option limits.min-free-disk 5% end-volume volume run-write-behind type performance/write-behind # subvolumes run-dht subvolumes run-nufa end-volume On each server the volume was mounted using: mount -t glusterfs localhost:/run /run There are already a number of volumes set up on the system which consists of 6 machines. Let me know if you need more information about those. Many thanks, Frank
On 06/19/2012 07:08 AM, Frank Sonntag wrote:> Hi all, > > I want to enable the NUFA translator on a distributed volume and I am > uncertain about the correct way of doing this.Well, NUFA translator is not being actively tested from the team. So, be aware that it may run into issues.> As far as I can tell it's not possible to use the gluster CLI to either > specify the translator when creating the volume or change the volume to use > this translator after creating it.That is true. Not supported through CLI. Gluster team is not working on that effort, contribution welcome to make a 'gluster volume create' option to create a volume with NUFA.> I've found a few examples for NUFA configurations, but unfortunately they > either do not specify the name of the configuration file to edit, or the name > does not match the file names on my system. > I ended up changing the files /etc/glusterd/vols/run-fuse.vol on both servers > (which are also clients) adding in a sub-volume (run being the name of the > volume). I added the nufa volume and disabled the dht volume (see below). >You figured it out right. Those are the files which needs changes.> My first question is: is this the correct way of making configuration changes? >Correct ? may be... Supported ? No> The second issue is that the NUFA volume does not actually work. I can mount > it and use it, but after writing a few files to the volume on both clients, I > end up with empty files on the remote server: >That is the expected behavior of NUFA, ie, it creates files only locally, and as it uses 'cluster/distribute' translators code for most of the tasks, it needs a Distribute Link file (the empty file with permission -----T (01000)) to exist on the rightly hashed server. As long as your applications are running fine, and you see files are created only in the local machine, I can say that NUFA is working as expected. Regards, Amar