Merge pull request #78583 from andrewsykim/ipvs-udp-graceful-termination

ipvs proxy: add unit test for udp graceful termination
This commit is contained in:
Kubernetes Prow Robot 2019-06-24 23:54:35 -07:00 committed by GitHub
commit 38626cefec
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -242,6 +242,70 @@ func Test_GracefulDeleteRS(t *testing.T) {
},
err: nil,
},
{
name: "graceful delete, real server has connections, but udp connections are deleted immediately",
vs: &utilipvs.VirtualServer{
Address: net.ParseIP("1.1.1.1"),
Protocol: "udp",
Port: uint16(80),
},
rs: &utilipvs.RealServer{
Address: net.ParseIP("10.0.0.1"),
Port: uint16(80),
Weight: 100,
ActiveConn: 10,
InactiveConn: 10,
},
existingIPVS: &utilipvstest.FakeIPVS{
Services: map[utilipvstest.ServiceKey]*utilipvs.VirtualServer{
{
IP: "1.1.1.1",
Port: 80,
Protocol: "udp",
}: {
Address: net.ParseIP("1.1.1.1"),
Protocol: "udp",
Port: uint16(80),
},
},
Destinations: map[utilipvstest.ServiceKey][]*utilipvs.RealServer{
{
IP: "1.1.1.1",
Port: 80,
Protocol: "udp",
}: {
{
Address: net.ParseIP("10.0.0.1"),
Port: uint16(80),
Weight: 100,
ActiveConn: 10,
InactiveConn: 10,
},
},
},
},
expectedIPVS: &utilipvstest.FakeIPVS{
Services: map[utilipvstest.ServiceKey]*utilipvs.VirtualServer{
{
IP: "1.1.1.1",
Port: 80,
Protocol: "udp",
}: {
Address: net.ParseIP("1.1.1.1"),
Protocol: "udp",
Port: uint16(80),
},
},
Destinations: map[utilipvstest.ServiceKey][]*utilipvs.RealServer{
{
IP: "1.1.1.1",
Port: 80,
Protocol: "udp",
}: {}, // udp real server deleted immediately
},
},
err: nil,
},
{
name: "graceful delete, real server mismatch should be no-op",
vs: &utilipvs.VirtualServer{