Как настроить доступ к SPYT
Для работы SPYT в режиме Standalone внешний драйвер Spark должен соединяться напрямую со Spark-воркерами. Эти воркеры запускаются не как отдельные поды Kubernetes, а как процессы внутри Vanilla-джобов YTsaurus. Стандартные сетевые абстракции Kubernetes (Services) не умеют адресовать трафик внутрь таких процессов.
Для проксирования таких соединений используется tcp_proxy. Это компонент YTsaurus, который знает, на какой ноде и на каком порту запустился конкретный процесс воркера, и умеет пробросить туда трафик снаружи — на основе таблиц в Кипарисе //sys/tcp_proxies/routes.
Чтобы настроить tcp_proxy:
- Убедитесь, что порты, на которых работает
tcp_proxy(по умолчанию 32000–32019), открыты через Kubernetes-сервисы (NodePort или LoadBalancer). - Пропишите внешние адреса этих портов в атрибут
//sys/tcp_proxies/routes/<proxy_role>/@external_addressesв Кипарисе.
Это позволит драйверу Spark использовать tcp_proxy как посредника для связи с внутренними воркерами.
Пример:
yt set //sys/tcp_proxies/routes/default/@external_addresses '["node1.example.com:32000"; "node2.example.com:32000"]'
Предыдущая
Следующая