Yandex.Cloud
  • Сервисы
  • Почему Yandex.Cloud
  • Сообщество
  • Тарифы
  • Документация
  • Связаться с нами
Подключиться
Yandex Managed Service for PostgreSQL
  • Начало работы
  • Пошаговые инструкции
    • Все инструкции
    • Информация об имеющихся кластерах
    • Создание кластера
    • Подключение к базе данных
    • Остановка и запуск кластера
    • SQL-запросы в консоли управления
    • Изменение настроек кластера и базы данных
    • Подключение к DataLens
    • Управление хостами PostgreSQL
    • Управление базами данных
    • Управление PostgreSQL-расширениями
    • Управление пользователями БД
    • Назначение привилегий и ролей
    • Управление резервными копиями
    • Удаление кластера
    • Миграция базы данных в Yandex.Cloud
    • Создание логической реплики Аmazon RDS для PostgreSQL в Managed Service for PostgreSQL
  • Сценарии использования
    • Создание кластера PostgreSQL для 1С
  • Концепции
    • Взаимосвязь ресурсов сервиса
    • Классы хостов
      • Действующие классы хостов
      • Архив
        • До 1 июня 2020 года
      • Использование устаревших классов хостов
    • Сеть в Managed Service for PostgreSQL
    • Квоты и лимиты
    • Типы хранилища
    • Резервные копии
    • Назначение ролей
    • Репликация
    • Поддерживаемые клиенты
  • Управление доступом
  • Правила тарификации
    • Действующие правила
    • Архив
      • До 1 января 2019 года
      • С 1 января до 1 марта 2019 года
      • С 1 марта 2019 года до 1 февраля 2020 года
  • Справочник API
    • Аутентификация в API
    • gRPC
      • Обзор
      • BackupService
      • ClusterService
      • DatabaseService
      • ResourcePresetService
      • UserService
      • OperationService
    • REST
      • Обзор
      • Backup
        • Обзор
        • get
        • list
      • Cluster
        • Обзор
        • addHosts
        • backup
        • create
        • delete
        • deleteHosts
        • get
        • list
        • listBackups
        • listHosts
        • listLogs
        • listOperations
        • move
        • restore
        • start
        • startFailover
        • stop
        • update
        • updateHosts
      • Database
        • Обзор
        • create
        • delete
        • get
        • list
        • update
      • ResourcePreset
        • Обзор
        • get
        • list
      • User
        • Обзор
        • create
        • delete
        • get
        • grantPermission
        • list
        • revokePermission
        • update
      • Operation
        • Обзор
        • get
  • Вопросы и ответы
    • Общие вопросы
    • Вопросы о PostgreSQL
    • Все вопросы на одной странице
  1. Пошаговые инструкции
  2. Управление хостами PostgreSQL

Управление хостами кластера

  • Получить список хостов в кластере
  • Добавить хост
  • Изменить хост
  • Удалить хост

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

Получить список хостов в кластере

Консоль управления
CLI
API
  1. Перейдите на страницу каталога и выберите сервис Managed Service for PostgreSQL.

  2. Нажмите на имя нужного кластера, затем выберите вкладку Хосты.

Если у вас еще нет интерфейса командной строки Yandex.Cloud, установите и инициализируйте его.

По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name или --folder-id.

Чтобы получить список баз данных в кластере, выполните команду:

$ yc managed-postgresql host list
     --cluster-name <имя кластера>
     
+----------------------------+--------------+---------+--------+---------------+
|            NAME            |  CLUSTER ID  |  ROLE   | HEALTH |    ZONE ID    |
+----------------------------+--------------+---------+--------+---------------+
| rc1b...mdb.yandexcloud.net | c9qp71dk1... | MASTER  | ALIVE  | ru-central1-b |
| rc1c...mdb.yandexcloud.net | c9qp71dk1... | REPLICA | ALIVE  | ru-central1-c |
+----------------------------+--------------+---------+--------+---------------+

Имя кластера можно запросить со списком кластеров в каталоге.

Получить список хостов кластера можно с помощью метода listHosts.

Добавить хост

Количество хостов в кластерах Managed Service for PostgreSQL ограничено квотами на количество CPU и объем памяти, которые доступны кластерам БД в вашем облаке. Чтобы проверить используемые ресурсы, откройте страницу Квоты и найдите блок Yandex Managed Service for PostgreSQL.

Консоль управления
CLI
API
  1. Перейдите на страницу каталога и выберите сервис Managed Service for PostgreSQL.

  2. Нажмите на имя нужного кластера и перейдите на вкладку Хосты.

  3. Нажмите кнопку Добавить хост.

  4. Укажите параметры хоста:

    • Зону доступности.

    • Подсеть (если нужной подсети в списке нет, создайте ее).

    • Приоритет хоста как PostgreSQL-реплики.

      Измените значение приоритета, чтобы повлиять на выбор синхронной реплики в кластере:

      • Хост с наибольшим значением приоритета в кластере становится синхронной репликой.
      • Если в кластере есть несколько хостов с наибольшим приоритетом, то среди них проводятся выборы синхронной реплики.
      • Наименьший приоритет — 0 (по умолчанию), наивысший — 100.
    • Источник репликации (если вы используете каскадную репликацию).

    • Выберите опцию Публичный доступ, если хост должен быть доступен извне Yandex.Cloud.

Если у вас еще нет интерфейса командной строки Yandex.Cloud, установите и инициализируйте его.

По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name или --folder-id.

