Как настроить веб-сокет в Google Kubernetes Engine - PullRequest
0 голосов
/ 08 сентября 2018

Как включить порт в Google Kubernetes Engine для приема соединений через веб-сокеты? Есть ли способ сделать это кроме использования входного контроллера?

Ответы [ 2 ]

0 голосов
/ 15 сентября 2018

Веб-сокеты поддерживаются глобальным балансировщиком нагрузки Google, поэтому вы можете использовать k8s Service типа LoadBalancer для предоставления такого сервиса за пределами вашего кластера.

Имейте в виду, что подсистемы балансировки нагрузки, созданные и управляемые таким образом за пределами Kubernetes, будут иметь длительность соединения по умолчанию 30 секунд, что мешает работе веб-сокета и приводит к частому закрытию соединения. Это практически бесполезно для эффективного использования веб-сокетов.

До тех пор, пока эта проблема не будет решена, вам нужно будет либо изменить этот параметр тайм-аута вручную, либо (рекомендуется) рассмотреть возможность использования входного контроллера в кластере (например, nginx), который дает вам больше контроля.

0 голосов
/ 12 сентября 2018

Согласно этой статье в документации GCP, существует 4 способа предоставления Сервиса внешним приложениям.

Может быть выставлено с помощью ClusterIP, NodePort , (TCP / UDP) Балансировщик нагрузки или Внешнего имени.

...