Изменение настроек кластера

После создания кластера вы можете:

Изменить класс хостов

Если у вас еще нет интерфейса командной строки Яндекс.Облака, установите его.

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

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

  1. Посмотрите описание команды CLI для изменения кластера:

    $ yc managed-postgresql cluster update --help
    
  2. Запросите список доступных классов хостов (в колонке ZONES указаны зоны доступности, в которых можно выбрать соответствующий класс):

    $ yc managed-postgresql resource-preset list
    
    +-----------+--------------------------------+-------+----------+
    |    ID     |            ZONE IDS            | CORES |  MEMORY  |
    +-----------+--------------------------------+-------+----------+
    | s1.nano   | ru-central1-a, ru-central1-b,  |     1 | 4.0 GB   |
    |           | ru-central1-c                  |       |          |
    | s1.micro  | ru-central1-a, ru-central1-b,  |     2 | 8.0 GB   |
    |           | ru-central1-c                  |       |          |
    | ...                                                           |
    +-----------+--------------------------------+-------+----------+
    
  3. Укажите нужный класс в команде изменения кластера:

    $ yc managed-postgresql cluster update <имя кластера>
         --resource-preset <ID класса>
    

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

Изменить класс хостов кластера можно с помощью метода API update: передайте в запросе нужное значение в параметре configSpec.clickhouse.resources.resourcePresetId.

Список поддерживаемых значений запрашивайте методом list для ресурсов ResourcePreset.

Увеличить размер хранилища

Если у вас еще нет интерфейса командной строки Яндекс.Облака, установите его.

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

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

  1. Проверьте, что нужный кластер использует именно сетевое хранилище (увеличить размер локального хранилища пока невозможно). Для этого запросите информацию о кластере и найдите поле disk_type_id — его значение должно быть network-hdd или network-nvme:

    $ yc managed-postgresql cluster get <имя кластера>
    
    id: c7qkvr3u78qiopj3u4k2
    folder_id: b1g0ftj57rrjk9thribv
    ...
    config:
      ...
      resources:
        resource_preset_id: s1.nano
        disk_size: "10737418240"
        disk_type_id: network-nvme
    ...
    
  2. Посмотрите описание команды CLI для изменения кластера:

    $ yc managed-postgresql cluster update --help
    
  3. Проверьте, что в облаке хватает квоты на увеличение хранилища: откройте страницу Квоты для вашего облака и проверьте, что в секции Yandex Managed Service for PostgreSQL не исчерпано место в строке space.

  4. Укажите нужный объем хранилища в команде изменения кластера (должен быть не меньше, чем значение disk_size в свойствах кластера):

    $ yc managed-postgresql cluster update <имя кластера>
         --disk-size <размер хранилища в ГБ>
    

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

Изменить размер хранилища для кластера можно с помощью метода API update: передайте в запросе нужные значения в параметре configSpec.postgresqlConfig_<версия>.resources.diskSize.

Проверьте, что в облаке хватает квоты на увеличение хранилища: откройте страницу Квоты для вашего облака и проверьте, что в секции Yandex Managed Service for PostgreSQL не исчерпано место в строке space.

Изменить настройки PostgreSQL

Вы можете изменить настройки СУБД для хостов вашего кластера — как установленные по умолчанию, так и изменяющиеся вместе с классом хостов.

С изменением класса хостов Managed Service for PostgreSQL автоматически меняет следующие настройки (если они не были выставлены вручную):

  • max_connections
  • shared_buffers
  • min_wal_size
  • max_wal_size
  • autovacuum_max_workers
  • autovacuum_vacuum_cost_delay
  • autovacuum_vacuum_cost_limit

Настройки, которые вы установили вручную, больше не будут меняться автоматически. Исключения могут возникать, если с изменением класса хоста установленное значение не становится недействительным: например, не получится задать значение 400 для max_connections, а затем изменить класс хостов кластера на s1.nano (подробнее о максимальном количестве подключений см. в разделе Создание PostgreSQL-кластера).

Если у вас еще нет интерфейса командной строки Яндекс.Облака, установите его.

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

Чтобы изменить настройки сервера PostgreSQL:

  1. Посмотрите полный список настроек, установленных для кластера:

    $ yc managed-postgresql cluster get <имя кластера> --full
    
  2. Посмотрите описание команды CLI для изменения конфигурации кластера:

    $ yc managed-postgresql cluster update-config --help
    
  3. Установите нужные значения параметров.

    Все поддерживаемые параметры перечислены в формате запроса для метода update, в поле postgresqlConfig_<версия>. Чтобы указать имя параметра в вызове CLI, преобразуйте его имя из вида lowerCamelCase в snake_case, например, параметр logMinDurationStatement из запроса к API преобразуется в log_min_duration_statement для команды CLI:

    $ yc managed-postgresql cluster update-config <имя кластера>
         --set log_min_duration_statement=100,<имя параметра>=<значение>,...
    

    Managed Service for PostgreSQL запустит операцию по изменению настроек кластера.

Изменить настройки СУБД для кластера можно с помощью метода API update: передайте в запросе нужные значения в параметре configSpec.postgresqlConfig_<версия>.config.

Установить режим работы менеджера подключений

Вы можете установить один из режимов работы, описанных в документации PgBouncer.

Если у вас еще нет интерфейса командной строки Яндекс.Облака, установите его.

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

Чтобы изменить режим работы PgBouncer:

  1. Посмотрите описание команды CLI для изменения кластера:

    $ yc managed-postgresql cluster update --help
    
  2. Укажите нужный режим работы с помощью флага --connection-pooling-mode:

    $ yc managed-postgresql cluster update <имя кластера>
         --connection-pooling-mode <SESSION, TRANSACTION или STATEMENT>
    

    Managed Service for PostgreSQL запустит операцию по изменению режима работы менеджера подключений.

Изменить режим работы менеджера подключений для кластера можно с помощью метода API update: передайте в запросе нужное значение в параметре configSpec.poolerConfig.poolingMode.