From owner-freebsd-stable@FreeBSD.ORG Tue Jul 15 15:23:24 2008 Return-Path: Delivered-To: freebsd-stable@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 22764106564A for ; Tue, 15 Jul 2008 15:23:24 +0000 (UTC) (envelope-from olli@lurza.secnetix.de) Received: from lurza.secnetix.de (unknown [IPv6:2a01:170:102f::2]) by mx1.freebsd.org (Postfix) with ESMTP id 7F4738FC0C for ; Tue, 15 Jul 2008 15:23:23 +0000 (UTC) (envelope-from olli@lurza.secnetix.de) Received: from lurza.secnetix.de (localhost [127.0.0.1]) by lurza.secnetix.de (8.14.1/8.14.1) with ESMTP id m6FFNIc7044048; Tue, 15 Jul 2008 17:23:18 +0200 (CEST) (envelope-from oliver.fromme@secnetix.de) Received: (from olli@localhost) by lurza.secnetix.de (8.14.1/8.14.1/Submit) id m6FFNIRJ044047; Tue, 15 Jul 2008 17:23:18 +0200 (CEST) (envelope-from olli) Date: Tue, 15 Jul 2008 17:23:18 +0200 (CEST) Message-Id: <200807151523.m6FFNIRJ044047@lurza.secnetix.de> From: Oliver Fromme To: freebsd-stable@FreeBSD.ORG, sven@dmv.com In-Reply-To: <1216130834.27608.27.camel@lanshark.dmv.com> X-Newsgroups: list.freebsd-stable User-Agent: tin/1.8.3-20070201 ("Scotasay") (UNIX) (FreeBSD/6.2-STABLE-20070808 (i386)) MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-2.1.2 (lurza.secnetix.de [127.0.0.1]); Tue, 15 Jul 2008 17:23:19 +0200 (CEST) Cc: Subject: Re: Multi-machine mirroring choices X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: freebsd-stable@FreeBSD.ORG, sven@dmv.com List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Jul 2008 15:23:24 -0000 Sven Willenberger wrote: > [...] > 1) I have been using ggated/ggatec on a set of 6.2-REL boxes and find > that ggated tends to fail after some time leaving me rebuilding the > mirror periodically (and gmirror resilvering takes quite some time). Has > ggated/ggatec performance and stability improved in 7.0? This > combination does work, but it is high maintenance and automating it is a > bit painful (in terms of re-establishing the gmirror and rebuilding and > making sure the master machine is the one being read from). First, some problems in ggated/ggatec have been fixed between 6.2 and 6.3. Second, you should tune it a little to improve performance and stability. The following reply in an earlier thread is interesting: http://lists.freebsd.org/pipermail/freebsd-stable/2008-January/039722.html > 2) Noting the issues with ggated/ggatec in (1), would a zpool be better > at rebuilding the mirror? I understand that it can better determine > which drive of the mirror is out of sync than can gmirror so a lot of > the "insert" "rebuild" manipulations used with gmirror would not be > needed here. I don't think there's much of a difference between gmirror and a ZFS mirror if used with ggated/ggatec. Of course, ZFS has more advantages, like checksumming, snapshots etc., but also the disadvantages that it requires considerably more memory. Yet another way would be to use DragoFly's "Hammer" file system which is part of DragonFly BSD 2.0 which will be released in a few days. It supports remote mirroring, i.e. mirror source and mirror target can run on different machines. Of course it is still very new and experimental (however, ZFS is marked experimental, too), so you probably don't want to use it on critical production machines. (YMMV, of course.) Best regards Oliver -- Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing b. M. Handelsregister: Registergericht Muenchen, HRA 74606, Geschäftsfuehrung: secnetix Verwaltungsgesellsch. mbH, Handelsregister: Registergericht Mün- chen, HRB 125758, Geschäftsführer: Maik Bachmann, Olaf Erb, Ralf Gebhart FreeBSD-Dienstleistungen, -Produkte und mehr: http://www.secnetix.de/bsd PI: int f[9814],b,c=9814,g,i;long a=1e4,d,e,h; main(){for(;b=c,c-=14;i=printf("%04d",e+d/a),e=d%a) while(g=--b*2)d=h*b+a*(i?f[b]:a/5),h=d/--g,f[b]=d%g;}