Forum Discussion

Piotr_Lewandows's avatar
Icon for Altostratus rankAltostratus
May 17, 2017

Reselect member with new port


I am not sure if my rule is broken or there is some bug in v11.2.0

I have VS IP:8888 with pool containing members set to All ports IP:0 but backed server is listening on port 443.

I need to change port from 8888 to 443 when connecting to backed server.

I tired this iRule but always getting error like that:

TCL error: /Common/http_to_https_one_vs - failed to find pool member (line 1) invoked from within "pool LAMP_110_all_pl member 443"



    pool LAMP_110_all_pl member 443


I tried putting above command in HTTP_REQUEST event but error is the same. Tried to use /Common/LAMP_110_all_pl as well, no difference.

However everything works OK when I switch to below code


when LB_SELECTED {  
    LB::reselect node 443


I would prefer to use first one as second one seems to be messing up with LB a bit. By that I mean that before LB::reselect is used, LB::server name is returning

/Common/PoolName 0

after reselect just 443

and in node command (don't know if it is realted to LB::reselect node as well) there is note:

Since statistics and health monitoring are tied to pool membership, node status and statistics for this connection will not be available.

So why pool LAMP_110_all_pl member 443 is returning error?


2 Replies

  • OK, figured it out.


    pool LAMP_110_all_pl member 443


    can't be used as it only allows selecting members as defined in specified pool. My pool members are defined as member:0 not member:443


    So only way is to use:






    LB::reselect node


    Now, questions is which one is better and what caveats are expected? I thing for LB::reselect I need to create code to avoid loop with reselecting node that is donw? something using LB_DOWN event.


    I wonder if LB::reselect is smart enough (seems to be) to not trigger second time in LB_SELECTED. From my logging it looks like that:


    • LB_SELECTED triggered first time - LB::reselect performed
    • LB_SELECTED triggered by LB::reselect - LB::reselect not performed again

    Is above correct assumption?


    What about node command?




  • Hi,

    why are you using pool with port 0 (any)? this is the main question!!!

    one solution is to create a new pool with members port 443.. then you can use the command : pool

    LAMP_110_all_pl_443 member 443