AWS PrivateLink для ClickPipes
Вы можете использовать AWS PrivateLink для установления защищенного соединения между VPC, сервисами AWS, вашими локальными системами и ClickHouse Cloud, не выводя трафик в общедоступный интернет.
В этом документе описана функциональность обратных приватных конечных точек (endpoint) ClickPipes, которая позволяет настроить конечную точку VPC AWS PrivateLink.
Поддерживаемые источники данных ClickPipes
Возможности функции reverse private endpoint в ClickPipes ограничены следующими типами источников данных:
- Kafka
- Postgres
- MySQL
- MongoDB
Поддерживаемые типы конечных точек AWS PrivateLink
Обратную частную конечную точку ClickPipes можно настроить с использованием одного из следующих подходов AWS PrivateLink:
Ресурс VPC
Межрегиональное подключение не поддерживается.
Доступ к ресурсам вашего VPC в ClickPipes можно получить с помощью PrivateLink. Этот подход не требует настройки балансировщика нагрузки перед источником данных.
Конфигурацию ресурса можно настроить на конкретный хост или ARN кластера RDS.
Это предпочтительный вариант для приёма данных Postgres CDC (фиксация изменений данных) из кластера RDS.
Для настройки PrivateLink с ресурсом VPC:
- Создайте шлюз ресурсов
- Создайте конфигурацию ресурса
- Создайте общий ресурс
Создание шлюза ресурсов
Шлюз ресурсов — это точка приёма трафика для указанных ресурсов в вашем VPC.
Рекомендуется, чтобы подсети, подключённые к вашему шлюзу ресурсов, имели достаточное количество доступных IP-адресов.
Рекомендуется использовать маску подсети не менее /26 для каждой подсети.
Для каждой конечной точки VPC (каждой обратной частной конечной точки) AWS требует последовательный блок из 16 IP-адресов на подсеть (маска подсети /28).
Если это требование не выполнено, обратная частная конечная точка перейдёт в состояние сбоя.
Вы можете создать шлюз ресурсов из консоли AWS или с помощью следующей команды:
Вывод будет содержать идентификатор шлюза ресурсов, который потребуется для следующего шага.
Прежде чем продолжить, необходимо дождаться перехода шлюза ресурсов в состояние Active. Проверить состояние можно, выполнив следующую команду:
Создание конфигурации ресурса VPC
Конфигурация ресурса связывается со шлюзом ресурсов, чтобы сделать ваш ресурс доступным.
Вы можете создать конфигурацию ресурса из консоли AWS или с помощью следующей команды:
Простейший тип конфигурации ресурса — это одиночная конфигурация ресурса. Вы можете настроить её напрямую с помощью ARN или указать IP-адрес или доменное имя, которое можно разрешить публично.
Например, для настройки с использованием ARN кластера RDS:
Невозможно создать конфигурацию ресурса для публично доступного кластера. Если ваш кластер публично доступен, необходимо изменить кластер, сделав его частным перед созданием конфигурации ресурса, или использовать список разрешённых IP-адресов. Дополнительную информацию см. в документации AWS.
Вывод будет содержать ARN конфигурации ресурса, который потребуется для следующего шага. Он также будет содержать идентификатор конфигурации ресурса, который потребуется для настройки подключения ClickPipe с ресурсом VPC.
Создание общего ресурса
Для совместного использования вашего ресурса требуется общий ресурс. Это осуществляется через Resource Access Manager (RAM).
Вы можете добавить Resource-Configuration в Resource-Share через консоль AWS или выполнив следующую команду с идентификатором учетной записи ClickPipes 072088201116 (arn:aws:iam::072088201116:root):
В выводе команды будет содержаться ARN Resource-Share, который потребуется для настройки подключения ClickPipe с ресурсом VPC.
Теперь вы готовы создать ClickPipe с обратной частной конечной точкой, используя ресурс VPC. Вам потребуется:
- Установить
VPC endpoint typeв значениеVPC Resource. - Установить
Resource configuration IDв значение идентификатора Resource-Configuration, созданного на шаге 2. - Установить
Resource share ARNв значение ARN Resource-Share, созданного на шаге 3.
Подробнее о PrivateLink с ресурсом VPC см. в документации AWS.
Многосетевое подключение MSK
Многосетевое подключение — это встроенная функция AWS MSK, которая позволяет подключать несколько VPC к одному кластеру MSK. Поддержка частного DNS доступна по умолчанию и не требует дополнительной настройки. Межрегиональное подключение не поддерживается.
Это рекомендуемый вариант для ClickPipes с MSK. Подробнее см. в руководстве по началу работы.
Обновите политику кластера MSK и добавьте 072088201116 в список разрешенных участников вашего кластера MSK.
Подробнее см. в руководстве AWS по присоединению политики кластера.
Следуйте нашему руководству по настройке MSK для ClickPipes, чтобы узнать, как настроить подключение.
Служба конечных точек VPC
Служба конечных точек VPC — это альтернативный способ предоставления доступа к вашему источнику данных для ClickPipes. Требуется настройка NLB (Network Load Balancer) перед вашим источником данных и конфигурирование службы конечных точек VPC для использования NLB.
Служба конечных точек VPC может быть настроена с частным DNS, который будет доступен в VPC ClickPipes.
Это предпочтительный выбор для:
- Любой локальной установки Kafka, требующей поддержки частного DNS
- Межрегионального подключения для CDC Postgres
- Межрегионального подключения для кластера MSK. Обратитесь в службу поддержки ClickHouse за помощью.
Подробнее см. в руководстве по началу работы.
Добавьте идентификатор учетной записи ClickPipes 072088201116 в список разрешенных участников вашей службы конечных точек VPC.
Подробнее см. в руководстве AWS по управлению разрешениями.
Межрегиональный доступ может быть настроен для ClickPipes. Добавьте регион вашего ClickPipe в список разрешенных регионов в вашей службе конечных точек VPC.
Создание ClickPipe с reverse private endpoint
Откройте SQL Console сервиса ClickHouse Cloud.

