F5Networks / k8s-bigip-ctlr

Repository for F5 Container Ingress Services for Kubernetes & OpenShift.
Apache License 2.0
364 stars 195 forks source link

Change of weight from primary to alternate backend is not graceful #3542

Open avinashchundu9 opened 2 months ago

avinashchundu9 commented 2 months ago

Setup Details

CIS Version : 2.17.1 Build: f5networks/k8s-bigip-ctlr:latest BIGIP Version: Big IP v16.1.3.1 AS3 Version: 3.46v1.28.10 Agent Mode: AS3 Orchestration: K8S Orchestration Version: v1.28.10 Pool Mode: Nodeport

Description

The change of weight from primary to alternate backend is not graceful.

Steps To Reproduce

1) Create a transport server with a primary weight of 100 and an alternate backend weight of 0 2) Update the transport server primary weight to 0 and alternate backend weight to 100

Expected Result

The transition/failover should be graceful

Actual Result

I noticed a few seconds of downtime where the pool goes offline while updating with new pool members.

trinaths commented 2 months ago

Created [CONTCNTR-4857] for internal tracking.

vidyasagar-m commented 2 months ago

@avinashchundu9 Could you confirm if the following build fixes the issue? Build: quay.io/mvsr222/k8s-bigip-ctlr:weightChangeLBTest

avinashchundu9 commented 2 months ago

I tried the new image. After changing the weight CIS has issues posing declaration. I noticed weird behavior of pool members getting removed 1 by 1 every time CIS failed to post the declaration. I will email you the logs.

vidyasagar-m commented 2 months ago

@avinashchundu9 From the logs I see that the pools are missing The requested Pool Member (/imc-cn1001-2/Shared/f5_hello_world_8080_achundu /Common/rf3scn1002x003.rf3stg.mfgint.intel.com 32625) was not found. Could you share me the sample config you're validating with.