Forum Discussion

chub_zh_185747's avatar
chub_zh_185747
Icon for Nimbostratus rankNimbostratus
Feb 05, 2015

Creating and managing priority groups with iControl

I am attempting to configure a special load balancing strategy that will be based on priority groups. Essentially I want my pool of n-nodes to have 2 priority groups (PGs): blue and green. Each PG has n/2 pool members in it (hence if the pool has 10 nodes, 5 are in the "blue" PG and 5 are in the "green" PG).

At any given time, one of the two PGs will have a higher priority (blue or green). I simply want the PG with the higher priority to be served traffic (and, within the PG, all nodes being round robined). Hence, if the blue PG has a priority value of, say, 4, and green's value is 2, then F5 should only serve traffic to the blue PG nodes, and should round robin within that PG.

If the priorities/values for the PGs are swapped, and now green's value is 4 and blue's value is 2, now only the green nodes are served traffic, and in round robin fashion. Etc.

To do this I need to:

  • Programmatically create the blue/green PGs in the first place
  • Programmatically set the priorities of each PG (say, initialize blue to 4 and green to 2)
  • Programmatically get the priorities of each PG

I found this article which I believe helps me accomplish the last two items (except I do have a question about it), but am still at a loss as to how to programmatically create PGs and assign nodes to them.

So I ask: * What iControl API methods do I engage to create PGs and assign nodes to them? * If

LocalLBPool.set_member_priority
is what I need to set PG priorities, I'm confused about the args I should be passing into it. I would have expected the argument to take the name of the PG to set the priority for. Instead it takes a list of pool names, and respective nodes and priorities to set within those pools.

This leads me to believe that PGs are more of a UI construct (in the F5 web app), and that the iControl API just sets priorities individually. Any thoughts/ideas about my questions?

No RepliesBe the first to reply