proxy: should add PingPeriod for websocket translator
IIUC, before using the translator handler, the ping data can be delivered from the client to the runtime side since kube-apiserver does not parse any client data. However, with WebSocket, the server responds with a pong to the client without forwarding the data to the runtime side. If a proxy is present, it may close the connection due to inactivity. SPDY's PingPeriod can help address this issue. Signed-off-by: Wei Fu <fuweid89@gmail.com> Co-authored-by: Antonio Ojea <aojea@google.com> (cherry picked from commit dc59c0246fb407dcf035afc224f63fcf0da8244e) Signed-off-by: Wei Fu <fuweid89@gmail.com>
This commit is contained in:
@@ -500,6 +500,16 @@ var _ = SIGDescribe("Kubectl client", func() {
|
||||
}
|
||||
})
|
||||
|
||||
// https://issues.k8s.io/128314
|
||||
f.It(f.WithSlow(), "should support exec idle connections", func(ctx context.Context) {
|
||||
ginkgo.By("executing a command in the container")
|
||||
|
||||
execOutput := e2ekubectl.RunKubectlOrDie(ns, "exec", podRunningTimeoutArg, simplePodName, "--", "/bin/sh", "-c", "sleep 320 && echo running in container")
|
||||
if expected, got := "running in container", strings.TrimSpace(execOutput); expected != got {
|
||||
framework.Failf("Unexpected kubectl exec output. Wanted %q, got %q", expected, got)
|
||||
}
|
||||
})
|
||||
|
||||
ginkgo.It("should support exec through kubectl proxy", func(ctx context.Context) {
|
||||
_ = getTestContextHost()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user