<div dir="ltr">Hi Stefano,<div style>I&#39;m not sure what is causing your problem, and the variables in your configuration can lead to various scenarios.</div><div style>In any case, according to what you wrote, I will assume that the replicated-distributed volume is contained on 2 machines only, spanning 4 bricks.</div>
<div style>You might have done this already, but if you look at page 15 of the Gluster Administration guide (I have the guide for 3.3.0, but I think it&#39;s the same), you will read in the &quot;Note&quot; that you need to be careful about the order in which you specify the bricks across the 2 servers.</div>
<div style><br></div><div style>In particular, when creating the volume, you need to specify the first brick of each server, and then the second of each server and so on. In your case, I think it should be something like:</div>
<div style><br></div><div style>gluster volume create volume_name replica 2 transport tcp server1:/exp1 server2:/exp1 server1:/exp2 server2:/exp2</div><div style><br></div><div style>(replacing the transport type accrding to your network characteristic, if necessary), so that the exp1 on server1 will be replicated on exp1 on server 2, and exp2 on server1 will be replicated on exp2 on server2, and all 4 bricks together will form a replicated-distributed volume.</div>
<div style>As I said, you might have followed these steps correctly already, but better to double-check.</div><div style>About the mounting, the manuals claim better performances with the native gluster protocol, but I&#39;m not sure this is the case if you have a a huge amount of small files.</div>
<div style>I experienced big performance problems with a replicated volume that had many small files, and I had to give up entirely on the glusterfs technology for that particular project. To be fair, because of network topology constraints, my two nodes where using a standar 1Gbit network link, shared with other network traffic, so the performance issues might be partially caused by the &quot;slow&quot; link, but googling around, I&#39;m not the only one facing this kind of problem.</div>
<div style><br></div><div style>About your missing files, I have one last (possibly silly) question/suggestion: on the server themselves, did you remount the glusterfs volume using either the native or nfs protocol on another mount point? </div>
<div style>I have just a replicated volume, but I found that if you don&#39;t do that, and above all, if you don&#39;t access/create the files on the glusterfs-mounted filesystem but you use the original fs mount point (in my case an xfs), the files are not replicated at all.</div>
<div style>To be clear:</div><div style> You have server1:/brick1 replicated to server2:/brick2. (let&#39;s forget about distribution, for now).</div><div style>server1:/brick1 is a xfs or ext4 filesystem mounted on a mount point on your server.</div>
<div style>When you create the volume, you must mount the volume via nfs or glusterfs protocol on another mount point on the server, for example server1:/glustermountpoint</div><div style>When you create files, you must do it on server1:/glustermountpoint, and not on server1:/brick1, otherwise the files are not replicated to server2 and they are stored on server1 only.</div>
<div style>I don&#39;t think that the documentation is very clear on this (i don&#39;t think that the glusterfs documentation is particularly clear in general) so double-check that as well.</div><div style>Hope this helps...</div>
<div style>Regards,</div><div style><br></div><div style>Davide</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On 30 May 2013 07:24, Stefano Sinigardi <span dir="ltr">&lt;<a href="mailto:stefano.sinigardi@gmail.com" target="_blank">stefano.sinigardi@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Dear all,<br>
this is my first message to this mailing list and I also just<br>
subscribed to it. So please, forgive me for my inexperience. I hope<br>
this is also the correct place to ask this question. I&#39;m not a system<br>
administrator, even if I&#39;m requested to do so (phd stud here). I like<br>
to do it, but sometimes I&#39;m lacking the required knowledge. Anyway,<br>
here&#39;s my problem that, has always, needs to be solved by me as soon<br>
as possible.<br>
I installed gluster 3.3.1 on Ubuntu 12.10 (from the repository) on 4<br>
machines, all connected together via LAN but two also have a special<br>
Infiniband link between them. On two of them I created a &quot;scratch&quot;<br>
volume (distributed, 8 TB tot), on the other two I created a &quot;storage&quot;<br>
volume (distributed + replicated, 12 TB tot but because of replica<br>
just 6 TB available to users). All of the machines see both volumes,<br>
and for now to use them you have to ssh to one of those (in future it<br>
will be exported: do you suggest nfs or gluster as the mounting type?)<br>
The distributed and _not_ replicated filesystem seems to work (at<br>
least for now) very well and also is perfectly accessible from all<br>
machines, even if is built on them connected by infiniband.<br>
The other replicated _and_ distributed filesystem, on the other hand,<br>
has some problems. In fact, from all nodes, it&#39;s missing some files<br>
when asked to list file in a folder with commands like &#39;ls&#39;. This<br>
happened from one day to the other, because I&#39;m sure that three days<br>
ago it was working perfectly. The configuration didn&#39;t change (one<br>
machine got rebooted, but even a global reboot didn&#39;t fix anything).<br>
I tried to do a volume rebalance to see if it was going to do anything<br>
(it magically fixed a problem at the very beginning of my gluster<br>
adventure), but it never completed: it grew up to a rebalance of<br>
hundred of million of files, but there should not be so many files in<br>
this volume, we&#39;re speaking of order of magnitude less. I tried to<br>
list single bricks and I found that files are still present on them,<br>
and each one on two bricks (because of replica), and perfectly working<br>
if directly accessed to read them, so it seems that it&#39;s not a<br>
hardware problem on a particular brick.<br>
As another strategy, I found on the internet that a &quot;find . &gt;<br>
/dev/null&quot; launched as root on the root folder of the glusterfs should<br>
trigger a re-hash of the files, so maybe that could help me.<br>
Unfortunately it hangs almost immediately in a folder that, as said,<br>
is missing some files when listed from the global filesystem.<br>
I tried to read logs, but nothing strange seems to be happening (btw:<br>
analysing logs I found out that also the rebalance got stuck in one of<br>
these folders and just started counting millions and millions of<br>
&quot;nonexistant&quot; files (not even in the single brick, I&#39;m sure that those<br>
folder are not so big), so that&#39;s why it wrote hundreds of millions of<br>
files non requiring rebalance in the status)<br>
<br>
Do you have any suggestion?<br>
Sorry for the long mail, I hope it&#39;s enough to explain my problem.<br>
<br>
Thanks a lot for your time and for your help, in advance<br>
Best regards to all,<br>
<br>
     Stefano<br>
_______________________________________________<br>
Gluster-users mailing list<br>
<a href="mailto:Gluster-users@gluster.org">Gluster-users@gluster.org</a><br>
<a href="http://supercolony.gluster.org/mailman/listinfo/gluster-users" target="_blank">http://supercolony.gluster.org/mailman/listinfo/gluster-users</a><br>
</blockquote></div><br></div>