eNBD on loopback [was Re: [PATCH] 2.5.8 IDE 36]
Quoted 3 lines
Don't ask me, I'm not a user, I have just seen the patch submissions, and I just want to get real user feedback before I'd merge a new "extended nbd".
I haven't used enbd, because the site was down the weekend I was evaluating the alternatives... I did try NBD and DRBD, however. My experience was that enbd could hardly be worse than nbd, for the following reasons:
The nbd server software referenced in the Configuration documentation (the only I was able to find, and that only after some digging), would fail rather quickly because the remote kernel would send a request much larger than the server was expecting.
After a couple of days, the primary machine would just lock up when running RAID-1 on top of the NBD.
The NBD server code is, not pretty... It sounds like that server was written as just a hack, and really hasn't been looked at since then.
This was with kernel version 2.4.18.
DRBD is what I'm currently using and it's been running for a few weeks now without any problems. It combines the mirroring and NBD functionality into a single combined package. A nice feature of DRBD is that it understands about the second node and can do things like wait for a RAID mirror to finish before starting up other processes.
enbd has some nice features, particularly it looks like the server code has had a lot more development in it. Particularly nice is that the client/server will auto-negotiate an optimized mirror mode where they will exchange MD5 sums of each block, and only transmit the block if the MD5 is different... It switches to and from this mode automatically.
I can't really on wether enbd should be in the kernel... It can't be worse than nbd, based on my experience. It's active development makes it a better choice to include.
Sean
Signature · 4 lines
Fire at the celuloud factory. No film at eleven.
-- _Kentucky_Fried_Movie_
Sean Reifschneider, Inimitably Superfluous <[email protected]>
tummy.com - Linux Consulting since 1995. Qmail, KRUD, Firewalls, PythonQuoted 4 lines · Sean Reifschneider
Quoted 3 lines
Don't ask me, I'm not a user, I have just seen the patch submissions, and I just want to get real user feedback before I'd merge a new "extended nbd".
Quoted 8 lines
I haven't used enbd, because the site was down the weekend I was evaluating the alternatives... I did try NBD and DRBD, however. My experience was that enbd could hardly be worse than nbd, for the following reasons:
The nbd server software referenced in the Configuration documentation (the only I was able to find, and that only after some digging), would fail rather quickly because the remote kernel would send a request much larger than the server was expecting.
Indeed. The source code reference in th Configuration documentation is very much out of data and completely broken for anything that requires 64 bit sizes on a 32 bit architecture.
This is all fixed now (I know because I shared your frustration and went and fixed it myself (-:), if you want to get a properly working version which exhibits no problems under very intensive i/o on a 15GiB partition over a 100MBit lan just go to http://sf.net/projects/nbd/ and get the latest version from CVS or download the new 2.0 release tarball.
Quoted 2 lines
After a couple of days, the primary machine would just lock up when
running RAID-1 on top of the NBD.
I haven't tried RAID... Interesting idea though.
Quoted 2 lines
The NBD server code is, not pretty... It sounds like that server was
written as just a hack, and really hasn't been looked at since then.
Yes, I had that impression, too. I hope I made the parts I touched look a bit better. (-8
Quoted 1 line
This was with kernel version 2.4.18.
Simillar here on server side (2.4.18-pre7-ac2+misc patches).
Quoted 12 lines
DRBD is what I'm currently using and it's been running for a few weeks now without any problems. It combines the mirroring and NBD functionality into a single combined package. A nice feature of DRBD is that it understands about the second node and can do things like wait for a RAID mirror to finish before starting up other processes.
enbd has some nice features, particularly it looks like the server code has had a lot more development in it. Particularly nice is that the client/server will auto-negotiate an optimized mirror mode where they will exchange MD5 sums of each block, and only transmit the block if the MD5 is different... It switches to and from this mode automatically.
Quoted 3 lines
I can't really on wether enbd should be in the kernel... It can't be worse than nbd, based on my experience. It's active development makes it a better choice to include.
nbd is also actively developed. The only problem is nobody has bothered to update the kernel documentation to point to the website where development happens. )-:
While we are here, I will make patches for 2.4 and 2.5 in a minute and submit them...
Anton
Signature · 5 lines
"I've not lost my mind. It's backed up on tape somewhere." - Unknown -- Anton Altaparmakov <aia21 at cantab.net> (replace at with @) Linux NTFS Maintainer / IRC: #ntfs on irc.openprojects.net WWW: http://linux-ntfs.sf.net/ & http://www-stu.christs.cam.ac.uk/~aia21/
Quoted 1 line · Anton Altaparmakov
I haven't tried RAID... Interesting idea though.
My use for it was in a high availability cluster, where I was using NBD to set up shared storage between the two machines.
Another challenge I ran into, which DRBD solves well, is that it was hard to get the RAID to operate in degraded mode. It would try to access the block device on the first startup of the md device after the primary failure, even if the raidtab told it the drive was dead... I finally just set up a noop nbd server that would return the proper size on startup, but any subsequent read/writes would fail...
Quoted 3 lines
nbd is also actively developed. The only problem is nobody has bothered to update the kernel documentation to point to the website where development happens. )-:
Updates to the Configuration documentation would really help. I've asked google to index nbd.sf.net, and also asked Alan Robertson to add it to his list of shared storage alternatives on the linux-ha.com site. When I was trying to get NBD going, I was unable to find nbd.sf.net through google, though this may have changed in month since I was doing the work...
Sean
Signature · 3 lines
Got Source? Sean Reifschneider, Inimitably Superfluous <[email protected]> tummy.com - Linux Consulting since 1995. Qmail, KRUD, Firewalls, Python
Hi!
Quoted 8 lines
Quoted 8 lines
Quoted 3 lines
Don't ask me, I'm not a user, I have just seen the patch submissions, and I just want to get real user feedback before I'd merge a new "extended nbd".
I haven't used enbd, because the site was down the weekend I was evaluating the alternatives... I did try NBD and DRBD, however. My experience was that enbd could hardly be worse than nbd, for the following reasons:
Quoted 8 lines
Quoted 4 lines
The nbd server software referenced in the Configuration documentation (the only I was able to find, and that only after some digging), would fail rather quickly because the remote kernel would send a request much larger than the server was expecting.
Indeed. The source code reference in th Configuration documentation is very much out of data and completely broken for anything that requires 64 bit sizes on a 32 bit architecture.
Can you submit patch to fix that docs? It should point to sourceforge..
Quoted 5 lines
This is all fixed now (I know because I shared your frustration and went and fixed it myself (-:), if you want to get a properly working version which exhibits no problems under very intensive i/o on a 15GiB partition over a 100MBit lan just go to http://sf.net/projects/nbd/ and get the latest version from CVS or download the new 2.0 release tarball.
Pavel
Signature · 2 lines
Philips Velo 1: 1"x4"x8", 300gram, 60, 12MB, 40bogomips, linux, mutt, details at http://atrey.karlin.mff.cuni.cz/~pavel/velo/index.html.