Предварительные требования
Включите приватный балансировщик нагрузки для ClickHouse BYOC
Настройка пиринга VPC
1
Создайте пиринговое соединение
- Перейдите в панель мониторинга VPC в аккаунте ClickHouse BYOC.
- Выберите Peering Connections.
- Нажмите Create Peering Connection.
- Укажите ClickHouse VPC ID в поле VPC Requester.
- Укажите ID целевой VPC в поле VPC Accepter. (При необходимости выберите другой аккаунт)
- Нажмите Create Peering Connection.
2
Примите запрос на пиринговое соединение
Перейдите в аккаунт, с которым настраивается пиринг; на странице (VPC -> Peering connections -> Actions -> Accept request) можно одобрить этот запрос на пиринг VPC.
3
Добавьте пункт назначения в таблицы маршрутизации ClickHouse VPC
В аккаунте ClickHouse BYOC,
- Выберите Route Tables в панели мониторинга VPC.
- Найдите ClickHouse VPC ID. Измените каждую таблицу маршрутизации, связанную с частными подсетями.
- Нажмите кнопку Edit на вкладке Routes.
- Нажмите Add another route.
- Введите CIDR-диапазон целевой VPC в поле Destination.
- Выберите “Peering Connection” и ID пирингового соединения в поле Target.
4
Добавьте пункт назначения в таблицы маршрутизации целевой VPC
В AWS-аккаунте, с которым настраивается пиринг,
- Выберите Route Tables в панели мониторинга VPC.
- Найдите ID целевой VPC.
- Нажмите кнопку Edit на вкладке Routes.
- Нажмите Add another route.
- Введите CIDR-диапазон ClickHouse VPC в поле Destination.
- Выберите “Peering Connection” и ID пирингового соединения в поле Target.
5
Измените группу безопасности, чтобы разрешить доступ из пиринговой VPC
В аккаунте ClickHouse BYOC нужно обновить настройки группы безопасности, чтобы разрешить трафик из вашей пиринговой VPC. Обратитесь в службу поддержки ClickHouse, чтобы запросить добавление правил входящего трафика, включающих CIDR-диапазоны вашей пиринговой VPC.
Теперь сервис ClickHouse должен быть доступен из пиринговой VPC.
Теперь сервис ClickHouse должен быть доступен из пиринговой VPC.
-private. Например:
- Публичная конечная точка:
h5ju65kv87.mhp0y4dmph.us-west-2.aws.clickhouse-byoc.com - Частная конечная точка:
h5ju65kv87-private.mhp0y4dmph.us-west-2.aws.clickhouse-byoc.com
Настройка PrivateLink
Межрегиональные подключения. Переключатель Enable private link в консоли ClickHouse создаёт сервис конечной точки и действует только для потребителей в том же регионе. AWS по умолчанию отключает межрегиональный доступ к сервисам конечных точек, а консоль ClickHouse не управляет этой настройкой. Если ваши клиенты находятся в другом регионе, включите его самостоятельно: сервис конечной точки находится в вашем аккаунте BYOC, поэтому добавьте регионы потребителей в список Supported regions в своей консоли AWS (см. шаг 3 ниже). ClickHouse не будет изменять или сбрасывать эти значения. Применяются тарифы AWS на межрегиональную передачу данных.
1
Включите Private Link в консоли ClickHouse
Убедитесь, что private load balancer включён.
2
Получите Service name для конечной точки
- В консоли ClickHouse Cloud перейдите на страницу Settings сервиса, к которому хотите подключиться через PrivateLink.
- Нажмите «Set up private endpoint».
- В открывшейся выдвижной панели скопируйте значение
Service name— оно понадобится на следующем шаге. (После включения PrivateLink значение может появиться не сразу.)
3
Создайте конечную точку в своей сети
- Откройте свою консоль AWS (то есть аккаунт AWS, в котором работает ваше клиентское приложение) → VPC → Endpoints → Create endpoints.
-
Выберите “Endpoint services that use NLBs and GWLBs” и укажите
Service name, полученное на предыдущем шаге. - Нажмите “Verify service”.
-
(Необязательно) Чтобы установить межрегиональное подключение через PrivateLink, включите флажок “Cross region endpoint” и укажите регион сервиса. Это регион, в котором создана ваша инфраструктура BYOC. Затем:
- Откройте консоль AWS для BYOC (то есть аккаунт AWS, в котором создана ваша инфраструктура BYOC) → VPC → Endpoint services →
clickhouse-cloud-infra-xxx→ Supported regions. - Добавьте в список поддерживаемых регионов регион, в котором работает ваше клиентское приложение. По умолчанию поддерживается только регион, где размещена эта инфраструктура BYOC. Если требуется подключаться из разных регионов, можно добавить несколько регионов; ClickHouse не будет изменять или сбрасывать эти значения.
- Откройте консоль AWS для BYOC (то есть аккаунт AWS, в котором создана ваша инфраструктура BYOC) → VPC → Endpoint services →
- Выберите VPC и подсети (рекомендуется по одной подсети на каждую зону доступности).
-
Важно: включите “Private DNS names” для конечной точки — это необходимо для корректной работы private DNS.
Private DNS для конечных точек BYOC (в формате
*.vpce.{subdomain}) использует встроенную возможность AWS PrivateLink “Private DNS names”. Записи Route53 не требуются — DNS-разрешение выполняется автоматически, если:- включено “Private DNS names” и
-
включено “DNS Hostnames”
в разделе VPC Settings → DNS resolution and DNS hostnames.
Благодаря этому подключения с поддоменом
vpceавтоматически маршрутизируются через конечную точку PrivateLink без дополнительной настройки DNS.
-
(Необязательно) Назначьте Security Groups и теги.
Убедитесь, что в Security Group разрешены порты
443,8443и9440. - Нажмите “Create endpoint” и дождитесь создания конечной точки.
-
После создания конечной точки скопируйте значение
Endpoint ID— оно понадобится на следующем шаге.
4
Подтвердите подключение к конечной точке
- Снова откройте консоль BYOC VPC → Endpoint services →
clickhouse-cloud-infra-xxx→ Endpoint connections. - Найдите запрос на подключение из вашей VPC и нажмите “Accept endpoint connection request”, чтобы одобрить его.
5
Добавьте Endpoint ID в список разрешённых для сервиса ClickHouse
- В консоли ClickHouse Cloud перейдите на страницу Settings сервиса, к которому вы хотите подключиться через PrivateLink.
- Нажмите «Set up private endpoint».
- В открывшейся выдвижной панели укажите
Endpoint ID, полученный на предыдущем шаге, и при необходимости добавьте описание. - Нажмите «Create endpoint».
Чтобы разрешить доступ через существующее подключение PrivateLink, воспользуйтесь раскрывающимся списком существующих конечных точек.
В этом списке отображаются существующие подключения PrivateLink к сервисам в той же инфраструктуре.
6
Доступ к инстансу через PrivateLink
- В консоли ClickHouse Cloud перейдите на страницу Settings сервиса.
- Нажмите “Set up private endpoint”.
-
В открывшейся выдвижной панели скопируйте
DNS-имя. Доступ к сервисам ClickHouse через PrivateLink контролируется на двух уровнях:- Istio Authorization Policy: политики авторизации на уровне сервиса, управляемые ClickHouse в вашей инфраструктуре BYOC
- Группа безопасности конечной точки VPC: группа безопасности, привязанная к конечной точке VPC, определяет, какие ресурсы в вашей VPC могут использовать эту конечную точку
Функция “Enforce inbound rules on PrivateLink traffic” частного балансировщика нагрузки отключена, поэтому доступ контролируется только политиками авторизации Istio и группой безопасности конечной точки VPC.