Skip to main content
Private Service Connect (PSC) — это сетевая функция Google Cloud, которая позволяет потребителям получать частный доступ к управляемым сервисам внутри своей сети виртуального частного облака (VPC). Аналогично, она позволяет поставщикам управляемых сервисов размещать эти сервисы в собственных отдельных сетях VPC и предоставлять потребителям частное подключение. Поставщики сервисов публикуют свои приложения для потребителей, создавая сервисы Private Service Connect. Потребители сервисов получают доступ к этим сервисам Private Service Connect напрямую через один из типов Private Service Connect.
GCP Private Service Connect поддерживает только подключения, инициируемые из вашей GCP VPC к ClickHouse Cloud. Его нельзя использовать для подключений, инициируемых из ClickHouse Cloud к сервисам в вашей VPC, таким как частная база данных.По умолчанию сервис ClickHouse недоступен через частное сервисное подключение, даже если подключение PSC одобрено и установлено; необходимо явно добавить PSC ID в список разрешённых на уровне экземпляра, выполнив шаг ниже.
Важные моменты при использовании Global Access для Private Service Connect:
  1. Регионы, использующие Global Access, должны принадлежать одной и той же VPC.
  2. Global Access должен быть явно включён на уровне PSC (см. снимок экрана ниже).
  3. Убедитесь, что настройки межсетевого экрана не блокируют доступ к PSC из других регионов.
  4. Имейте в виду, что может взиматься плата GCP за межрегиональную передачу данных.
Межрегиональное подключение не поддерживается. Регионы поставщика и потребителя должны совпадать. Однако вы можете подключаться из других регионов в пределах своей VPC, включив Global Access на уровне Private Service Connect (PSC). Чтобы включить GCP PSC, выполните следующие шаги:
  1. Получите подключение сервиса GCP для Private Service Connect.
  2. Создайте конечную точку сервиса.
  3. Добавьте “Endpoint ID” в сервис ClickHouse Cloud.
  4. Добавьте “Endpoint ID” в список разрешённых для сервиса ClickHouse.

Внимание

ClickHouse старается группировать ваши сервисы, чтобы повторно использовать одну и ту же опубликованную конечную точку PSC в пределах региона GCP. Однако такое группирование не гарантируется, особенно если ваши сервисы распределены между несколькими организациями ClickHouse. Если PSC уже настроен для других сервисов в вашей организации ClickHouse, благодаря такому группированию вы часто можете пропустить большую часть шагов и сразу перейти к последнему: Добавьте “Endpoint ID” в список разрешённых для сервиса ClickHouse. Примеры Terraform можно найти здесь.

Прежде чем начать

Ниже приведены примеры кода, показывающие, как настроить Private Service Connect в сервисе ClickHouse Cloud. В этих примерах используются:
  • регион GCP: us-central1
  • проект GCP (проект GCP клиента): my-gcp-project
  • частный IP-адрес в проекте GCP клиента: 10.128.0.2
  • VPC GCP в проекте GCP клиента: default
Вам потребуется получить информацию о вашем сервисе ClickHouse Cloud. Это можно сделать либо через консоль ClickHouse Cloud, либо через API ClickHouse. Если вы собираетесь использовать API ClickHouse, перед продолжением задайте следующие переменные окружения:
Вы можете создать новый ключ ClickHouse Cloud API или использовать существующий. Получите свой ClickHouse INSTANCE_ID, отфильтровав по региону, провайдеру и имени сервиса:
  • Вы можете получить свой Organization ID в консоли ClickHouse (Organization -> Organization Details).
  • Вы можете создать новый ключ или воспользоваться существующим.

Получите подключение сервиса GCP и DNS-имя для Private Service Connect

Вариант 1: консоль ClickHouse Cloud

В консоли ClickHouse Cloud откройте сервис, к которому нужно подключиться через Private Service Connect, затем откройте меню Settings. Нажмите кнопку Set up private endpoint. Запишите Service name (endpointServiceId) и DNS-имя (privateDnsHostname) — они понадобятся на следующих этапах.

