Соединения между плоскостью управления ClickHouse и вашей VPC BYOC
В следующем разделе описано, как частная сеть Tailscale используется для устранения неполадок и, при необходимости, для доступа к управлению.
Частная сеть Tailscale
Обзор
- Операций управления: сервисы управления ClickHouse координируют работу с вашей инфраструктурой BYOC
- Доступа для устранения неполадок: инженеры ClickHouse получают доступ к API-серверам Kubernetes и системным таблицам ClickHouse для диагностики
- Доступа к метрикам: централизованные панели мониторинга ClickHouse получают метрики из стека Prometheus, развернутого в вашей VPC BYOC, обеспечивая инженерам ClickHouse обсервабилити этой среды.
Как работает Tailscale в BYOC
-
Регистрация адреса tailnet: Каждая конечная точка регистрирует уникальный адрес tailnet (например,
k8s.xxxx.us-east-1.aws.byoc.clickhouse-prd.comдля API-сервера Kubernetes) -
Контейнер агента Tailscale: В вашем кластере EKS запускается контейнер агента Tailscale, который отвечает за:
- Подключение к серверу координации Tailscale
- Регистрацию сервисов, чтобы их можно было обнаруживать
- Координацию настройки сети с подами Nginx
-
Под Nginx: Под Nginx, который:
- Терминирует TLS-трафик из Tailscale
- Маршрутизирует трафик на соответствующие IP-адреса внутри вашего кластера EKS
Процесс сетевого соединения
-
Начальное подключение:
- Агенты Tailscale на обеих сторонах (в среде инженера ClickHouse и в вашем кластере BYOC EKS) подключаются к серверу координации Tailscale
- Агент кластера EKS регистрирует сервис Kubernetes, чтобы он стал доступен для обнаружения
- Инженеры ClickHouse должны пройти внутреннюю эскалацию, чтобы получить доступ к сервису
-
Режим подключения:
- Прямой режим: агенты пытаются установить прямое соединение через туннель с обходом NAT
- Релейный режим: если установить прямое соединение не удается, обмен данными переключается в релейный режим через сервер Tailscale DERP (Distributed Encrypted Relay Protocol)
-
Шифрование:
- Весь обмен данными шифруется по схеме end-to-end
- Каждый агент Tailscale генерирует собственную пару открытого и закрытого ключей (аналогично PKI)
- Трафик остается зашифрованным независимо от того, используется прямой или релейный режим
Функции безопасности
- Агенты Tailscale в вашем кластере EKS инициируют исходящие соединения с серверами координации и ретрансляции Tailscale
- Входящие соединения не требуются — правила Security Group не должны разрешать входящий трафик к агентам Tailscale
- Это снижает поверхность атаки и упрощает настройку сетевой безопасности
- Прежде чем Tailscale сможет направить их к конечной точке клиента, инженеры должны запросить доступ через внутренний процесс согласования
- Доступ ограничен по времени и автоматически истекает
- Все обращения проходят аудит и записываются в журнал
Доступ сервисов управления
- Вы можете настроить API-сервер EKS так, чтобы он использовал только частную конечную точку
- В этом случае сервисы управления получают доступ к API-серверу через Tailscale (аналогично доступу для устранения неполадок у пользователей)
- Публичный доступ сохраняется как резервный механизм для экстренной диагностики и задач поддержки
Поток сетевого трафика
- Агент Tailscale в кластере EKS → сервер координации Tailscale (исходящее соединение)
- Агент Tailscale на машине инженера → сервер координации Tailscale (исходящее соединение)
- Между агентами устанавливается прямое соединение или соединение через ретранслятор
- Зашифрованный трафик проходит через установленный туннель
- Под Nginx в EKS завершает TLS и маршрутизирует трафик к внутренним сервисам
- Соединения Tailscale используются только для управления и устранения неполадок
- Трафик запросов и данные клиентов никогда не проходят через Tailscale
- Все данные клиентов остаются в пределах вашего VPC
Сетевые границы
- Входящий: трафик, поступающий в VPC BYOC клиента.
- Исходящий: трафик, исходящий из VPC BYOC клиента и направляемый во внешний пункт назначения.
- Публичный: сетевая конечная точка, доступная из публичного интернета.
- Приватный: сетевая конечная точка, доступная только через приватные подключения, такие как пиринг VPC, VPC Private Link или Tailscale.