Persistence not honored with iRule on session hash
This is my first post, so I apologize if I miss something.
We're using a BIG-IP 11.4.1 Build 637.0 Hotfix HF3 to route HTTPS traffic from a central data center IP to our application pool. Load balancing is occurring via an iRule based (see below). For the most part, persistence is maintained, but occasionally a different pool member gets routed to. This causes an undesired result in our application. We've had a case open with support but haven't gotten resolution to this thus far. We've tried the following:
Route based on sourceIP - overloaded single pool member because traffic was coming single IP.
Tried using LB::detach based on KB article from support: https://support.f5.com/kb/en-us/solutions/public/7000/900/sol7964.html This actually caused the undesired effect in the application to occur more frequently.
Here is our iRule:
when HTTP_RESPONSE { set SessionHash [HTTP::header "X-IntegrationServer-Session-Hash"] if { $SessionHash != "" }{ persist add uie $SessionHash 21600 } } when HTTP_REQUEST { set cli [IP::remote_addr]:[TCP::remote_port] set SessionHash [HTTP::header "X-IntegrationServer-Session-Hash"] if { $SessionHash != "" } { persist uie $SessionHash 21600 } }
Any and all help is appreciated. Thanks, Michael C.