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

В этой статье:

  • Перед началом работы
  • Создайте кластер
  • Создайте шард в кластере
  • Подключитесь к БД
  • Отправьте запросы к БД
  • Что дальше

Как начать работать с Managed Service for Sharded PostgreSQL

Статья создана
Yandex Cloud
Улучшена
Danila N.
Обновлена 27 ноября 2025 г.
  • Перед началом работы
  • Создайте кластер
  • Создайте шард в кластере
  • Подключитесь к БД
  • Отправьте запросы к БД
  • Что дальше

Примечание

Сервис находится на стадии Preview.

Сервис Managed Service for Sharded PostgreSQL позволяет создавать и поддерживать кластеры шардированного PostgreSQL (SPQR) в инфраструктуре Yandex Cloud.

Чтобы начать работу с сервисом:

  1. Создайте кластер Sharded PostgreSQL.
  2. Создайте шард в кластере Sharded PostgreSQL.
  3. Подключитесь к БД.
  4. Отправьте запросы к БД.

Перед началом работыПеред началом работы

  1. Перейдите в консоль управления, затем войдите в Yandex Cloud или зарегистрируйтесь, если вы еще не зарегистрированы.

  2. Если у вас еще нет каталога, создайте его:

    1. В консоли управления на панели сверху нажмите и выберите нужное облако.

    2. Справа от названия облака нажмите .

    3. Выберите Создать каталог.

      create-folder1

    4. Введите имя каталога. Требования к имени:

      • длина — от 2 до 63 символов;
      • может содержать строчные буквы латинского алфавита, цифры и дефисы;
      • первый символ — буква, последний — не дефис.
    5. (Опционально) Введите описание каталога.

    6. Выберите опцию Создать сеть по умолчанию. Будет создана сеть с подсетями в каждой зоне доступности. Также в этой сети будет создана группа безопасности по умолчанию, внутри которой весь сетевой трафик разрешен.

    7. Нажмите кнопку Создать.

      create-folder2

  3. Назначьте вашему аккаунту в Yandex Cloud роли vpc.user и managed-spqr.editor на каталог. Эти роли позволяют создать кластер.

    Примечание

    Если вы не можете управлять ролями, обратитесь к администратору вашего облака или организации.

  4. Подключаться к кластерам БД можно как изнутри, так и извне Yandex Cloud:

    • Чтобы подключиться изнутри Yandex Cloud, создайте виртуальную машину на основе Linux в той же облачной сети, что и кластер БД.

    • Чтобы подключиться к кластеру из интернета, включите публичный доступ к хостам при создании кластера.

    Примечание

    Следующий шаг предполагает, что подключение к кластеру производится с ВМ. Если вы собираетесь подключаться к кластеру из интернета, переходите к созданию кластера.

  5. Подключитесь к ВМ по SSH.

Создайте кластерСоздайте кластер

  1. В консоли управления выберите каталог, в котором нужно создать кластер Sharded PostgreSQL.

  2. Выберите сервис Yandex Managed Service for Sharded PostgreSQL.

  3. Нажмите кнопку Создать кластер.

  4. В поле Имя кластера введите имя кластера.

  5. Выберите окружение PRODUCTION.

  6. Выберите тип шардирования:

    • Стандартное — кластер будет состоять только из инфраструктурных хостов.
    • Расширенное — кластер будет состоять только из хостов-роутеров и (опционально) хостов-координаторов.
  7. В блоке Сетевые настройки:

    • Выберите созданную перед началом работы облачную сеть.
    • Выберите группу безопасности по умолчанию или создайте новую.
  8. Задайте конфигурацию вычислительных ресурсов:

    • Для стандартного шардирования задайте в блоке Инфраструктура конфигурацию инфраструктурных хостов.
    • Для расширенного шардирования задайте в блоке Роутер конфигурацию хостов-роутеров.

    Чтобы задать конфигурацию вычислительных ресурсов:

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

    2. В блоке Хранилище:

      1. Выберите тип диска.
      2. Задайте размер хранилища.
    3. В блоке Хосты укажите зоны доступности и подсети для хостов, которые будут созданы вместе с кластером.

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

  9. (Опционально) В блоке Координатор включите опцию Координатор и задайте конфигурацию хостов-координаторов.

  10. В блоке База данных укажите:

    • Имя БД. Оно должно быть уникальным в рамках каталога.
    • Имя пользователя — владельца БД.
    • Пароль.
  11. В блоке Дополнительные настройки укажите пароль для консоли Sharded PostgreSQL.

  12. Нажмите кнопку Создать кластер.

  13. Дождитесь, когда кластер будет готов к работе: его статус сменится на Running, а состояние — на Alive. Чтобы проверить состояние, наведите курсор на статус кластера в столбце Доступность.

