Learn F5 Technologies, Get Answers & Share Community Solutions Join DevCentral

Filter by:
  • Solution
  • Technology
Answers

Predictive member issue

Customer has a pool using 2 members and using Predictive member as LB mode. We are detecting that only one of the pool members is taking all the connections and making their server to increase their memory and cpu utilization during a long period of time. Right now application is working properly and I see that the VIP has a persistence source address profile of 60 minutes. If they take down the pool member the other one starts taking connections as normal. Is the pool working properly?

0
Rate this Question
Comments on this Question
Comment made 23-Jan-2018 by edgranados 64

ltm virtual namezabbix.none.com_80 {

destination 10.208.X.X:http
ip-protocol tcp
mask 255.255.255.255
persist {
    source_addr_60min {
        default yes
    }
}
pool namezabbix.pool_8080
profiles {
    tcp-lan-optimized { }
}

ltm persistence source-addr source_addr_60min {

defaults-from source_addr
map-proxies enabled
mask none
match-across-pools disabled
match-across-services disabled
match-across-virtuals disabled
mirror disabled
override-connection-limit disabled
timeout 3600

ltm pool namezabbix.pool_8080 {

load-balancing-mode predictive-member
members {
    10.216.X.X:webcache {
        priority-group 1
        session monitor-enabled
    }
    10.216.X.X:webcache {
        priority-group 2
        session monitor-enabled
    }
}
min-active-members 1
monitor http_200_response

ltm monitor http http_200_response {

defaults-from http interval 5 recv "HTTP/1.1 200 OK" send "GET / HTTP/1.1\nHost: \nConnection: Close\r\n\r\n" time-until-up 0 timeout 16

0

Answers to this Question

placeholder+image
USER ACCEPTED ANSWER & F5 ACCEPTED ANSWER

Hello,

Looks like you have a proxy between your clients and F5. Maybe all connections comes from the same IP address and thats why you hit only one of the pool members.

You can run a tcpdump to see if all clients comes from the same IP.

If so, you can set a cookie persistence + http profile to solve the issue.

Regards

0
Comments on this Answer
Comment made 23-Jan-2018 by Ilian Ivanov 517

Update:

You have priority group activated. I didnt saw that in my first comment.

If you want to distribute traffic to both members disable the priority groups :)

0
Comment made 23-Jan-2018 by edgranados 64

Hello Ivanov

I appreciate helping on this issue. We don't use proxies in between the client and the F5 but I noticed that the traffic the client uses is HTTP and no http profile is assigned to the VIP. So I can assume that could be an issue.

Could you please also explain why priority groups should not be used? We use them in other configurations with predictive member and we do not have this issue.

Thanks for all the help

0
Comment made 23-Jan-2018 by Emre Ovali 203

Hi Eduard,

ltm pool namezabbix.pool_8080 {
    load-balancing-mode predictive-member
    members {
        Server1:8080 {
            address 10.216.X.X
            priority-group 1
        }
        Server2:8080 {
            address 10.216.X.X
            priority-group 2
        }
        Server3:8080 {
            address 10.216.X.X
            priority-group 2
        }
    }
    min-active-members 1
    monitor http_200_response
}

You can read this pool configuration as:


  • There is a pool which is named as namezabbix.pool_8080
  • This pool uses "predictive-member" load balancing algorithm
  • This pool includes three pool members inside of it which are Server1 with port 8080, Server2 with port 8080 and Server3 with port 8080.
  • Server1's IP address is 10.216.X.X The Priority Group value "1" is assigned to the Server1
  • Server2's IP address is 10.216.X.X The Priority Group value "2" is assigned to the Server2
  • Server3's IP address is 10.216.X.X The Priority Group value "2" is assigned to the Server3
  • This pool must include minumum 1 pool member inside of it.
  • This pool is monitored by http_200_response monitor.

Therefore, with the parameter "min-active-members 1" you have activated the Priority Group Activation feature (which has the default value of Disabled)of the pool. When you enable this setting, the system treats same priority pool members as a group. So, "priority-group 1" is a group that only includes Server1 and "priority-group 2" is another group that both includes Server2 and Server3. With this configuration: The system will be load balance the connections between Server2 and Server3 with using "predictive-member" load balancing algorithm. Because they are in the same group and they have a bigger priority-group value which is 2.

You can think Server1 as a backup server. It will not receive any connection until Server2 and Server3 is marked as "down" at the same time by the http_200_response monitor.

1