В левой панели выберите кнопку Data Sources и нажмите «Set up a ClickPipe».

Выберите Kafka или Postgres в качестве источника данных.

Выберите опцию Reverse private endpoint.

Выберите одну из существующих reverse private endpoint или создайте новую.
Если для RDS требуется кросс-регионный доступ, необходимо создать VPC endpoint service, и это руководство может служить хорошей отправной точкой для его настройки.
Для доступа в пределах одного региона рекомендуется создать ресурс VPC (VPC Resource).

Укажите необходимые параметры для выбранного типа endpoint.

- Для VPC resource укажите configuration share ARN и configuration ID.
- Для MSK multi-VPC укажите cluster ARN и метод аутентификации, используемый с созданным endpoint.
- Для VPC endpoint service укажите имя сервиса.
Нажмите Create и дождитесь готовности reverse private endpoint.
Если вы создаёте новый endpoint, его настройка займёт некоторое время. Страница автоматически обновится, как только endpoint будет готов. Для VPC endpoint service может потребоваться принять запрос на подключение в консоли AWS.

После того как endpoint будет готов, вы можете использовать DNS-имя для подключения к источнику данных.
В списке endpoint вы можете увидеть DNS-имя доступного endpoint. Это может быть либо внутреннее DNS-имя, подготовленное ClickPipes, либо приватное DNS-имя, предоставленное сервисом PrivateLink. DNS-имя не является полным сетевым адресом. Добавьте порт в соответствии с источником данных.
Строку подключения MSK можно получить в консоли AWS.
Чтобы увидеть полный список DNS-имён, откройте его в настройках облачного сервиса.
Управление существующими обратными приватными endpoint’ами
Вы можете управлять существующими обратными приватными endpoint’ами в настройках сервиса ClickHouse Cloud:
На боковой панели найдите кнопку Settings и нажмите её.

Нажмите Reverse private endpoints в разделе ClickPipe reverse private endpoints.

Расширенная информация об обратном приватном endpoint’е отображается во выдвижной панели.
Отсюда можно удалить endpoint. Это повлияет на все ClickPipes, которые используют этот endpoint.
Поддерживаемые регионы AWS
Поддержка AWS PrivateLink для ClickPipes ограничена определёнными регионами AWS. См. список регионов ClickPipes, чтобы узнать доступные регионы.
Это ограничение не распространяется на службу конечной точки VPC PrivateLink с включённой межрегиональной связностью.
Ограничения
Для конечных точек AWS PrivateLink для ClickPipes, созданных в ClickHouse Cloud, не гарантируется, что они будут созданы в том же регионе AWS, что и сервис ClickHouse Cloud.
В настоящее время только служба конечных точек VPC поддерживает межрегиональное подключение.
Приватные конечные точки привязаны к конкретному сервису ClickHouse и не могут быть перенесены между сервисами. Несколько ClickPipes для одного сервиса ClickHouse могут использовать одну и ту же конечную точку.