Forum Discussion
David_Bradley_2
Nimbostratus
Apr 10, 2007LB::reselect not working as expected
I'm got an LB_SELECTED that is checking if the choice made by the LB is acceptable, and doing an LB::reselect if not. I setup an artificial condition in my lab in which no choice is acceptable. Base...
David_Bradley_2
Nimbostratus
Apr 12, 2007Citizen,
Thanks for your help. I thought of doing that. I'd have to:
1) maintain a class with the same information that's already in the pool definition. If there were some way to find out the pool members from within the irule, then I would be nicer. But I could do this.
2) In order to "load" the class data with the current ratios, i'd have to make a pass through LB_SELECTED for each server in the pool. I guess the only way to reliably do this is via a "pool member " from the CLIENT_DATA event. i.e. pseudocode
CLIENT_DATA
foreach member in class
if member(capacity) uninitialized
pool
elsif member(capacity) > incoming client's weight
pool
endif
endfor
LB_SELECTED
if uninitialized capacity value for this member
member(capacity) = [LB::server ratio]
if member(capacity) < incoming client's weight
LB::reselect
endif
endif
Is this the best (or only) way you can think of to pull this off?
Dave
Recent Discussions
Related Content
DevCentral Quicklinks
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
Discover DevCentral Connects