Hi,
This is a patch that I have been thinking about for a while
and have finally coded up. I haven't tested it much, but I thought
I would throw it out to the world on the off chance that anyone
is interested.
It is pretty simple, it adds quiescent and offline flags
to a real-server in LVS and allows this to be configured
and viewed from ipvsadm. It is backwards compatible with
the old method of setting the weitht to zero to mark
a server as quiecent. I think it is more powerful than
this as it decouples quiescece fromt he weight. And simmilarly
decouples being offline from presance in the lvs-table.
Its also pretty efficient, as in most cases the atomic
read of the weight has been replaced with an atomic read
of the conn_flags and a bitwise or. It also does not
break the ABI that is used to communicate between ipvsadm
and the kernel, nor the output of ipvsadm used by
scripts (like ldirectord).
Attached is a version for lvs as of the 2.6.7.11 kernel,
and ipvsadm 1.24.
Enjoy
--
Horms
linux-2.6.11.7.oq.patch
Description: Text document
ipvsadm.oq.patch
Description: Text document
|