Чтобы добавить хост в кластере:

  1. Запросите список подсетей кластера, чтобы выбрать подсеть для нового хоста:

    $ yc vpc subnet list
    
    +-----------+-----------+------------+---------------+------------------+
    |     ID    |   NAME    | NETWORK ID |     ZONE      |      RANGE       |
    +-----------+-----------+------------+---------------+------------------+
    | b0cl69... | default-c | enp6rq7... | ru-central1-c | [172.16.0.0/20]  |
    | e2lkj9... | default-b | enp6rq7... | ru-central1-b | [10.10.0.0/16]   |
    | e9b0ph... | a-2       | enp6rq7... | ru-central1-a | [172.16.32.0/20] |
    | e9b9v2... | default-a | enp6rq7... | ru-central1-a | [172.16.16.0/20] |
    +-----------+-----------+------------+---------------+------------------+
    

    Если нужной подсети в списке нет, создайте ее.

  2. Посмотрите описание команды CLI для добавления хостов:

    $ yc managed-postgresql host add --help
    
  3. Выполните команду добавления хоста:

    $ yc managed-postgresql host add
         --cluster-name <имя кластера>
         --host zone-id=<зона доступности>,subnet-id=<ID подсети>
    

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

    Также вы можете указать несколько дополнительных опций в параметре --host для управления репликацией в кластере:

    • Источник репликации для хоста в опции replication-source для того, чтобы вручную управлять потоками репликации.
    • Приоритет хоста в опции priority для того, чтобы влиять на процесс выбора синхронной реплики:
      • Хост с наибольшим значением приоритета в кластере становится синхронной репликой.
      • Если в кластере есть несколько хостов с наибольшим приоритетом, то среди них проводятся выборы синхронной реплики.
      • Наименьший приоритет — 0 (по умолчанию), наивысший — 100.

Managed Service for PostgreSQL запустит операцию добавления хоста.

Добавить хост в кластер можно с помощью метода addHosts.

Изменить хост

Для каждого хоста в PostgreSQL-кластере можно изменить приоритет хоста и указать источник репликации. Подробнее см. в разделе Репликация.

Консоль управления
CLI
API

Чтобы изменить параметры PostgreSQL-хоста:

  1. Перейдите на страницу каталога и выберите сервис Managed Service for PostgreSQL.
  2. Нажмите на имя нужного кластера и выберите вкладку Хосты.
  3. Нажмите значок .
  4. Задайте новые настройки для хоста:
    1. Установите приоритет, чтобы повлиять на выбор синхронной реплики в кластере:
    • Хост с наибольшим значением приоритета в кластере становится синхронной репликой.
    • Если в кластере есть несколько хостов с наибольшим приоритетом, то среди них проводятся выборы синхронной реплики.
    • Наименьший приоритет — 0 (по умолчанию), наивысший — 100.
    1. Выберите источник репликации для хоста для того, чтобы вручную управлять потоками репликации.
  5. Нажмите кнопку Сохранить.

Если у вас еще нет интерфейса командной строки Yandex.Cloud, установите и инициализируйте его.

По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name или --folder-id.

Чтобы изменить параметры PostgreSQL-хоста, выполните команду:

$ yc managed-postgresql host update <имя хоста>
     --cluster-name <имя кластера>
     --replication-source <имя хоста-источника>
     --priority <приоритет реплики>

Имя хоста можно запросить со списком хостов в кластере, имя кластера — со списком кластеров в каталоге.

В параметре --host для управления репликацией в кластере измените:

  • Источник репликации для хоста в опции replication-source для того, чтобы вручную управлять потоками репликации.
  • Приоритет хоста в опции priority для того, чтобы влиять на процесс выбора синхронной реплики:
    • Хост с наибольшим значением приоритета в кластере становится синхронной репликой.
    • Если в кластере есть несколько хостов с наибольшим приоритетом, то среди них проводятся выборы синхронной реплики.
    • Наименьший приоритет — 0 (по умолчанию), наивысший — 100.

Чтобы изменить параметры PostgreSQL-хоста, воспользуйтесь методом API updateHosts и передайте в запросе:

  1. Идентификатор кластера, в котором нужно изменить хост, в параметре clusterId.
  2. Имя хоста, который нужно изменить, в параметре updateHostSpecs.hostName.

Имя хоста можно запросить со списком хостов в кластере, идентификатор кластера — со списком кластеров в каталоге.

Удалить хост

Вы можете удалить хост из PostgreSQL-кластера, если он не является единственным хостом. Чтобы заменить единственный хост, сначала создайте новый хост, а затем удалите старый.

Если хост является мастером в момент удаления, Managed Service for PostgreSQL автоматически назначит мастером следующую по приоритету реплику.

Консоль управления
CLI
API
  1. Перейдите на страницу каталога и выберите сервис Managed Service for PostgreSQL.

  2. Нажмите на имя нужного кластера и выберите вкладку Хосты.

  3. Нажмите значок в строке нужного хоста и выберите пункт Удалить.

Если у вас еще нет интерфейса командной строки Yandex.Cloud, установите и инициализируйте его.

По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name или --folder-id.

Чтобы удалить хост из кластера, выполните команду:

$ yc managed-postgresql host delete <имя хоста>
     --cluster-name <имя кластера>

Имя хоста можно запросить со списком хостов в кластере, имя кластера — со списком кластеров в каталоге.

Удалить хост можно с помощью метода deleteHosts.

В этой статье:
  • Получить список хостов в кластере
  • Добавить хост
  • Изменить хост
  • Удалить хост
Language
Вакансии
Политика конфиденциальности
Условия использования
© 2021 ООО «Яндекс.Облако»