Создайте шард в кластереСоздайте шард в кластере

  1. В консоли управления выберите каталог, в котором создан кластер Sharded PostgreSQL.

  2. Cоздайте кластер Managed Service for PostgreSQL в той же облачной сети, что и кластер Sharded PostgreSQL.

  3. Откройте ваш кластер Sharded PostgreSQL и перейдите на вкладку  Шарды.

  4. В правом верхнем углу страницы нажмите кнопку Создать шард.

  5. В открывшемся окне:

    1. Задайте Имя шарда.

    2. В поле Кластер Managed Service for PostgreSQL выберите созданный ранее кластер PostgreSQL.

      Кластер Managed Service for PostgreSQL должен находиться в том же каталоге и в той же облачной сети, что и кластер Managed Service for Sharded PostgreSQL.

Подключитесь к БДПодключитесь к БД

Важно

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

Чтобы подключиться к БД кластера Sharded PostgreSQL:

Linux (Bash)/macOS (Zsh)
Windows (PowerShell)
  1. Получите SSL-сертификат:

    mkdir -p ~/.postgresql && \
    wget "https://storage.yandexcloud.net/cloud-certs/CA.pem" \
            --output-document ~/.postgresql/root.crt && \
    chmod 0655 ~/.postgresql/root.crt
    

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

  2. Установите необходимые зависимости и клиент PostgreSQL:

    sudo apt update && sudo apt install -y postgresql-client
    
  3. Подключитесь к БД:

    psql "host=<FQDN_хоста> \
          port=6432 \
          sslmode=verify-full \
          dbname=<имя_БД> \
          user=<имя_пользователя> \
          target_session_attrs=read-write"
    

    Подробнее о получении FQDN хоста.

  1. Установите PostgreSQL для Windows последней версии. Выберите только установку Command Line Tools.

  2. Получите SSL-сертификат:

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

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

  3. Установите переменные окружения для подключения:

    $Env:PGSSLMODE="verify-full"; $Env:PGTARGETSESSIONATTRS="read-write"
    
  4. Подключитесь к БД:

    & "C:\Program Files\PostgreSQL\<мажорная_версия_PostgreSQL>\bin\psql.exe" `
        --host=<FQDN_хоста>.mdb.yandexcloud.net `
        --port=6432 `
        --username=<имя_пользователя> `
        <имя_БД>
    

    Подробнее о получении FQDN хоста.

Отправьте запросы к БДОтправьте запросы к БД

  1. Создайте таблицу customers в БД кластера:

    CREATE TABLE IF NOT EXISTS customers (
        name VARCHAR,
        phone VARCHAR,
        acctbal NUMERIC
    );
    
  2. Наполните таблицу данными:

    INSERT INTO customers (name, phone, acctbal) VALUES
        ('Иван Иванов', '123-45-67', 1500.50),
        ('Мария Смирнова', '222-33-44', 3250.00),
        ('Дмитрий Кузнецов', '555-66-77', -50.75),
        ('Анна Орлова', '111-22-33', 0.00),
        ('Павел Сидоров', '444-55-66', 780.30);
    
  3. Запросите количество строк в таблице:

    SELECT COUNT(*) FROM customers;
    

    Результат:

    count
    -------
        5
    (1 row)
    

Что дальшеЧто дальше

  • Изучите концепции сервиса.
  • Узнайте подробнее о создании кластера и подключении к БД.

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

Следующая
Все инструкции
Проект Яндекса
© 2025 ООО «Яндекс.Облако»