LinuxQuestions.org
Review your favorite Linux distribution.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Server
User Name
Password
Linux - Server This forum is for the discussion of Linux Software used in a server related context.

Notices


Reply
  Search this Thread
Old 10-25-2010, 02:18 PM   #1
lxf
LQ Newbie
 
Registered: Jul 2010
Posts: 22

Rep: Reputation: 2
2 tier file synchronization (block based, possibly Cluster FS)


Hi,
I'm looking for a write one, read many file synchronization, file system or similar technique. In fact I want a to imitate a zfs_send/zfs_receive similar behaviour on Linux. My requirements are pure local (or in terms of distributed file systems: rack-aware) file handling with remote synchronization. Some random features/requirements I want to achieve are (I use the terms file and "file system" here interchangeable, as I don't care wheter I have to synchronize file based or use full file system supporting that):
  • Access on files from a specific host is pure local, i.e. the node has a full copy of a file, no parts are distributed.
  • Read and write access is local, the remote side gets synchronized with write changes only
  • Write changes on the remote side are non-blocking and asynchronous
  • No need for concurrent file access, concurrent, distributed locking and so on
  • Every file is changed by a single node only, other nodes have read access
  • The file "owner", thus the node allowed to write files must be changeable

Similar techniques (some as technology concept, not usable for me) exist, among those DRBD, MySQL Replication or even pure rsync.

I don't care whether I'm referring to a pure local solution (i.e. between two block devices) or a client/server mode. DRBD won't fit because its a peer to peer solution, I need to synchronize a lot of clients with a central storage through that way where DRBD just mirrors from peer to peer among two nodes and doesn't allow another node to take over the role of the primary node (i.e. node A is master, storage B secondary, I want to change to a thrid node C which becomes master and receives hence a full update from storage B.


Just as a guess, I'd make a local LVM volume on every node where write access happens. In the same time there exists a iSCSI target with multipath to a remote hosts which is shared with every node, again providing a clustered LVM. So I'd need to synchronize a local LVM volume with a remote LVM image. The question is just by which technique I could achieve that (i.e. as RAID 0, where every read and write goes to one node only and doesn't wait the other node to succeed). I could achieve this with rsync by a cyclic push to the remote host, but the problem is, that rsync isn't block based thus I'd need to synchronize every time the whole file, not only changes.

To illustrate my demand:

http://img839.imageshack.us/img839/4914/storaged.png

(I'm sorry if my question fits better in the Linux Enterprise forum. If so, please move)

Last edited by lxf; 10-25-2010 at 02:21 PM.
 
Old 10-27-2010, 01:24 AM   #2
chrism01
LQ Guru
 
Registered: Aug 2004
Location: Sydney
Distribution: Rocky 9.2
Posts: 18,359

Rep: Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751Reputation: 2751
Actually, one of the main features of rsync is that it does only send changes, by default....
Quote:
It is famous for its delta-transfer algorithm, which reduces the amount of data sent over the network by sending only the differences between the source files and the existing files in the destination.
http://linux.die.net/man/1/rsync

It can do push or pull from either end.
 
Old 10-27-2010, 05:39 AM   #3
lxf
LQ Newbie
 
Registered: Jul 2010
Posts: 22

Original Poster
Rep: Reputation: 2
Hm, yes. rsync is my last resort. Nevertheless I fear the performance impact, as rsync is stateless. I mean I can achieve what I want with rsync, but I have to start again from scratch for every iteration, as rsync scans the original file every time. Furthermore rsync is not capable to mirror changing files (i.e. that are changed while calculating differences, transmission).
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
1 tier cluster with HA and load balancing red_coder Linux - Server 3 04-10-2008 01:29 AM
file synchronization software thegreatgatsby Linux - Software 6 11-18-2006 12:07 PM
Need File Synchronization software kalpsesh Linux - Software 4 10-29-2005 12:38 PM
Linux based Cluster for Samba trivel Linux - Software 3 01-14-2005 06:40 AM
email synchronization (not file synchronization) Moebius Linux - Software 6 10-05-2004 05:31 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Server

All times are GMT -5. The time now is 12:58 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration