From owner-freebsd-questions@FreeBSD.ORG Thu Dec 3 09:27:45 2009 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EC4A91065672 for ; Thu, 3 Dec 2009 09:27:45 +0000 (UTC) (envelope-from kraduk@googlemail.com) Received: from mail-fx0-f218.google.com (mail-fx0-f218.google.com [209.85.220.218]) by mx1.freebsd.org (Postfix) with ESMTP id 753BD8FC13 for ; Thu, 3 Dec 2009 09:27:38 +0000 (UTC) Received: by fxm10 with SMTP id 10so1132165fxm.34 for ; Thu, 03 Dec 2009 01:27:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type; bh=3psKKhPMb2gbPcbrwFchngWwbnMmrET4mXlXkzQmQkY=; b=oyyY+jWsioxxeApZ+2caI5lib0uNVNn3DTWEjS4RymnwsS7N1gHw6YdDxCJ3+dBmzR aRta2QlZbKWbLivUkG/5FV4/5hksrRHKWnHwl+zbuNkbtL2dlgLOxeR6Wh01OKqmq8+i 3VUwfUGP2gnjRmAzqfJlyMrV81mjem0MmczeU= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=eWSjMAc9XpP16tyJpT8hVDU9XBcUWrUIFYO9rlFc061nVR6K5fZDCTNpjoXtVxAQfS i3ocpNiv+WwjLvinxrPxfZHSzlVmu1EdSJbNGuuOCCV0tnIwl3yQOuNLhIMIH6OpMXjJ 7JHl32XhhhuiPqsc3Ztq1YSxxIkD0noWSAxcA= MIME-Version: 1.0 Received: by 10.239.145.136 with SMTP id s8mr124757hba.46.1259832458124; Thu, 03 Dec 2009 01:27:38 -0800 (PST) In-Reply-To: <4B156170.5000003@lazlarlyricon.com> References: <4B155562.30109@lazlarlyricon.com> <20091201175500.GN89004@dan.emsphone.com> <4B156170.5000003@lazlarlyricon.com> Date: Thu, 3 Dec 2009 09:27:38 +0000 Message-ID: From: krad To: Rolf Nielsen Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: Dan Nelson , freebsd-questions@freebsd.org Subject: Re: ZFS pools of consisting of several mirrors X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 03 Dec 2009 09:27:46 -0000 2009/12/1 Rolf Nielsen > Dan Nelson wrote: > >> In the last episode (Dec 01), Rolf Nielsen said: >> >>> In experimenting a bit with ZFS, I, among other things, tried something >>> like this >>> >>> zpool create -R /test test mirror file[01]0 mirror file[01]1 mirror >>> file[01]2 mirror file[01]3 mirror file[01]4 mirror file[01]5 >>> >>> This, according to zpool status, gives me a (file backed) pool consisting >>> of six mirrors, each mirror consisting of two files. Now for my >>> question. Exactly how is the pool built? Is it... >>> >>> 1. A RAID0 of the six mirrors? >>> >>> 2. A mirror of two RAID0 arrays, each array consisting of the six files >>> file0[0-5] and file1[0-5] respectively? >>> >>> 3 and 4. Like 1 and 2 above, but with JBOD instead of RAID0? >>> >>> 5. Some other way I haven't thought about? >>> >>> I guess it's 1 or 3, as the zpool status output shows me six mirrors, but >>> which is it? And, provided my guess is correct, is there a way to implement >>> 2 or 4 without involving geom_stripe or geom_concat? >>> >> >> It's 1/3/5. Each mirror is independant, and writes are balanced across >> the >> mirrors based on space usage. If you add another mirror to grow the pool, >> it will get most of the writes until the usages balance out. >> >> You usually don't want to build an array with options 2 or 4, since a >> single >> drive failure will degrade the entire mirror half. Consider if you have >> concat00 -> file01 file02 file03 file04 file05 >> concat01 -> file11 file12 file13 file14 file15 >> mirror0 -> concat0 concat1 >> >> If file01 fails, concat00 fails, causing mirror0 to become degraded. When >> you replace file01, mirror0 will have to resynch all of concat00 from >> concat01 since it doesn't know about the subdevices. If you don't replace >> file01, and then file15 fails, you have lost your entire volume (unless >> you >> do some hackery to swap file05 and file15 to create a functioning >> concat01). >> >> > Good point. Thanks for the reply. > > _______________________________________________ > freebsd-questions@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-questions > To unsubscribe, send any mail to " > freebsd-questions-unsubscribe@freebsd.org" > its RAID 1+0 or raid 10. ZFS stripes across all vnodes added to a pool rather than attached. In your case your vnodes were raid 1, but they could have been raidz(23) giving you raid 50, 60, and 70(?). Or they could be individual vdevs giving your pure raid0.