Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 6 Jan 2003 15:02:24 -0800 (PST)
From:      "Andrew P. Lentvorski, Jr." <bsder@allcaps.org>
To:        Nate Lawson <nate@root.org>
Cc:        current@freebsd.org
Subject:   Re: mirrored root fs?
Message-ID:  <Pine.LNX.4.44.0301061244520.16301-100000@mail.allcaps.org>
In-Reply-To: <Pine.BSF.4.21.0301061025350.10897-100000@root.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 6 Jan 2003, Nate Lawson wrote:

> I'd like to have a mirrored root partition.  I tried ccd(4) but the boot
> blocks couldn't find the fs.  Any idea how much work it would take to
> enable booting a ccd root?  Also, does vinum already support this?

I gave this the old college try a while ago, here's what I found out about 
the different methods:

1) CCD -- no info
   I never really tried CCD as there seem to be much better options with 
atacontrol, vinum, and RAIDFrame.

2) 3Ware Escalade Cards
   Advantanges:
      They work like a charm and look just like a SCSI controller
   Disadvantages:
      Extra hardware.  Expense.  Proprietary.

3) atacontrol
  Probably your best choice right now if you have a real RAID controller 
on your motherboard.  The BIOS takes care of most of the nasty booting 
details.
  If you don't have a real RAID controller on the motherboard, stop now.  
Rebuilds don't work if you don't have a real RAID controller.  You can
recover, but it requires some dancing with dd (search the archives).  

   Advantages:
      BIOS handles bootup issues.  Very little required from OS
   Disadvantages:
      Hardware required.  Proprietary.
      Will not rebuild a broken array without hardware RAID

The next two methods require only FreeBSD.  They both share the same
problem: you have to boot a kernel from somewhere non-RAID and then the
kernel can "autodetect" RAID configurations as it boots.  Autodetection of
the RAID systems before mounting root is the key here.  If something needs
to mount / before it can configure, you can't mirror / since FreeBSD has 
no method for remounting /.  Perhaps this has changed with the new GEOM 
code, somebody might want to ask Poul about this.

4) vinum ( http://www.vinumvm.org/ )
  The older of the two general RAID systems for FreeBSD.  vinum *can* be
fairly complex as it was meant for doing more than just RAID (it is meant
to be something akin to Veritas for full logical volume management).  
However, standard RAID 1 is a fairly simple configuration.  At one point, 
I somehow managed to get vinum to autodetect /, but that was more than a 
year ago on -stable, I haven't tried -current.

   Advantages:
      No extra hardware required (beyond the disks themseleves).
      All code contained in FreeBSD (nothing proprietary)
      Does more than just RAID

   Disadvantages:
      Kernel required to be booted from somewhere non-RAID
      Unknown status with respect to SMP and GEOM

5) RAIDFrame ( http://people.freebsd.org/~scottl/rf/ )
   RAIDFrame is the newer kid on the block in FreeBSD RAID.  It is a port
of the RAIDFrame code from NetBSD (which is itself a port of the RAIDFrame
code from CMU, IIRC).  Back in -stable within the last year, I managed to
get RAIDFrame to autodetect on boot.  Unknown in -current.

   Advantages:
      No extra hardware required (beyond the disks themseleves).
      All code contained in FreeBSD (nothing proprietary)

   Disadvantages:
      Kernel required to be booted from somewhere non-RAID
      Unknown status with respect to SMP and GEOM (although this stuff is 
         on the radar screen)

The following is not a true RAID solution, but it seems to be popular:

6) root partition pseudo-mirror using dd with RAID on other partitions 
       ( http://ezine.daemonnews.org/200111/vinum.html )
   This is what most people who use FreeBSD kernel-based RAID mirroring
currently do.  CAUTION: This does *not* have the reliability advantages of
true RAID 1 mirroring.  If the disk containing your root filesystem goes
down, so does your system.  This may not matter to you, but it is
something you should be aware of.

   Advantages:
      No extra hardware required (beyond the disks themseleves).
      All code contained in FreeBSD (nothing proprietary)
      Kernel booted from pseudo-mirror

   Disadvantages:
      Root partition disk crash takes out system
      Manual copying of root partition required
      Mirroring with dd may fail on open files

As always, these opinions are my own.  Your mileage may vary.  All 
disclaimers apply.  Yadda, yadda, yadda, etc., etc. ;)

Hope this helps,
-a


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.LNX.4.44.0301061244520.16301-100000>