load-balancingf5internal-load-balancerbig-ip

Least connection Load Balancing method in F5 not distributing traffic to all members


I'm new to troubleshooting load distribution on Load-balancer and need your help to troubleshoot one issue. There are 11 members of the pool but I see the request are going to only 2-3 at a time. When those servers gets exhausted due to load,I see their monitors going down and the request starts going to other 2-3 members. I checked persistence is not turned ON and the other members are/were healthy too. Can please someone guide me what to check next to figure out the issue ?

Below are the some setting on the load balancer for the pool .

allow-nat yes
allow-snat yes
app-service none
autoscale-group-id none
description "Flux Pool for p6_pool"
gateway-failsafe-device none
ignore-persisted-weight disabled
ip-tos-to-client pass-through
ip-tos-to-server pass-through
link-qos-to-client pass-through
link-qos-to-server pass-through
load-balancing-mode least-connections-member
metadata none
min-active-members 0
min-up-members 0
min-up-members-action failover
min-up-members-checking disabled
monitor tcp
partition Common
profiles none
queue-depth-limit 0
queue-on-connection-limit disabled
queue-time-limit 0
reselect-tries 0
service-down-action none
slow-ramp-time 10

Sanitized output from the pool and virtual configuration

uname@(ab-f5-2)(cfg-sync In Sync)(Active)(/Common)(tmos)# list ltm virtual vs_virtual_name_int_https
ltm virtual vs_virtual_name_int_https {
    destination 172.ip_address:443
    ip-protocol tcp
    mask 255.255.255.255
    pool p_poolName_8443
    profiles {
        http { }
        serverssl-insecure-compatible {
            context serverside
        }
        star.mc-int.vals19 {
            context clientside
        }
        tcp-lan-optimized {
            context serverside
        }
        ab-tcp-wan-optimized {
            context clientside
        }
    }
    rules {
        CIP
    }
    source 0.0.0.0/0
    source-address-translation {
        pool Int-SNAT
        type snat
    }
    translate-address enabled
    translate-port enabled
    vs-index 1999
}

List ltm pool pool_name output

ltm pool p_poolName_port {
    description "Flux Pool for p_poolName_port"
    load-balancing-mode least-connections-member
    members {
        172.ip.11:port {
            address 172.ip.11
            session monitor-enabled
            state up
        }
        172.ip.2:port {
            address 172.ip.2
            session monitor-enabled
            state up
        }
        172.ip.1:port {
            address 172.ip.1
            session monitor-enabled
            state up
        }
        172.ip.64:port {
            address 172.ip.64
            session monitor-enabled
            state up
        }
        172.ip.68:port {
            address 172.ip.68
            session monitor-enabled
            state up
        }
        172.ip.74:port {
            address 172.ip.74
            session monitor-enabled
            state up
        }
        172.ip.180:port {
            address 172.ip.180
            session monitor-enabled
            state up
        }
        172.ip.188:port {
            address 172.ip.188
            session monitor-enabled
            state up
   }
        172.ip.5:port {
            address 172.ip.5
            session monitor-enabled
            state up
        }
        172.ip.6:port {
            address 172.ip.6
            session monitor-enabled
            state up
        }
        172.ip.7:port {
            address 172.ip.7
            session monitor-enabled
            state up
        }
    }
    monitor tcp
}

ltm rule CIP Output

ltm rule CIP {
    when HTTP_REQUEST {

HTTP::header insert CIP [IP::client_addr]
HTTP::header insert x-CIP [IP::client_addr]

}
}

Solution

  • It was found later that OneConnect profile was turned on and most of the time same connection(s) were getting reused.