greg.freemyer at gmail.com
Thu Dec 23 18:12:03 EST 2010
On Thu, Dec 23, 2010 at 8:25 AM, Gaurav Mahajan
<gauravmahajan2007 at gmail.com> wrote:
> Hi Greg...
> Thanks for the valuable info...
> I tried to understand a few more concepts.....
> I believe that md raid is a software raid,which makes it OS dependent
> whereas dmraid can be used to create a hardware raid (fakeRAID) which
> is OS independent...
I know little about fakeRAID.
Linux software raid is what I was describing.
> Now, what I fail to understand is that whether mdadm, which is a
> software tool for creating software RAID uses device mapper
> functionality or not.
I am almost positive mdadm has no knowledge of device mapper.
> For example, lets say I create a RAID 1 array
> using mdadm, will the read and write operations performed on this
> array be passed through the device mapper or is the device mapper
> bypassed in this case ?
I believe device mapper is "typically" above mdraid in the stack.
So you can create raid units via mdadm, then use LVM to assemble those
into Device Mapper volumes. (Note LVM is the userspace tools used to
control / config Device Mapper).
> The fact that the device mapper is supposed to
> be the lowest layer in the storage stack is what brought this question
> to my mind....
Device Mapper is NOT the lowest layer in the stack as far as I know.
> Basically, I'm wondering whether md and dm are at the same level or is dm at the lower level and md at a higher level....
I think the stack is that fixed.
You have a series of stackable items in the block area. You basically
build a custom stack by how you invoke things from userspace.
So you could do this:
ext4 -> LVM (Device Mapper) -> DRDB -> mdraid -> rotating disk
But you can also definitely reverse LVM and DRBD for:
ext4 -> DRDB -> LVM (Device Mapper) -> mdraid -> rotating disk
In my mind I would always have mdraid at the lowest level.
> It would be really helpful if you could elaborate on the difference
> between the working of md and dm....
md is primarily about raid levels.
dm (device mapper) is primarily about logical volumes. Read about LVM
(logical volume manager)
In a production server it would be common to stack DM on top of MD.
Hope that helps
More information about the Kernelnewbies