Вариант 2: API

Чтобы выполнить этот шаг, в регионе должен быть развернут как минимум один инстанс.
Получите подключение сервиса GCP и DNS-имя для Private Service Connect:
Запишите endpointServiceId и privateDnsHostname. Они понадобятся вам на следующих этапах.

Создайте конечную точку сервиса

В этом разделе описаны специфичные для ClickHouse аспекты настройки ClickHouse через GCP PSC (Private Service Connect). Шаги, относящиеся к GCP, приведены только для справки, чтобы помочь вам понять, где искать нужную информацию, однако со временем они могут измениться без предварительного уведомления со стороны облачного провайдера GCP. Учитывайте особенности настройки GCP в соответствии с вашим сценарием использования.Обратите внимание, что ClickHouse не отвечает за настройку необходимых конечных точек GCP PSC и записей DNS.Если у вас возникнут проблемы, связанные с задачами настройки GCP, обращайтесь напрямую в службу поддержки GCP.
В этом разделе вы создадите конечную точку сервиса.

Добавление частного сервисного подключения

Сначала создайте частное сервисное подключение.

Вариант 1: Использование консоли Google Cloud

В консоли Google Cloud перейдите в Network services -> Private Service Connect. Откройте диалог создания Private Service Connect, нажав кнопку Connect Endpoint.
  • Target: используйте Published service
  • Target service: используйте endpointServiceIdAPI или Service nameconsole из шага Получение подключения сервиса GCP для Private Service Connect.
  • Endpoint name: укажите имя PSC в поле Endpoint name.
  • Network/Subnetwork/IP address: выберите сеть, которую хотите использовать для подключения. Для конечной точки Private Service Connect потребуется создать IP-адрес или использовать существующий. В нашем примере мы заранее создали адрес с именем your-ip-address и назначили ему IP-адрес 10.128.0.2.
  • Чтобы конечная точка была доступна из любого региона, можно установить флажок Enable global access.
Чтобы создать PSC Endpoint, нажмите кнопку ADD ENDPOINT. В столбце Status значение изменится с Pending на Accepted, как только подключение будет одобрено. Скопируйте PSC Connection ID; на следующих шагах он будет использоваться как Endpoint ID.

Вариант 2: с помощью Terraform

используйте endpointServiceIdAPI или Service nameконсоль из шага Получение подключения сервиса GCP для Private Service Connect и DNS-имени

Задайте приватное DNS-имя для конечной точки

DNS можно настроить разными способами. Настройте его в соответствии с вашим сценарием использования.
Вам нужно направить «DNS-имя», полученное на шаге Получение подключения сервиса GCP для Private Service Connect, на IP-адрес конечной точки GCP Private Service Connect. Это гарантирует, что сервисы/компоненты в вашей VPC/Network смогут корректно разрешать это имя.
Недостаточно подключаться напрямую к IP-адресу конечной точки PSC. ClickHouse Cloud маршрутизирует соединения по DNS-имени (через SNI в ходе TLS-рукопожатия), поэтому необходимо настроить DNS так, чтобы приватное DNS-имя хоста (privateDnsHostname) разрешалось в IP-адрес конечной точки. Иначе ClickHouse Cloud не сможет определить, к какому сервису предназначено соединение, и подключение завершится ошибкой.

Добавьте Endpoint ID в организацию ClickHouse Cloud

Вариант 1: консоль ClickHouse Cloud

Чтобы добавить конечную точку в организацию, перейдите к шагу Добавить “Endpoint ID” в список разрешённых для сервиса ClickHouse. Если добавить PSC Connection ID в список разрешённых для сервиса через консоль ClickHouse Cloud, он автоматически будет добавлен и в организацию. Чтобы удалить конечную точку, откройте Organization details -> Private Endpoints и нажмите кнопку удаления.

