Channel bonding with diskless clients. How?

Justin W jlist at jdjlab.com
Mon Aug 20 14:32:32 UTC 2007


Rob wrote:
>
> Hi,
>
> I have a cluster configured with a master with a large disk and several
> diskless clients.
>
> The kernel configuration allows initial bootstrap and NFS mounting of the
> file systems via the eth0 ethernet card. The diskless client has another
> ethernet card (eth1), which is unused now.
>
> The boot strapping and initial NFS root mounting works via the single
> eth0 card.
>
> But I'd like to channel bond the two ethernet cards on the diskless 
> clients.
>
> As far as I understand, channel bonding requires first to shutdown
> the active ethernet card, then configure a bond as the master and
> attach the ethernet cards to the bond:
>  # ifconfig eth0 down
>  # ifconfig eth1 down
>  # ifconfig bond0 10.1.1.1 netmask 255.255.255.0 broadcast 10.1.1.255 up
>  # ifenslave bond0 eth0 eth1
>
> However, as soon as I shutdown eth0, the client lost its NFS connection
> to the master. I have pulled away the carpet under my own feet....and
> the client freezes up.
>
> Is there a way to circumvent this problem?
> Can I channel-bond a connection, without shutting down the active
> ethernet card?
>
> Thank you.
> Rob.
>

Be warned, I've never done anything like this before, but I *think* this 
should point you in the right direction.

In a diskless client, it downloads the kernel and ramdisk from a 
server.  The kernel then runs the small file system within the ramdisk 
before swapping the '/' directory to your NFS root.  In my view, you 
need to create your own ramdisk which takes down eth0, creates the bond0 
interface, and enslaves eth0 and eth1 (probably before nearly every 
other operation, but at least before the NFS share is loaded).  Then you 
could continue to mount the NFS partition, and let the kernel swap the 
root file system.  After that point, the system should boot normally.

Sorry I can't be any more specific than that, but maybe it'll give you 
enough to search for, or maybe another user on the mailing list could 
fill in the large gaps.

Justin W




More information about the users mailing list