kubernetes-client/python

Set tcp keepalive for http connections

Open

#2.067 aberto em 6 de jun. de 2023

Ver no GitHub
 (4 comments) (7 reactions) (0 assignees)Python (3.323 forks)batch import
help wantedkind/feature

Métricas do repositório

Stars
 (6.225 stars)
Métricas de merge de PR
 (Mesclagem média 10d 3h) (2 fundiu PRs em 30d)

Description

What is the feature and why do you need it:

Currently when a watch is opened to the kubernetes api we do not send regular keepalives on the connection. That means that if the watch is not receiving any updates a reverse proxy in the path might terminate the tcp connection.

The go client is currently sending a tcp keepalive every 30 seconds: https://github.com/kubernetes/client-go/blob/release-1.27/transport/cache.go#L104-L107

Describe the solution you'd like to see:

On linux set a socket options to update the keepalive time, just like it is done in go here: https://go.dev/src/net/tcpsockopt_unix.go

I do not have particular feelings regarding other operating systems

Guia do colaborador