Вариант 2: API

Перед выполнением любых команд задайте следующие переменные среды: Замените ENDPOINT_ID ниже значением Endpoint ID из шага Добавление частного сервисного подключения. Чтобы добавить конечную точку, выполните:
Чтобы удалить конечную точку, выполните:
Добавить/удалить частную конечную точку для организации:

Добавьте “Endpoint ID” в список разрешённых для сервиса ClickHouse

Необходимо добавить Endpoint ID в список разрешённых для каждого экземпляра, который должен быть доступен через Private Service Connect.

Вариант 1: консоль ClickHouse Cloud

В консоли ClickHouse Cloud откройте сервис, который нужно подключить через Private Service Connect, затем перейдите в раздел Настройки. Введите Endpoint ID, полученный на шаге Добавление частного сервисного подключения. Нажмите Создать конечную точку.
Если вы хотите разрешить доступ через существующее подключение Private Service Connect, используйте раскрывающееся меню существующих конечных точек.

Вариант 2: API

Перед выполнением любых команд задайте эти переменные окружения: Замените ENDPOINT_ID ниже значением Endpoint ID из шага Добавление частного сервисного подключения. Выполните это для каждого сервиса, который должен быть доступен через Private Service Connect. Чтобы добавить:
Удалить:

Доступ к экземпляру через Private Service Connect

У каждого сервиса с включенным Private Service Connect есть общедоступная и частная конечная точка. Чтобы подключиться через Private Service Connect, нужно использовать частную конечную точку, а именно privateDnsHostname из шага Получение подключения сервиса GCP и имени DNS для Private Service Connect.

Получение частного DNS-имени хоста

Вариант 1: консоль ClickHouse Cloud

В консоли ClickHouse Cloud перейдите в раздел Настройки. Нажмите кнопку Настроить частную конечную точку. В открывшейся выдвижной панели скопируйте DNS-имя.

Вариант 2: API

В этом примере соединение с именем хоста xxxxxxx.yy-xxxxN.p.gcp.clickhouse.cloud будет направляться через Private Service Connect. В то же время соединение с xxxxxxx.yy-xxxxN.gcp.clickhouse.cloud будет идти через интернет.

Устранение неполадок

Проверьте настройки DNS

DNS_NAME — используйте privateDnsHostname из шага Получение подключения сервиса GCP для Private Service Connect и DNS-имени

Сброс соединения удалённой стороной

Проверка подключения

Если у вас возникают проблемы с подключением через ссылку PSC, проверьте соединение с помощью openssl. Убедитесь, что статус конечной точки Private Service Connect — Accepted: OpenSSL должен успешно подключаться (в выводе должно отображаться CONNECTED). errno=104 — ожидаемое значение. DNS_NAME — используйте privateDnsHostname из шага Получение подключения сервиса GCP и DNS-имени для Private Service Connect

Проверка фильтров конечной точки

REST API

Подключение к удалённой базе данных

Согласно документации GCP Private Service Connect:
Сервисно-ориентированная архитектура: сервисы-производители публикуются через балансировщики нагрузки, которые предоставляют сети VPC-потребителя один IP-адрес. Трафик потребителя, обращающийся к сервисам производителя, является однонаправленным и может получать доступ только к IP-адресу сервиса, а не ко всей VPC-сети, связанной через пиринг.
Чтобы подключить табличные функции MySQL или PostgreSQL в ClickHouse Cloud к базе данных, размещённой в вашей GCP VPC, настройте правила firewall в вашей GCP VPC так, чтобы разрешить подключения из ClickHouse Cloud. См. IP-адреса egress по умолчанию для регионов ClickHouse Cloud, а также доступные статические IP-адреса.

Дополнительная информация

Более подробную информацию см. здесь: cloud.google.com/vpc/docs/configure-private-service-connect-services.
Последнее изменение 24 июля 2026 г.