Bug 2127398
| Summary: | backport commit "Allow persistence_granularity to be 0.0.0.0" for keepalived version 1.3.5, RHEL 7 | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | suresh kumar <surkumar> |
| Component: | keepalived | Assignee: | Ryan O'Hara <rohara> |
| Status: | NEW --- | QA Contact: | cluster-qe <cluster-qe> |
| Severity: | urgent | Docs Contact: | |
| Priority: | urgent | ||
| Version: | 7.9 | CC: | cluster-maint, mmhatre, rohara |
| Target Milestone: | rc | Flags: | surkumar:
needinfo?
(rohara) |
| Target Release: | --- | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | Type: | Bug | |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
Hello Team, Any update on this? Thanks, Mithil |
Description of problem: SIP request message with same call-id, but different source IP is routed to different server as if it was newly initiated call-id and connection breaks. Setup: ======= SIP clients ------------> keepalived Server ------> Real Server 192.168.100.116 192.168.100.118 192.168.100.121 Version-Release number of selected component (if applicable): keepalived 1.3.5 How reproducible: Always by customer Actual results: Current Flow: SIPP(192.168.100.171) --- INVITE ---> LB(192.168.100.116) ---> RealServer(192.168.100.118) SIPP(192.168.100.171) <----- 200 ----- RealServer(192.168.100.118) SIPP(192.168.100.170) ----- ACK -----> LB(192.168.100.116) ---> RealServer(192.168.100.121) SIPP(192.168.100.170) ----- BYE -----> LB(192.168.100.116) ---> RealServer(192.168.100.121) # ipvsadm -Ln --connection --persistent-conn IPVS connection entries pro expire state source virtual destination pe name pe_data UDP 14:07 UDP 192.168.100.170:0 192.168.100.116:5060 192.168.100.121:5060 sip 1-16760.100.171 UDP 14:07 UDP 192.168.100.171:0 192.168.100.116:5060 192.168.100.118:5060 sip 1-16760.100.171 The call-id is same, but packet from 192.168.100.171 is routed to 192.168.100.118 Expected results: ================== SIPP(192.168.100.171) --- INVITE ---> LB(192.168.100.116) ---> RealServer(192.168.100.118) SIPP(192.168.100.171) <----- 200 ----- RealServer(192.168.100.118) SIPP(192.168.100.170) ----- ACK -----> LB(192.168.100.116) ---> RealServer(192.168.100.118) *** SIPP(192.168.100.170) ----- BYE -----> LB(192.168.100.116) ---> RealServer(192.168.100.118) *** Additional info: ================== keepalived configuration used: virtual_server 192.168.100.116 5060 { # virtual_server fd00::7ea1:10:1:1:145 5060 { delay_loop 5 lb_algo rr lb_kind DR ops persistence_timeout 60 persistence_granularity 0.0.0.0 <----------------- This is not working persistence_engine sip protocol UDP