Команда kubectl отключается после нескольких минут простоя - PullRequest
0 голосов
/ 05 июня 2018

Мы заметили, когда мы exec -it подключаемся к модулю, после определенного простоя соединение разрушается.Есть ли возможность оставить соединение открытым дольше?

Я вижу, что есть открытое PR , но мне интересно, есть ли какое-нибудь решение этой проблемы.

1 Ответ

0 голосов
/ 05 июня 2018

Короткий ответ - нет.И вот почему:

Включение поддержки активности TCP для консольных подключений

Поддержка активности TCP - это опция TCP, которая позволяет обмениваться пакетами через соединение, даже если естьНет трафика для транспорта.Он должен быть включен на обоих концах соединения.Протокол поддержки активности TCP должен быть включен на уровне операционной системы и приложением / программой, открывающими соединения TCP.

В Linux отредактируйте файл "/etc/sysctl.conf" и добавьте этилинии:

net.ipv4.tcp_keepalive_time = 200
net.ipv4.tcp_keepalive_probes = 9
net.ipv4.tcp_keepalive_intvl = 50

(не стесняйтесь адаптировать значения по своему усмотрению).После завершения редактирования вы должны сообщить ядру о новых значениях:

# sysctl --load=/etc/sysctl.conf

Пользовательская настройка тайм-аутов поддержки сокета TCP

Значения по умолчанию для этих свойств:

tcp_keepalive_time = 7200 seconds
tcp_keepalive_probes = 9
tcp_keepalive_intvl = 75 seconds

Другой возможный способ - запустить какой-либо прокси-сервер на стороне клиента и подключиться к нему через сервер Kubernetes.Я не проверял это сам, и это может быть сложно, но здесь является примером того, как включить keepalive для бэкэнда для Nginx.

...