From owner-freebsd-hackers@FreeBSD.ORG Thu Jul 10 13:38:10 2003 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CD2B737B401 for ; Thu, 10 Jul 2003 13:38:10 -0700 (PDT) Received: from adsl-64-161-78-226.dsl.lsan03.pacbell.net (adsl-64-161-78-226.dsl.lsan03.pacbell.net [64.161.78.226]) by mx1.FreeBSD.org (Postfix) with SMTP id 0E95943F75 for ; Thu, 10 Jul 2003 13:38:10 -0700 (PDT) (envelope-from oremanj@adsl-64-161-78-226.dsl.lsan03.pacbell.net) Received: (qmail 5624 invoked by uid 1001); 10 Jul 2003 20:38:21 -0000 Date: Thu, 10 Jul 2003 13:38:21 -0700 From: Joshua Oreman To: Peter Jeremy Message-ID: <20030710203821.GA5576@webserver.get-linux.org> References: <20030710201013.GA1892@cirb503493.alcatel.com.au> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20030710201013.GA1892@cirb503493.alcatel.com.au> User-Agent: Mutt/1.4.1i cc: hackers@freebsd.org Subject: Re: Mirroring using vinum+NFS X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 10 Jul 2003 20:38:11 -0000 On Fri, Jul 11, 2003 at 06:10:13AM +1000 or thereabouts, Peter Jeremy wrote: > I'm looking at building a fileserver and want to mirror the data > across two systems (if one fails, I can use the other). > > Consider system A as the server and system B as the mirror. In theory, > on system A I should be able to: > mount B:/big/data/blob /remote > vnconfig /big/data/block as vn0 > vnconfig /remote as vn1 > vinum mirror vn0+vn1 as serverdata > mount /dev/vinum/serverdata /serverdata > export /serverdata > > (The reason for running the local filesystem through a vnode mount is > to make system A and system B interchangeable). Does anyone see any > problems with this? Any ideas on how much overhead a 50-100GB vnode > mount adds over a raw device? This will not help you at all. Vnconfig only deals with *files*. Directories are outside its realm. Since you have no direct write permission to the device over NFS, Vinum has no chance of working there. > > Can anyone suggest the behaviour if system B fails? Can vinum treat > this as a "failed disk" or will it get caught by the NFS I/O blocking > until the failed server returns? Irrevelant. See above. > > Does anyone have any alternative suggestions? It would probably be > enough to watch all local writes and mirror them onto the remote > system. This approach might even be cleaner than a true mirror but I > don't believe I can do this without a fair amount of local development > (watching writes either using kqueue or a custom geom module and > queueing them into a second filesystem via some protocol). The volume > of data (size and number of files) makes an rsync approach fairly > impractical. Try kqueue. Also, even though rsync seems impractical, it may be necessary for this setup. -- Josh > > Peter > _______________________________________________ > freebsd-hackers@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-hackers > To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"