session persistency
2 TopicsHow can I log remaining timeout of session persistence if persistence record is found
As always being challenged F5 is not working as expected and I'm attemp to prove IT'S NOT f5. Customer has asked to setup source address persistence with 60 minutes timeout value. But, saying their session being booted before timeout and F5 is load balancing to different pool member as session sticky is not working. I don't want to run tcpdump for long time. I don't see any documenation on how to log timeout if a persistence record is found. I put together an irule but not showing the timeout. when CLIENT_ACCEPTED { if { [persist lookup source_addr [IP::client_addr]] ne "" } { # Get the persistence timeout value (in seconds) set timeout [lindex [persist lookup source_addr [IP::client_addr]] 1] log local0. "LB INFO - Client: [IP::remote_addr], Pool: [LB::server], Persist: [persist lookup source_addr [IP::client_addr]] with timeout: $timeout" } else { log local0. "LB INFO - Client: [IP::remote_addr], Pool: [LB::server], Persist: xxx [persist lookup source_addr [IP::client_addr]]" } } Seems this line of code is not doing what it claims would do (blame ChatGPT if does not seem right) ;-) set timeout [lindex [persist lookup source_addr [IP::client_addr]] 1] Any direction will be appreciated.Solved68Views0likes2CommentsF5 iRule for persistence with header and source address persistence as fallback
Hello, I'm not so good in iRules, but maybe someone can give me some examples, I have an VS for more than one service with an iRule like this below when HTTP_REQUEST { if {[string tolower [HTTP::host]] starts_with "company.com"}{ if {[string tolower [HTTP::uri]] starts_with "/human"}{ pool "pool_human" } elseif {[string tolower [HTTP::uri]] starts_with "/body"}{ pool "pool_body" } elseif {[string tolower [HTTP::uri]] starts_with "/dev"}{ pool "pool_dev" } } } so now I want to integrate in this iRule a decision, for the /body should be an header persistence active, for example the request arrives with header1 it should persist to node1 in the pool_body and with header2 it should persist to node2 in the pool_body. If is header 1 and 2 not present he should use source address persistence as fallback persistence. Is that possible ? Could someone show me an example how could I the existing iRule extend with my requirement ? thx kind regards1.4KViews0likes5Comments