kube-apiserver: use SO_REUSEPORT when creating listener on Unix systems

So multiple instances of kube-apiserver can bind on the same address and
port, to provide seamless upgrades.

Signed-off-by: Mateusz Gozdek <mateusz@kinvolk.io>
This commit is contained in:
Mateusz Gozdek
2020-03-06 09:59:20 +01:00
parent 5bf4a4ca2f
commit dfe1f968ac
11 changed files with 176 additions and 10 deletions

View File

@@ -73,7 +73,7 @@ func TestAggregatedAPIServer(t *testing.T) {
defer os.Remove(wardleToKASKubeConfigFile)
wardleCertDir, _ := ioutil.TempDir("", "test-integration-wardle-server")
defer os.RemoveAll(wardleCertDir)
listener, wardlePort, err := genericapiserveroptions.CreateListener("tcp", "127.0.0.1:0")
listener, wardlePort, err := genericapiserveroptions.CreateListener("tcp", "127.0.0.1:0", net.ListenConfig{})
if err != nil {
t.Fatal(err)
}