I a bit new to csync2.
So first I setup lsyncd + csync2 for multiple loadbalanced webservers to
sync files.
But it failed when csync2 was running simultaneously on multiple nodes
cause of "Database backend is exceedingly busy" , I added the -B flag to
csync2, and now I think it works.

It also failed when some of the web guys did a copy of a folder with more
than 70.000 files. The Inotify queue was filled and I got "OVERFLOW in
event queue" from lsyncd and csync2 got in a weird state that I had to fix.

And I've had some troubles with weird states. I think the problem is when
files is changed on multiple nodes and that csync2 is called with -x every
time and it takes a while for it to complete it's execution.

Then I poked around the net and see that there is a csync2 2.0rc2 exists
(so I guess 2.0 is around the corner).
And then I found that there is a csync2 specific inotify solution here
And I set it up on two nodes to play with it.

I created a config file, that I assume should look something like this:
# cat /etc/csync2id.cfg
@::dirs=qw( /kiwi );

And I fired up csync2id.pl on two nodes. First thing I noticed is that it
didn't create these files.

So no files in /dev/shm, is it supposed to create those files?

But anyway I tested to create a bit more than 500.000 files on node01.
And it started syncing, a bit slow but it started syncing.
Then I created 2000 files on node2 and it started syncing to the other node.

So apparently it appears to work without those files in /dev/shm

But I noticed. Something it didn't pick up 20 files per csync2 command
according to csynchintmaxargs=20
Sometimes it synced 1 file, even with a queue of more than 100.000. But it
should batch 20 files at a time?

And I noticed that csync2 is called with the -B and -A options. Should I
run the xinetd csync2 process with -i -B -A or just -i?

And have anyone battle tested csync2id.pl?

What is the best practices setting up a file-sync solution for webservers
where all nodes are masters?

Csync2 mailing list

Reply via email to