24-Nov-2022 12:28 - edited 24-Nov-2022 12:29
Hello, Client access virtual server via http and can get web page from node: win21 and win22. Based on the below, the connection number increase one by one between both. why most time client get web page from win21? The config ratio between both is also 1:1. Thanks
24-Nov-2022 13:38
Hi @davidy2001 ,
Could you please change statistics types from nodes to pools , reset your statistics and expand your pool to see its members under it and try your tests again:
such as this :
Then , Share with me your results to see
Regards
24-Nov-2022 13:51
@Mohamed_Ahmed_Kansoh Thanks for your reply. Good holiday day!
Now it keeps access node win21. Please see the below:
24-Nov-2022 14:58
why do you configure ratio (1 : 1) as a loadbalancing method over a pool has two members , I think you intend to loadbalance in even manner not ratio.
I did not perform ratio (1:1) before , I use round robin instead.
Try it and let me see.
24-Nov-2022 18:37
@Mohamed_Ahmed_Kansoh I can see config ratio 1:1 and round robin, I did not config ratio and round robin. they are default config. Strange thinng is once client catch node win21, the client keep win21 for long time even if node win21 is disabled.
25-Nov-2022 08:20
Hello @davidy2001 ,
Please send the virtual server Resources :
Regards
25-Nov-2022 08:28 - edited 25-Nov-2022 16:35
@Mohamed_Ahmed_Kansoh Yes. i will
25-Nov-2022 08:36
25-Nov-2022 16:35
25-Nov-2022 16:43
in this Case , follow @Patrik_Jonsson workaround he is right , I did not face this issue before so I suspected that the issue due to persistence , but i see it is not.
so follow his solution and test it
I will try to apply this too in my lab.
24-Nov-2022 14:17
The browser will generally create a connection and then send all requests over that connection. This can make statistics a bit skewed towards one member if there's very little traffic. Which load balancing method are you using on the pool? Do you have an HTTP profile assigned on the VIP?
If you absolutely must have balanced traffic between them and it's an HTTP application I'd pick ie. Load balancing mode Predictive on the pool and then try oneconnect on the server. Please note that oneconnect might make the web server logs look weird if you're not using X-Forwarded-For headers.
Kind regards,
Patrik
24-Nov-2022 19:03
"Which load balancing method are you using on the pool? Do you have an HTTP profile assigned on the VIP?"
its default config. now VIP(floating ip, my understanding) has not setup yet. I am only using one F5. No HTTP profile setup
24-Nov-2022 22:13
How are you performing the tests? If you ie. run tests using curl a few times, do you get a different result? Curl does not keep the connection open after making the request. Like I said before, if it''s an HTTP application you can try oneconnect if you absolutely must have even spread between the servers.
Just remember to set the load balancing method to ie. predictive and assign an HTTP profile to the Virtual server. Persistence profile should be set to None.
Kind regards,
Patrik
25-Nov-2022 07:48
two nodes win21 and win22 have different webpage(just change default page in iis). when outside user access virtual server via google(repeatedly click on the address), the page that the browser show does not change between the two nodes, meaning the user almost visit one node win21. occasionly visit win22, or vice versa. no any other config on persistence etc
25-Nov-2022 13:16
Then please read my first message. Chrome will keep the connection open between requests and the same pool member will get them as the F5 device will map connection 1:1 between frontend and backend. As long as the client side connection does not die, neither does the server side. This won't be a problem when you have more clients contacting the page.
If you want to validate this you can assign this iRule to the Virtual server:
when HTTP_RESPONSE {
HTTP::header insert "Connection" "Close"
}
Just don't leave this on the Virtual server when you ship this as it's terribly inefficient. 🙂
Or assign an HTTP profile to the virtual server and then assign a One connect profile (the default will do). Then the F5 device will establish server side connections and keep them open. This will allow you to load balance per request.
Kind regards,
Patrik
25-Nov-2022 18:32
Thank you @Patrik_Jonsson for your reply. I tried ie and chrome. both have same issue. and I added iRule you provided above to virtual server. It still cannot resolve the issue. but I am not sure if what i did iRule is correct. anyway thanks
25-Nov-2022 23:54
To be honest, I wrote the rule directly here on DC without testing but it should work.
You need to restart your browsers too before testing again since the F5 device caches irules by connection.
24-Nov-2022 20:22
Any Presistence profile configure for the VIP?
24-Nov-2022 20:58
Its a new F5 without any presistence config
24-Nov-2022 21:10
Can you share the resource configuration of the VIP?
25-Nov-2022 07:53
Currently there is only one F5 without floating ip (vip) yet
28-Nov-2022 20:09
Hey @davidy2001 - were you able to get it working after restarting your browsers and trying the fix @Patrik_Jonsson wrote? If yes, please click Accept as Solution so future users facing the same issue can find a quick resolution. 🙂