Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Managed Service for PostgreSQL
  • Начало работы
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • История изменений
    • Общие вопросы
    • Подключение
    • Изменение кластера
    • Настройки параметров кластера
    • Перемещение и восстановление кластера
    • Мониторинг и логи
    • Все вопросы на одной странице
  • Обучающие курсы
  1. Вопросы и ответы
  2. Подключение

Подключение к кластеру PostgreSQL

Статья создана
Yandex Cloud
Обновлена 26 декабря 2024 г.
  • Возможен ли доступ к кластеру изнутри Yandex Cloud?

  • Можно ли подключиться к кластеру из Docker-контейнера?

  • Как получить SSL-сертификат для подключения к Managed Service for PostgreSQL на Windows?

  • Что делать, если при получении SSL-сертификата через PowerShell возникает ошибка проверки отзыва?

  • Как установить SSL-сертификат для подключения Power BI к Managed Service for PostgreSQL через psql?

  • Что делать, если при подключении я получаю ошибку SSL is required?

  • Можно ли подключиться к хостам кластера по SSH?

  • Сколько одновременных подключений к одному хосту доступно в Managed Service for PostgreSQL?

  • Сколько подключений доступно одному пользователю?

  • Почему при попытке подключиться к базе данных возникает ошибка?

  • Почему при попытке подключиться к базе данных из Looker Studio возникает ошибка?

  • Почему соединение завершается ошибкой?

Возможен ли доступ к кластеру изнутри Yandex Cloud?Возможен ли доступ к кластеру изнутри Yandex Cloud?

К хостам кластера Managed Service for PostgreSQL можно подключиться:

  • Через интернет, если вы настроили публичный доступ для нужного хоста. К таким хостам подключиться можно только используя SSL-соединение.
  • С виртуальных машин Yandex Cloud, расположенных в той же облачной сети. Если к хосту нет публичного доступа, для подключения с таких виртуальных машин необязательно использовать SSL-соединение.
  • Из контейнера в сервисе Yandex Serverless Containers. Если к хосту нет публичного доступа, контейнер должен располагаться в той же облачной сети.

Подробнее см. в документации сервиса.

Можно ли подключиться к кластеру из Docker-контейнера?Можно ли подключиться к кластеру из Docker-контейнера?

Да, для этого настройте Dockerfile.

Пример подключения из контейнера в сервисе Yandex Serverless Containers см. в практическом руководстве.

Как получить SSL-сертификат для подключения к Managed Service for PostgreSQL на Windows?Как получить SSL-сертификат для подключения к Managed Service for PostgreSQL на Windows?

SSL-сертификат можно получить с помощью PowerShell:

mkdir $HOME\.postgresql; curl.exe --output $HOME\.postgresql\root.crt https://storage.yandexcloud.net/cloud-certs/CA.pem

Сертификат будет сохранен в файле $HOME\.postgresql\root.crt.

Подробнее о получении сертификата и подключении к базе данных см. в документации сервиса.

Что делать, если при получении SSL-сертификата через PowerShell возникает ошибка проверки отзыва?Что делать, если при получении SSL-сертификата через PowerShell возникает ошибка проверки отзыва?

Полный текст ошибки:

curl: (35) schannel: next InitializeSecurityContext failed: Unknown error (0x80092012)
The revocation function was unable to check revocation for the certificate

Это означает, что при подключении к сайту не удалось проверить, есть ли его сертификат в списке отозванных.

Чтобы исправить ошибку:

  • убедитесь, что проверку не блокируют настройки корпоративной сети;

  • выполните команду с параметром --ssl-no-revoke.

    mkdir $HOME\.postgresql; curl.exe --ssl-no-revoke -o $HOME\.postgresql\root.crt https://storage.yandexcloud.net/cloud-certs/CA.pem
    

Как установить SSL-сертификат для подключения Power BI к Managed Service for PostgreSQL через psql?Как установить SSL-сертификат для подключения Power BI к Managed Service for PostgreSQL через psql?

  1. Установите Windows Subsystem for Linux (WSL) и выполните в терминале команду:

    mkdir /mnt/c/temp && \
    curl "https://storage.yandexcloud.net/cloud-certs/CA.pem" --output /mnt/c/temp/CA.pem && \
    openssl pkcs12 -export -out /mnt/c/temp/CA.pfx -nokeys -in /mnt/c/temp/CA.pem
    

    Сертификат будет доступен по пути C:\temp\CA.pfx.

  2. Разместите полученный сертификат в хранилище сертификатов Windows.

Что делать, если при подключении я получаю ошибку SSL is required?Что делать, если при подключении я получаю ошибку SSL is required?

Ошибка означает, что вы пытаетесь подключиться к кластеру с хостом в публичном доступе. Такие хосты поддерживают только соединения с SSL-сертификатом. Вы можете:

  • Получить SSL-сертификат и добавить его в приложение, которое вы используете для подключения.
  • Отключить публичный доступ для хостов и подключаться к кластеру с виртуальной машины, расположенной в той же облачной сети.

Можно ли подключиться к хостам кластера по SSH?Можно ли подключиться к хостам кластера по SSH?

Подключиться к хостам через SSH не получится. Это сделано в целях безопасности и отказоустойчивости пользовательских кластеров, так как прямые изменения внутри хоста могут привести к его полной неработоспособности.

Сколько одновременных подключений к одному хосту доступно в Managed Service for PostgreSQL?Сколько одновременных подключений к одному хосту доступно в Managed Service for PostgreSQL?

Количество одновременных подключений задается на уровне кластера в настройке Max connections. По умолчанию установлено максимальное значение, которое задается формулой:

200 × <количество_vCPU_на_одном_хосте>

О том, как изменить настройки PostgreSQL на уровне кластера читайте в документации.

Сколько подключений доступно одному пользователю?Сколько подключений доступно одному пользователю?

По умолчанию кластер резервирует для каждого пользователя 50 подключений к каждому хосту. Вы можете изменить это количество в настройке Conn limit.

Если лимит подключений для пользователя будет исчерпан, то попытка открыть новое подключение завершится ошибкой:

too many active clients for user (pool_size for user <имя_пользователя> reached <значение_лимита>)

О том, как изменить настройки PostgreSQL на уровне пользователя читайте в документации.

Почему при попытке подключиться к базе данных возникает ошибка?Почему при попытке подключиться к базе данных возникает ошибка?

Подключение к базе данных может завершиться ошибкой вида:

ERROR: odyssey: ce3ea075f4ffa: route for 'dbname.username' is not found

Ошибка означает, что в параметрах подключения указано неверное имя базы данных.

Почему при попытке подключиться к базе данных из Looker Studio возникает ошибка?Почему при попытке подключиться к базе данных из Looker Studio возникает ошибка?

Для подключения из Looker Studio необходимо сгенерировать и указать в настройках подключения файл сертификата клиента и приватный ключ. О том, как это сделать, см. в разделе Подключение из Looker Studio.

Почему соединение завершается ошибкой?Почему соединение завершается ошибкой?

Соединение с кластером Managed Service for PostgreSQL может завершаться сообщением:

FATAL: terminating connection due to administrator command

Такое сообщение не является ошибкой, а означает, что длительность сессии/транзакции превысила значение настройки Session duration timeout (по умолчанию — 12 часов).

Была ли статья полезна?

Предыдущая
Общие вопросы
Следующая
Изменение кластера
Проект Яндекса
© 2025 ООО «Яндекс.Облако»