VK Cloud logo

PostgreSQL

Запуск, перезапуск и остановка инстанса БД или его хостов

  1. Перейдите в личный кабинет VK Cloud.

  2. Выберите проект, где находится нужный инстанс БД.

  3. Перейдите в раздел Базы данных → Инстансы баз данных.

  4. Выполните нужную операцию:

    • Для запуска инстанса БД целиком со всеми его хостами выполните одно из действий:

      • Выберите с помощью флажков один или несколько инстансов БД, затем нажмите кнопку Запустить.
      • Нажмите PostgreSQL для хоста инстанса БД с ролью Master и выберите пункт Запустить.
    • Для запуска отдельной реплики инстанса БД нажмите PostgreSQL для нужного хоста с ролью Replica и выберите пункт Запустить.

Получение информации об инстансе БД

Для активного и остановленного инстансов БД доступна разная информация.

  1. Перейдите в личный кабинет VK Cloud.

  2. Выберите проект, где находится нужный инстанс БД.

  3. Перейдите в раздел Базы данных → Инстансы баз данных.

  4. Выполните нужную операцию:

    • Чтобы посмотреть информацию об инстансе БД, нажмите на его имя.

    • Чтобы посмотреть информацию об отдельном хосте инстанса БД, нажмите на имя хоста.

    Откроется страница с информацией.

Управление внешним IP-адресом

Вы можете назначить внешний IP-адрес или отвязать его на уровне отдельного хоста, входящего в состав инстанса БД:

  1. Перейдите в личный кабинет VK Cloud.

  2. Выберите проект, где находится нужный инстанс БД.

  3. Перейдите в раздел Базы данных → Инстансы баз данных.

  4. Выполните нужную операцию:

    1. Нажмите PostgreSQL для нужного хоста и выберите пункт Назначить внешний IP.
    2. Выберите существующий IP-адрес или пункт Добавить новый IP из выпадающего списка.
    3. Нажмите кнопку Подтвердить.

Создание резервной копии

Операция подробно описана в разделе Создание резервной копии вручную.

Расширение инстанса БД

Для расширения инстанса добавьте в него реплику. Операция подробно описана в разделе Репликации.

Вертикальное масштабирование

Вы можете изменять тип виртуальной машины, который используется хостами инстанса БД:

  1. Перейдите в личный кабинет VK Cloud.

  2. Выберите проект, где находится нужный инстанс БД.

  3. Перейдите в раздел Базы данных → Инстансы баз данных.

  4. Чтобы выполнить вертикальное масштабирование:

    1. Нажмите PostgreSQL для хоста инстанса БД с ролью Master и выберите пункт Вертикальное масштабирование.
    2. Выберите нужную категорию и тип виртуальной машины.
    3. Нажмите кнопку Сохранить размер.

Обновление инстанса БД

Чтобы обновить инстанс БД, создайте его резервную копию в сервисе Cloud Backup и восстановите на инстанс с более новой версией PostgreSQL.

  1. Создайте резервную копию.

  2. Подготовьте новый инстанс БД с версией, на которую необходимо обновиться, с помощью восстановления из созданной ранее резервной копии Cloud Backup.

  3. Установите те же расширения, что и на изначальном инстансе БД.

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

    1. Убедитесь, что все таблицы в подписке имеют состояние replicating. Для проверки на подписчике выполните запрос:

      SELECT * FROM pg_subscription_rel;
    2. Убедитесь, что время последнего полученного (received) и примененного (apply) изменения отличаются не более, чем на доли секунд. Для проверки на подписчике выполните запрос:

      SELECT * FROM pg_stat_subscription;
    3. Если возможно, приостановите запись на инстанс БД, который используется вашим приложением или сервисом.

    4. Выясните текущее отставание по LSN. Для этого на источнике выполните запрос:

      SELECTslot_name,pg_wal_lsn_diff(pg_current_wal_lsn(), confirmed_flush_lsn) AS bytes_lagFROM pg_replication_slots;

      Повторите операцию несколько раз с небольшим временным перерывом. Оцените полученные значения.

      • Если на предыдущем шаге запись была приостановлена: убедитесь, что разница LSN перестала уменьшаться или стала равна 0.
      • Если на предыдущем шаге запись не была приостановлена и новые записи продолжают поступать: убедитесь, что разница LSN не растет и не превышает допустимый порог (как правило не более 10–50 МБ, в зависимости от нагрузки и требований).
  5. Переключите сервисы и приложения на работу с новым инстансом БД. Убедитесь, что прежний инстанс БД больше не используется.

  6. Выполните тестовое отключение прежнего инстанса. Для этого отвяжите внешний Floating IP-адрес от прежнего инстанса БД.

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

  7. Удалите прежний инстанс БД.

