Forum Discussion
Persistence Conundrum
First of all hello! Second of all, i'm attempting to configure a BIG IP LTM to balance both an online web pool and offline processing workflow pool, on a single subnet.
Here is where i'm up too...
We have one VS with multiple pool members for the http web traffic using cookie (Insert) persistence (with 30min timeout). These online pool members pass on processing of http requests to on workflow VS and pool by passing the data (non http data on port 1099) to the VS IP address. Persistence on the workflow VS is set as source affinity with default timeout. The problem i'm seeing is that only one node in the workflow pool appears to process all the requests and i can't figure out if its due to the persistence type or if its because the F5 thinks the requests are coming from the same source (the online VS IP)...
Any ideas what could be happening here or what persistence type i should be using for passing the data from online to workflow VS.
I think thats all :)
Regards
Bloitus
7 Replies
- The_Bhattman
Nimbostratus
Hi Bloitus,
It would help if you can post your VIP and Pool configuration. That being said are you using SNAT somewhere in this configuration?
Thanks,
Bhattman - Bloitus_10535
Nimbostratus
Hi Bhattman,
Hope this is what you are after...
Web Virtual Server configuration and properties:
Name: Dev-WebTest3-VS
Destination Type: host
IP Address: 192.168.12.132
Service Port: 80
Type: standard
Protocol: TCP
HTTP profile: http (this is a default profile)
Address Translation: Enabled
Port Translations: Enabled
SNAT Pool: AutoMap (to answer your Snat question)
Default Persistence profile: Cookie_Test
NB:Cookie_Test Profile is a persistence profile with cookie method of http cookie insert and a expiration of 30 mins.
Web Pool Config and properties:
Name: Dev-WebTest3-Pool
Allow SNAT: Yes
Allow NAT: Yes
Load Balancing Method: Round Robin
Web Pool Members:
Member 1...
IP address: 192.168.12.122
Service port: 80
Member2...
IP address: 192.168.12.123
Service Port: 80
Workflow Virtual Server configuration and properties:
Name: Dev-WorkflowTest1-VS
Destination Type: Host
IP Address: 192.168.12.140
Service Port: 1099
Type: Standard
Protocol: TCP
Address Translation: Enabled
Port Translation: Enabled
SNAT Pool: AutoMap
Default persistence profile: Source_3600 (**********this has me thinking, perhaps in our tests we weren't waiting enough time for the time out to expire)
NB: Source_3600 is a source affinity persistence profile with a time of of 3600 seconds.
Workflow Pool Config and Properties
Name: Dev-WorkflowTest1-Pool1
Allow SNAT: Yes
Allow NAT: Yes
Load Balancing Method: Round Robin
Workflow Pool Members:
Member 1...
IP address: 192.168.12.139
Service Port: 1099
Member 2...
IP address: 192.168.12.235
Service port: 1099
------------------------------------------------------
I think that is everything! I'm going to retest with a smaller timeout on the workflow persistence profile. - Bloitus_10535
Nimbostratus
Well that was it... basically member 2 in the workflow pool was offline in a proceeding test meaning that source persistance was pushing all data to member 1 and continued to do so even when member 2 came back online. After waiting over an hour test worked as originally planned.
quick question though... is there a way of reseting the persistance on a pool purely for testing purposes instead of having to wait for the timeout? - hoolio
Cirrostratus
Sure, you can use:
b persist VS_NAME delete
See 'b persist help' for details.
Aaron - Bloitus_10535
Nimbostratus
perfect... thanks for the assistance. - The_Bhattman
Nimbostratus
Hi Bloitus,
Since you have AutoSNAT with source affinity persistence on the workflow vip and pool you are basically going to see one connection gravitate towards a particular node.
I believe the easiest method to load balance them is to simply not have them directly balanced by the F5 such that one web server makes the requests directly to workflow node 1 and the other to workflow node 2. They would be indirectly balanced if that is all the workflow servers see. However, I am not sure if this is what you are looking for.
Let us know if you ever thought of going direct?
Bhattman - Bloitus_10535
Nimbostratus
Hi Bhattman,
Yes i we have tested going direct from onlines to workflows which worked as expected... in our tests we were attempting to see if there was an impact on the application by routing the traffic via the LTM is this way. Effectively we would achieve the same thing by going direct however there are benefits for using a workflow pool which could be more beneficial in the long run (such as we would be able to add/remove members to the pool for maintainance without having to stop the application or scale up the number of workflow members should there be a issue with load in production).
Thanks for the assistance all!
Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
