[Click] network load-balancer troubleshooting
Sunjeet Singh
sstattla at gmail.com
Tue Dec 7 17:38:28 EST 2010
Can someone please help me troubleshoot?
On Linux, I'm trying to configure a load-balancer that sits in front of
a cluster, receives all packets destined to that cluster, calculates a
hash of some fields of the packet using HashSwitch() to decide which
worker machine in the cluster to send that packet to, and finally then
forwards that packet to that worker machine by rewriting the MAC Address
field of that packet.
Here's what my click script looks like (currently testing with one
frontend machine and one worker machine)-
AddressInfo(mymac <IP add. of frontend/8> <mac add of eth0>);
AddressInfo(worker1 <IP add. of worker1/8> <mac add of worker eth0>);
AddressInfo(worker2 <IP add. of worker1/8> <mac add of eth1>);
AddressInfo(worker3 <IP add. of worker1/8> <mac add of eth2>);
my_switch :: HashSwitch(26, 8);
FromDevice(eth4, PROMISC true) -> my_switch;
todevice1 :: ToDevice(eth0);
todevice2 :: ToDevice(eth1);
todevice3 :: ToDevice(eth2);
my_switch[0] -> EtherEncap(0x0800, mymac, worker1) -> Queue -> todevice1;
my_switch[1] -> EtherEncap(0x0800, mymac, worker2) -> Queue -> todevice2;
my_switch[2] -> EtherEncap(0x0800, mymac, worker3) -> Queue -> todevice3;
When I run the script with the command "sudo click try.click", it starts
executing and gives no messages. To test it,
I used tcpdump to first see if any of the interfaces on worker1 is
receiving any traffic -> No.
Then I checked if any traffic is going out of eth0, eth1 or eth2 on
frontend -> No.
Checked if eth4 is receiving the packets I sent through tcpreplay -> Yes.
How can I go about debugging this? I will greatly appreciate any help in
this regard.
Thank you,
Sunjeet Singh
More information about the click
mailing list