Преобразование реплики в мастер

Для инстансов БД в конфигурации Master-Replica можно выделить реплику в отдельный инстанс БД.

  1. Перейдите в личный кабинет VK Cloud.
  2. Выберите проект, где находится нужный инстанс БД.
  3. Перейдите в раздел Базы данных → Инстансы баз данных.
  4. Нажмите PostgreSQL для нужного хоста инстанса БД с ролью Replica и выберите пункт Преобразовать в мастер.
  5. Прочитайте предупреждение и нажмите кнопку Подтвердить.

Переключение мастера

Для инстансов БД в конфигурации Кластер можно переключить роль Master с текущего хоста на хост с ролью Sync replica:

  1. Перейдите в личный кабинет VK Cloud.
  2. Выберите проект, где находится нужный инстанс БД.
  3. Перейдите в раздел Базы данных → Инстансы баз данных.
  4. Нажмите PostgreSQL для хоста инстанса БД с ролью Sync replica и выберите пункт Назначить мастером.
  5. Прочитайте предупреждение и нажмите кнопку Назначить.

Увеличение размера WAL-диска

WAL-диск — это диск, на котором хранится журнал предзаписи (Write-Ahead Log, WAL). Чтобы увеличить его размер:

  1. Перейдите в личный кабинет VK Cloud.

  2. Выберите проект, где находится нужный инстанс БД.

  3. Перейдите в раздел Базы данных → Инстансы баз данных.

  4. Увеличьте размер WAL-диска:

    1. Выполните одно из действий:

      • Нажмите PostgreSQL для нужного инстанса БД и выберите пункт Изменить размер WAL-диска.
      • Нажмите PostgreSQL для хоста инстанса БД с ролью Master и выберите пункт Изменить размер WAL-диска.
    2. Укажите новый размер диска.

    3. Нажмите кнопку Сохранить.

Увеличение размера диска с данными

  1. Перейдите в личный кабинет VK Cloud.

  2. Выберите проект, где находится нужный инстанс БД.

  3. Перейдите в раздел Базы данных → Инстансы баз данных.

  4. Увеличьте размер диска, на котором хранятся данные:

    1. Выполните одно из действий:

      • Нажмите PostgreSQL для нужного инстанса БД и выберите пункт Изменить размер диска.
      • Нажмите PostgreSQL для хоста инстанса БД с ролью Master и выберите пункт Изменить размер диска.
    2. Укажите новый размер диска.

    3. Нажмите кнопку Сохранить.

Настройка автомасштабирования размера диска с данными

  1. Перейдите в личный кабинет VK Cloud.

  2. Выберите проект, где находится нужный инстанс БД.

  3. Перейдите в раздел Базы данных → Инстансы баз данных.

  4. Настройте автомасштабирование размера диска, на котором хранятся данные:

    1. Выполните одно из действий:

      • Нажмите PostgreSQL для нужного инстанса БД и выберите пункт Изменить автомасштабирование дисков.
      • Нажмите PostgreSQL для хоста инстанса БД с ролью Master и выберите пункт Изменить автомасштабирование дисков.
    2. Включите или выключите опцию автомасштабирования дисков.

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

    4. Нажмите кнопку Подтвердить.

Удаление инстанса БД или его хостов

  1. Перейдите в личный кабинет VK Cloud.

  2. Выберите проект, где находится нужный инстанс БД.

  3. Перейдите в раздел Базы данных → Инстансы баз данных.

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

    1. Нажмите PostgreSQL для нужного инстанса БД и выберите пункт Удалить.
    2. Нажмите кнопку Подтвердить.
Была ли статья полезна?