Forum Discussion

William_Them_99's avatar
William_Them_99
Icon for Nimbostratus rankNimbostratus
Feb 21, 2006

Node command troubles

I have a pool of two servers and for certain URIs, I only want it to go to a specific server.

 

 

To simplify my iRule, it looks something like this:

 

 


when HTTP_REQUEST
{
if {[HTTP::uri] contains "/registration" && $do_auth == 1}
{  
if {[HTTP::uri] contains "renewal.aspx" || [HTTP::uri] contains "renewal_admin.aspx"}
{
  node  443
}
HTTP::release
}
...
}

 

 

The code on "renewal.aspx" generates an email, and this email is coming three to four times from one page visit. In the logs, I can see that it's going to the HTTP_REQUEST and HTTP_RESPONSE repeatedly. When I remove the IF statement that calls the Node command, the request is load-balanced across the two servers just fine, with no repeat emails and no repeat log entries. But I do need it to just go to one server.

 

 

Am I doing something incorrectly?

 

 

Thanks.

 

 

-Bill

5 Replies

  • Colin_Walker_12's avatar
    Colin_Walker_12
    Historic F5 Account
    Have you tried using the pool member command, instead of node?

    
    pool member  

    I'd be curious to see if this exhibits the same behavior.

    -Colin
  • Actually, I just got the chance to try the pool member instead of node and it seems to be working fine now....
  • unRuleY_95363's avatar
    unRuleY_95363
    Historic F5 Account
    If you are concerned about the "truncated-ip - 334 bytes missing!" error, it generally comes from not specifying a snaplen to tcpdump. Try adding '-s 1500' to your tcpdump command.

     

     

    You may also want to tcpdump the vlan that the pool member is on, so you can see if it is in fact trying to connect to that pool member.

     

     

    You could also try adding an LB_FAILED event with a log message. This will identify whether the bigip is resetting the connection because it can't connect to the pool member, which is probably the case. You should also check the ltm log file for any other errors.
  • unRuleY_95363's avatar
    unRuleY_95363
    Historic F5 Account
    Ah, I didn't realize you were using FastHTTP. FastHTTP doesn't actually use the node or pool member commands (though it also doesn't produce an error indicating those commands aren't supported, which we need to fix). In order to do what you want, you will need to create individual pools with each pool member in them and then select the pool. Sorry about that.
  • unRuleY_95363's avatar
    unRuleY_95363
    Historic F5 Account
    You should consider going through support and requesting an enhancement to be able to select a node/pool member when using FastHTTP. We would likely be able to hotfix this...