Postgres Pro Enterprise Manager 2.1

Пользовательская документация для Postgres Pro Enterprise Manager 2.1.

Обзор Postgres Pro Enterprise Manager

Postgres Pro Enterprise Manager (PPEM) — комплексное решение для администрирования инфраструктуры баз данных. PPEM предоставляет удобный интерфейс для управления и мониторинга СУБД PostgreSQL, включая редакции Postgres Pro Standard и Postgres Pro Enterprise.

Инструменты PPEM позволяют выполнять самые разные регламентные операции по обслуживанию СУБД, обеспечивать комфортное управление экосистемой СУБД PostgreSQL во всех сферах эксплуатации, таких как резервное копирование и восстановление, отслеживание производительности и мониторинг, поиск и устранение неисправностей, и многое другое.

Чтобы начать работу с PPEM, воспользуйтесь инструкцией Быстрый старт.

Подробнее о компонентах и функциональности PPEM читайте в разделах Архитектура и Возможности.

Информация о новых выпусках и обновлениях функциональности находится в разделе Что нового.

Больше информации о работе с PPEM вы найдёте в следующих разделах:

Возможности

PPEM позволяет выполнять полный цикл задач развёртывания, эксплуатации и обслуживания баз данных PostgreSQL:

  • Автоматическое обнаружение экземпляров СУБД

    PPEM обнаруживает активные экземпляры СУБД и автоматически добавляет их в веб-приложение, определяет используемые средства резервного копирования и синхронизирует конфигурацию резервного копирования в веб-приложение PPEM. Функции автоматического обнаружения минимизируют время на перенастройку экземпляров СУБД на работу с PPEM и помогают оперативно начать использовать PPEM, а также облегчить миграцию с других средств управления.

  • Установка и запуск экземпляров СУБД

    PPEM позволяет развернуть новые экземпляры СУБД с помощью браузера. Доступно развёртывание одиночных и кластерных конфигураций СУБД, а также развёртывание из резервных копий.

  • Конфигурирование экземпляров СУБД

    Для новых и уже существующих экземпляров СУБД PPEM содержит средства просмотра и настройки параметров конфигурации. Это исключает необходимость подключения к экземпляру и прямого редактирования файлов конфигурации, что упрощает и ускоряет процесс настройки.

  • Просмотр и управление внутренними объектами схемы СУБД

    PPEM позволяет просматривать внутреннюю структуру экземпляров СУБД (табличные пространства, базы данных, таблицы, индексы и другие объекты), а также предоставляет инструменты для создания новых объектов.

  • Отслеживание внутренней активности экземпляров СУБД

    PPEM взаимодействует с подсистемой статистики и предоставляет сведения о внутренней активности СУБД: активные и фоновые процессы, статистика выполнения запросов, ожидания и блокировки. Также с помощью PPEM можно отменять или принудительно завершать процессы СУБД.

  • Визуализация выполняющихся процессов и анализ планов запросов

    PPEM интегрируется с коллектором pgpro-otel-collector, который собирает статистику и журналы активности СУБД и предоставляет метрики. PPEM выступает потребителем этой телеметрии и предоставляет графики для оценки и анализа работы СУБД.

  • Профилирование и интеграция с pgpro_pwr

    PPEM интегрируется с pg_profile и pgpro_pwr, а также предоставляет удобный интерфейс для работы со снимками и отчётами.

  • Планирование, запуск и отслеживание работы регламентных операций

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

  • Обеспечение задач резервного копирования и восстановления

    PPEM может автоматически обнаруживать инструменты резервного копирования (pg_probackup), интегрироваться с ними и предоставлять средства просмотра и управления. PPEM позволяет выполнять резервное копирование как вручную, так и по расписанию, а также создавать новые экземпляры СУБД из резервных копий. Используя опцию восстановления на момент времени (PITR, Point-in-Time Recovery), можно более гибко решать задачи восстановления из резервных копий.

  • Прямой доступ к консоли экземпляров СУБД

    PPEM позволяет подключаться к консоли экземпляра через web-psql. Этот инструмент предназначен для опытных администраторов и позволяет быстро подключаться к СУБД и взаимодействовать с ней напрямую.

Архитектура

В этом разделе:

Описание компонентов

Архитектура PostgresPro Enterprise Manager включает следующие компоненты:

Веб-приложение

Веб-приложение — набор компонентов, которые обеспечивают пользовательский графический интерфейс, доступный через веб-браузер. Веб-приложение устанавливается на сервере с менеджером PPEM. Пользователь, используя браузер, выполняет различные действия, а веб-приложение преобразует эти действия в запросы и отправляет их менеджеру. Менеджер обрабатывает запросы и возвращает их веб-приложению. Веб-приложение преобразует ответ в различные представления и отображает в браузере.

Менеджер

Менеджер — служба, которая работает в фоновом режиме. Менеджер принимает запросы на обслуживание инфраструктуры СУБД и имеет собственный планировщик для выполнения регулярных служебных заданий. Менеджер принимает запросы от веб-приложения и преобразует запросы в операции согласно заложенной логике.

Для выполнения операций могут потребоваться:

  • различные служебные данные, которые, как правило (но необязательно), хранятся в репозитории PPEM;
  • выполнение инструкций на стороне агентов PPEM.

Выполнив операцию, менеджер сообщает результат операции веб-приложению.

ПРИМЕЧАНИЕ

Операции, которые выполняет менеджер, могут быть синхронными и асинхронными. В случае синхронного выполнения менеджер вынужден дождаться завершения операции, после чего получит ответ. В случае асинхронного выполнения менеджер сразу получит ответ о том, что операция поставлена в очередь выполнения. При этом менеджеру необходимо будет периодически проверять статус выполнения операции, но в большинстве случаев по завершении операции пользователю будет отправлено уведомление о завершении.

Репозиторий

Репозиторий — база данных в отдельном экземпляре СУБД с набором схем и таблиц, в которых менеджер хранит служебную информацию, необходимую для работы. Менеджер при запуске устанавливает соединение с репозиторием и в процессе выполнения операций читает и записывает данные в репозиторий. Доступность репозитория носит критический характер — в случае недоступности репозитория дальнейшее продолжение работы менеджера невозможно.

Агенты

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

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

На одном отдельном сервере достаточно одного агента, который способен обслуживать один и более экземпляров СУБД на этом же сервере.

Экземпляр СУБД

Экземпляр СУБД — это объект управления PPEM, то есть СУБД PostgreSQL в различных редакциях (Vanilla, Postgres Pro Standard, Postgres Pro Enterprise). Несколько экземпляров СУБД могут объединяться в кластеры. Обычно это кластеры потоковой репликации.

С отдельным экземпляром СУБД должен взаимодействовать только один агент PPEM. Не допускайте сценариев, когда несколько агентов работают с одним и тем же экземпляром СУБД, это может привести к путанице и неоднозначности поведения. С точки зрения экземпляра СУБД агент является обычным прикладным ПО, которое подключается к экземпляру через SQL-интерфейс, используя заранее определённую учетную запись СУБД.

Внешние сервисы

Для расширения функций и возможностей PPEM может использовать различные внешние сервисы. Все эти сервисы являются необязательными и взаимодействие с ними настраивается отдельно.

ПРИМЕЧАНИЕ

PPEM не содержит инструменты для административного управления внешними сервисами (например, управление ресурсами и настройками).

Поддерживаются следующие внешние сервисы:

  • Каталог LDAP — каталог пользователей и групп, который может использоваться для аутентификации пользователей в PPEM. PPEM поддерживает работу с сервисами OpenLDAP и Microsoft ActiveDirectory.

  • S3-совместимое объектное хранилище — используется PPEM для размещения резервных копий, создаваемых утилитой pg_probackup.

  • OTLP-совместимая система хранения метрик — система хранения метрик с поддержкой работы по push-модели с возможностью записи метрик по протоколу OTLP (например Victoriametrics) и/или по pull-модели, способной забирать метрики по протоколу HTTP (например Prometheus). PPEM может использовать такую систему для получения метрик, которые записываются туда коллектором pgpro-otel-collector. PPEM поддерживает работу с Prometheus и Victoriametrics.

  • OTLP-совместимая система хранения журналов — система хранения метрик, способная принимать журналы по протоколу OTLP. PPEM может использовать такую систему для получения журналов СУБД, которые записываются туда коллектором pgpro-otel-collector. PPEM поддерживает работу с Elasticsearch.

Верхнеуровневая архитектура

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

Архитектура PPEM

Где:

  • PPEM является сервисом по управлению инфраструктурой СУБД и состоит из следующих компонентов: веб-приложение, менеджер, репозиторий и агенты.
  • Отдельный экземпляр СУБД — объект управления PPEM, который представляет собой СУБД PostgreSQL в различных редакциях.
  • Кластер репликации — несколько экземпляров СУБД, объединенных в кластер. Обычно это кластера потоковой репликации.
  • Сервис идентификации пользователей и групп — каталог пользователей и групп, который может использоваться для аутентификации пользователей в PPEM. Необязательный внешний компонент.
  • S3-совместимое объектное хранилище — система для хранения резервных, копий сделанных с помощью pg_probackup. Необязательный внешний компонент.
  • OTLP-совместимая система мониторинга — система мониторинга, способная принимать метрики по протоколу OTLP или забирать их через HTTP. Может использоваться PPEM для получения метрик производительности СУБД. Необязательный внешний компонент.

Архитектура менеджера и агента

Пример архитектуры и взаимодействия менеджера и агента представлен на схеме ниже:

Архитектура менеджера и агента

Где:

  • Пользователь может работать с PPEM как через веб-приложение в браузере, так и через инструменты автоматизации (IaC), которые могут взаимодействовать с PPEM через REST API.
  • В PPEM основным графическим интерфейсом пользователя является веб-приложение. Веб-приложение тесно связано с менеджером — оттуда веб-приложение получает данные и отправляет управляющие команды от пользователя. Менеджер предоставляет API для получения данных и управления инфраструктурой СУБД. Менеджер хранит промежуточное состояние инфраструктуры в базе репозитория и взаимодействует с агентом, который управляет экземпляром СУБД.
  • Операционная система — это рабочее окружение, в котором запущены экземпляр СУБД и агент PPEM. Агент взаимодействует с менеджером: отправляет ему данные об окружении (информация об ОС и экземплярах СУБД) и принимает управляющие команды.

Архитектура мониторинга

Для обеспечения функций мониторинга в контексте работы с Метриками и Журналами (далее — Телеметрия) PPEM использует коллектор pgpro-otel-collector от Postgres Pro.

Работа с телеметрией может быть организована двумя способами:

  • Внутреннее хранилище. Для хранения телеметрии используется базы данных репозитория — метрики хранятся в отдельной схеме monitoring, журналы — в схеме logs.
  • Внешнее хранилище. Для хранения телеметрии могут использоваться внешние по отношению к PPEM хранилища данных.

В обоих случаях обязательным компонентом является коллектор pgpro-otel-collector. Коллектор обеспечивает сбор статистики и журналов, генерацию данных телеметрии и, в зависимости от выбранного режима, экспорт данных менеджеру или во внешнюю систему хранения.

ВАЖНО!

Использование внутреннего хранилища не рекомендуется для использования в производственной среде, так как имеет ограниченные возможности масштабирования и потенциальные проблемы производительности при росте объемов данных. Запись и чтение больших объемов телеметрии может негативно влиять на общую производительность PPEM при обращении к базе данных репозитория.

Внутреннее хранилище

Пример архитектуры мониторинга при использовании внутреннего хранилища представлен на схеме ниже:

Архитектура мониторинга. Внутреннее хранилище

Где:

  • Пользователь работает с PPEM через веб-приложение в браузере, где просматривает графики по метрикам и журналам.
  • В PPEM хранилищем метрик и журналов является репозиторий. Менеджер получает метрики и журналы от коллектора и сохраняет их в базах данных репозитория, а также запрашивает метрики и журналы из баз данных репозитория и отдаёт их потребителю через REST API. Веб-приложение запрашивает у менеджера метрики и журналы и затем визуализирует полученные данные.
  • В операционной системе коллектор pgpro-otel-collector подключается к экземпляру СУБД для получения метрик, читает файлы журналов СУБД, обрабатывает полученные данные и через REST API отправляет менеджеру. Агент является отдельным компонентом, выполняет управляющие функции и не занимается сбором метрик и журналов.

Внешнее хранилище

Пример архитектуры мониторинга при использовании внешнего хранилища представлен на схеме ниже:

Архитектура мониторинга. Внешнее хранилище

Где:

  • Пользователь работает с PPEM через веб-приложение в браузере, где просматривает графики по метрикам и журналам.
  • В PPEM менеджер запрашивает метрики и журналы из внешних хранилищ и отдаёт их потребителю через REST API. Веб-приложение запрашивает у менеджера метрики и журналы и затем визуализирует полученные данные.
  • В операционной системе коллектор pgpro-otel-collector подключается к экземпляру СУБД для получения метрик, читает файлы журналов СУБД, обрабатывает полученные данные и через REST API отправляет во внешние хранилища. Агент является отдельным компонентом, выполняет управляющие функции и не занимается сбором метрик и журналов.
  • Внешние хранилища метрик и журналов:
    • В качестве хранилища метрик может выступать отдельная система мониторинга. Поддерживаются Prometheus, Victoriametrics и OTLP-совместимые хранилища.
    • В качестве хранилища журналов может выступать отдельная система с OTLP-совместимым хранилищем. Поддерживается Elasticsearch.

Архитектура резервного копирования

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

Архитектура резервного копирования

Где:

  • Пользователь через веб-приложение использует функции резервного копирования и восстановления.
  • В PPEM веб-приложение отправляет запросы к менеджеру. Менеджер отправляет запросы на резервное копирование и восстановление агентам.
  • В операционной системе агенты выполняют резервное копирование или восстановление с помощью утилиты pg_probackup. Резервная копия может быть сохранена как в локальный каталог, так и в S3-совместимое объектное хранилище. Каталог резервных копий должен быть предварительно подготовлен для работы с pg_probackup. В случае восстановления резервная копия может быть получена как из локального каталога, так и из объектного хранилища.
  • S3-совместимое объектное хранилище является внешним сервисом. Поддержка работы с конкретными объектными хранилищами обеспечивается средствами `pg_probackup и не зависит от PPEM.

Аппаратные и программные требования

В этом разделе приведены аппаратные и программные требования для обеспечения работы PPEM, а также информация по расчёту ресурсов при масштабировании СУБД.

Минимальные аппаратные и программные требования

Ниже приведены минимальные аппаратные и программные требования для серверов, где будут резвёрнуты менеджер и агент PPEM.

В качестве сервера может выступать:

  • аппаратный (bare metal) сервер;
  • виртуальная машина на базе виртуализации Xen/KVM/VMWare;
  • контейнерная среда в привелигированном режиме.

ВАЖНО!

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

Для менеджера:

Один сервер следующей минимальной конфигурации:

Для агента:

Один сервер следующей минимальной конфигурации:

Расчёт ресурсов

Для менеджера:

Требуемые ресурсы для менеджера на 10 экземпляров СУБД с 10 тыс. объектов в отдельном экземпляре:

  • CPU — 2 шт.
  • RAM — 2 ГБ
  • SSD — 40 ГБ

Минимальная конфигурация сервера, где будет размещен менеджер (до 10 экземпляров с 10 тыс. объектов в отдельном экземпляре):

  • CPU — 2 шт.
  • RAM — 4 ГБ
  • SSD — 40 ГБ

Расчётная таблица:

Количество экземпляровCPU, шт.RAM, ГБSSD, ГБ
102440
3041280
70828160
1501660320
2302492480
31032124640

Для агента:

Требуемые ресурсы для агента на 1 экземпляр СУБД (до 100 тыс. объектов в экземпляре):

  • CPU — 1 шт.
  • RAM — 512 МБ
  • SSD — 20 ГБ

Минимальная конфигурация сервера с экземпляром СУБД, где будет размещен агент PPEM (до 100 тыс. объектов в экземпляре):

  • CPU — 2 шт.
  • RAM — 2 ГБ
  • SSD — 20 ГБ

Расчётная таблица:

Количество объектов СУБДCPU, шт.RAM, ГБSSD, ГБ
100 тыс.2210
200 тыс.3420
400 тыс.4820

Поддержка платформ и ОС

Менеджер и агент PPEM поддерживают операционные системы семейства Linux на платформе x86_64.

PPEM поддерживает установку и работу на следующих дистрибутивах Linux:

  • ALT Linux 10
  • ALT Linux 11
  • ALT Linux СП 10
  • Astra Linux «Смоленск» 1.7
  • Astra Linux «Смоленск» 1.8
  • Debian 11
  • Debian 12
  • RedOS 7.3
  • RedOS 8.2
  • RedHat Enterprise Linux 8
  • RedHat Enterprise Linux 9
  • ROSA 2021.1
  • Suse Linux Enterprise Server 15
  • Ubuntu 20.04
  • Ubuntu 22.04
  • Ubuntu 24.04

ПРИМЕЧАНИЕ

Работа PPEM c дистрибутивами, отличными от вышеперечисленных, не тестировалась, и нормальная работа PPEM на них не гарантируется.

Работа PPEM на платформах, отличных от x86_64, не тестировалась, и нормальная работа PPEM на них не гарантируется.

Совместимость

Совместимость с PostgreSQL

Менеджер PPEM поддерживает следующие версии PostgreSQL, включая редакции Postgres Pro Standard и Postgres Pro Enterprise:

  • 17
  • 16
  • 15
  • 14

Агент PPEM поддерживает следующие версии PostgreSQL, включая редакции Postgres Pro Standard и Postgres Pro Enterprise:

  • 17
  • 16
  • 15
  • 14
  • 13
  • 12

Совместимость с pg_probackup

Агент PPEM поддерживает следующие версии pg_probackup:

  • 2.8

Совместимость с pgpro-otel-collector

Агент PPEM поддерживает следующие версии pgpro-otel-collector:

  • 0.3

Совместимость с браузерами

Для оптимального пользовательского опыта при работе в веб-приложении PPEM рекомендуется:

  • Использование экрана с минимальным разрешением 1280x720. Рекомендуется использовать разрешение 1440х900 и выше.

  • Использование следующих интернет-браузеров:

    • Chrome 87+
    • Firefox 85+
    • Opera 73+
    • Safari 14+

Безопасность

Менеджер и агент

Менеджер является обычным прикладным ПО и не требует привилегированного доступа к функциям операционной системы. Служба менеджера может полноценно функционировать при запуске от имени непривилегированного системного пользователя.

Для работы с репозиторием менеджеру требуется отдельная база данных, где будет храниться служебная информация. Также требуется пользователь СУБД со следующими правами:

  • с правом LOGIN к экземпляру;
  • с правом подключения к базе данных, которая будет репозиторием;
  • являющийся владельцем этой базы данных;
  • без ограничений прав доступа внутри этой базы данных (для выполнения миграций в схеме данных).

Агент является обычным прикладным ПО, для полноценной работы которого требуется:

  • доступ к функциям операционной системы;
  • доступ к управляемому экземпляру СУБД.

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

Доступ к управляемому экземпляру СУБД можно разделить следующие части:

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

    ПРИМЕЧАНИЕ

    По умолчанию инициализация основного каталога данных выполняется владельцем postgres с правами 0600, поэтому большинство установок СУБД ограничивает доступ именно такой конфигурацией. Следовательно, оптимальным вариантом эксплуатации является запуск агента от имени системного пользователя postgres.

  • Доступ к SQL-интерфейсу экземпляра СУБД, для которого агенту требуется пользователь СУБД:

    • с правом LOGIN к экземпляру;
    • с правом подключения ко всем базам данных экземпляра;
    • являющийся членом ролей pg_monitor, pg_signal_backend.

Сетевое взаимодействие

Сетевое взаимодействие между менеджером и агентом может инициироваться обеими сторонами:

  • Менеджер может отправлять управляющие инструкции агентам, агенты в ответ отправляют результаты выполнения инструкций.
  • Агенты могут отправлять менеджеру запросы на регистрацию самих себя и экземпляров СУБД, запросы на обновление состояния экземпляров, а менеджер должен отправить агенту ответ на запрос.

Менеджер и агент для общения используют протокол HTTP(S). Менеджер по умолчанию использует порт tcp/8080, агент использует по умолчанию порт tcp/8081. Такое направление трафика следует учитывать при настройке правил сетевого доступа. Настройки адресов и портов задаются в основных файлах конфигурации менеджера и агента.

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

Аутентификация между пользователями и менеджером

Для работы с менеджером требуется аутентификация и авторизация пользователя. Аутентификация может выполняться следующими способами:

  • Встроенными средствами PPEM — данные о пользователях и группах хранятся в репозитории и управляются администратором PPEM.
  • Через внешний каталог LDAP (OpenLDAP или Microsoft ActiveDirectory). В случае использования внешнего каталога менеджер должен быть настроен на работу с этим каталогом. Все данные о пользователях и группах хранятся во внешнем каталоге и управляются отдельным администратором каталога LDAP.

Аутентификация между менеджером и агентами

API менеджера и агента защищено авторизацией. Для выполнения запросов к API менеджер и агент проводят взаимную аутентификации и выдают токены доступа для последующей авторизации. Токены имеют ограниченное время жизни — менеджер и агенты самостоятельно отслеживают срок действия токенов и обновляют их при необходимости.

Ролевая модель доступа (RBAC)

Основные положения

Управление доступом в PPEM реализуется RBAC-моделью (Role Based Access Control), которая определяет правила разграничения доступа с помощью ролей и привилегий. Модель устанавливает следующие базовые соглашения:

  • объект — ресурс, к которому должен быть предоставлен или ограничен доступ;
  • субъект — человек (пользователь), автоматизированный агент;
  • привилегия (разрешение) — утверждение (разрешающего) режима доступа на выполнение операции над объектом;
  • роль — рабочая функция или название, которое определяется на уровне авторизации.

Базовые соглашения определяют расширенные соглашения:

  • правило доступа — совокупность роли, привилегий и связей между этими ролью и привилегиями;
  • сеанс — соответствие между субъектом и ролью;
  • один субъект может иметь несколько ролей;
  • одну роль могут иметь несколько субъектов;
  • одна роль может иметь несколько привилегий;
  • одна привилегия может принадлежать нескольким ролям.

ВАЖНО!

Привилегии не назначаются субъектам напрямую, а приобретаются субъектами только через роли.

RBAC в PPEM

Базовые утверждения:

  • Функциональность PPEM состоит из плагинов.

  • Каждый плагин позволяет управлять конкретным ресурсом.

  • Управление ресурсом включает в себя базовые CRUD-операции: create, view, edit, delete.

  • Дополнительно управление ресурсом может включать в себя различные RPC-операции, их имена зависят от операции по управлению ресурсом.

  • Доступ субъекта к различным операциям определяется привилегиями.

    Таким образом, управление любым ресурсом управляется привилегиями (базовый минимум):

    • _create
    • _view
    • _edit
    • _delete
  • Привилегии включаются в роли.

  • Роли могут назначаться субъекту как в момент создания субъекта, так и позже.

  • При получении от субъекта запроса на выполнение операции плагин проверяет право субъекта на доступ к запрошенной операции.

  • Субъекты (пользователи) могут создавать собственные роли (при наличии прав) и назначать эти роли другим субъектам (пользователям).

  • Привилегии и роли могут быть объектно-привязанными. Это означает, что можно указать роль и привилегию, разрешающую доступ к ограниченному множеству объектов.

  • Привязка к объекту может осуществляться на уровне роли (все субъекты с этой ролью имеют доступ к объекту) или на уровне пользователя (доступ к объекту имеет только один пользователь).

Субъекты

Субъектами могут выступать:

  • Пользователи. Роли назначаются на пользователей в момент создания. Если роли не указаны явно, может быть назначена роль по умолчанию.
  • Агенты. Роль назначается при создании или регистрации агента.
Объекты

Объектами могут выступать как ресурсы, так и представления ресурсов в репозитории, например: сервера, агенты, экземпляры СУБД, пользователи PPEM, группы PPEM и т.п.

Установка привилегий и ролей

При первом запуске PPEM выполняется инициализация репозитория, при которой заполняются служебные таблицы (привилегии и роли). При инициализации для каждого плагина устанавливается свой набор привилегий, ролей и отношений "роль-привилегия". Так, например, для плагина accounts создаются свои привилегии и роли для управления доступом к объектам этого плагина. Так и для других плагинов создаются свои наборы привилегий и ролей для управления доступом к объектам этих плагинов.

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

Реализация

Права доступа реализованы следующим набором таблиц (принадлежат плагину accounts):

  • privileges — привилегии с указанием класса объектов, к которым они регулируют доступ;
  • roles — роли с указанием класса объектов, на которые нацелена роль;
  • role_privileges — отношение типа "роль-привилегия", устанавливает связь между ролью и входящими в нее привилегиями;
  • users — пользователи системы (субъекты);
  • user_roles — отношение типа "пользователь-роль", устанавливает связь между пользователем и назначенными на него ролями;
  • user_privileges — представление (view), отображающее связи "пользователь-привилегия";
  • groups — группы системы;
  • group_roles — отношение типа "группа - роль", устанавливает связь между группой и назначенными на нее ролями;
  • group_users — отношение типа "группа-пользователь", устанавливает связь между группой и входящими в нее пользователями.
Таблица privileges

Таблица имеет следующие поля:

  • id — уникальный идентификатор привилегии.
  • name — уникальное имя привилегии.
  • title — человекопонятное описание привилегии;
  • class — определяет класс объектов, для доступа к которым используется привилегия.
  • source — имя плагина, который устанавливает привилегию и в дальнейшем осуществляет проверку доступа.

Таблица заполняется менеджером PPEM с помощью миграций. Каждый плагин определяет собственный набор привилегий. Для проверки привилегий используется HTTP middleware-обработчик. Создание, изменение и удаление привилегий пользователем не предусмотрено, так как проверка привилегий реализуется в коде менеджера PPEM.

Таблица roles

Таблица имеет следующие поля:

  • id — уникальный идентификатор роли.
  • name — уникальное имя роли.
  • title — человекопонятное описание роли.
  • class — определяет класс объектов, для доступа к которым используется эта привилегия. Значение поля используется как подсказка для UI, чтобы получить привилегии соответствующего класса и список объектов этого класса;
  • source text — имя плагина, который устанавливает роль, в случае пользовательских ролей устанавливается значение user.

Роли создаются менеджером с помощью миграций. Базовый набор ролей устанавливается для плагина accounts. Пользователь через API менеджера может создавать, изменять и удалять пользовательские роли, но не может изменять или удалять роли установленные менеджером PPEM (системные роли).

Таблица role_privileges

Таблица устанавливает отношения между ролями и привилегиями и имеет следующие поля:

  • id — уникальный идентификатор отношения.
  • role — указывает на идентификатор роли.
  • privilege — указывает на идентификатор привилегии.
  • parametric — флаг, указывающий на использования привязки к объекту.
  • object — указывает на уникальный идентификатор объекта произвольного класса.

Класс объекта определяется по значению поля privileges.class. Объявленный здесь идентификатор объекта ограничивает действие привилегии, указанной в role_privileges.privilege, одним объектом, и разрешает доступ к объекту только участникам одной роли, указанной в role_privileges.role (доступ разрешён пользователям в user_roles.user, у которых user_roles.role = role_privileges.role).

Комбинация (role,privilege,object) является уникальным ключом с условием object IS NOT NULL.

ПРИМЕЧАНИЕ

"Параметризованное" объектно-привязанное отношение "роль-привилегия" определяет доступ только к одному объекту (через указание object). При необходимости выдать доступ на N объектов будет создано N записей в role_privileges.

Таблица users

Таблица не имеет полей, имеющих отношение к RBAC.

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

Таблица user_roles

Таблица устанавливает отношения между пользователем и ролями и имеет следующие поля:

  • id — уникальный идентификатор отношения.
  • user — указывает на идентификатор пользователя.
  • role — указывает на идентификатор роли.
  • object — указывает на уникальный идентификатор объекта произвольного класса.

Класс объекта определяется по значению поля privileges.class. Объявленный здесь идентификатор объекта ограничивает действие привилегии, указанной в role_privileges.privilege, одним объектом и разрешает доступ к объекту пользователю, указанному в user_roles.user.

ПРИМЕЧАНИЕ

"Параметризованное" объектно-привязанное отношение "пользователь-роль" определяет доступ только к одному объекту (через указание object). При необходимости выдать доступ на N объектов будет создано N записей в user_roles.

Представление user_privileges

Предлагает удобный способ определения, какие роли и привилегии есть у пользователей. Представление используется для упрощения проверки привилегий у субъекта-пользователя:

  • user — user_roles.user
  • role — user_roles.role
  • privilege — privilege.name
  • object — user_roles.objects или role_privileges.object
Таблица groups

Таблица не имеет полей, имеющих отношение к RBAC.

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

Таблица group_roles

Таблица устанавливает отношения между группами и ролями и имеет следующие поля:

  • group_id — указывает на идентификатор группы.
  • role_id — указывает на идентификатор роли.
  • object — указывает на уникальный идентификатор объекта произвольного класса.

Класс объекта определяется по значению поля privileges.class. Объявленный здесь идентификатор объекта ограничивает действие привилегии указанной в role_privileges.privilege одним объектом и разрешает доступ к объекту пользователю, указанному в group_roles.role_id.

ПРИМЕЧАНИЕ

"Параметризованное" объектно-привязанное отношение "группа-роль" определяет доступ только к одному объекту (через указание object). При необходимости выдать доступ на N объектов будет создано N записей в group_roles.

Таблица group_users

Таблица устанавливает отношения между группами и пользователями и имеет следующие поля:

  • group_id — указывает на идентификатор группы.
  • user_id — указывает на идентификатор пользователя.

Отношения "группа-пользователь" не имеют объектных привязок.

Объектно-связанные роли

В общем случае предполагается, что роли могут включать в себя привилегии, которые разрешают доступ ко всем объектам любого класса.

Для еще большей гранулярности выдачи прав доступа вместе с классом можно указать и идентификатор объекта в role_privileges.object. Так, действие роли и привилегии будет распространяться только на объект с указанным идентификатором. Объект можно указать в нескольких местах:

  • для роли в role_privileges.object, тогда все члены роли смогут получить доступ к объекту;
  • для пользователя в user_roles.object, тогда доступ будет предоставлен только для одного пользователя;
  • для группы в group_roles.object, тогда доступ будет предоставлен только для пользователей группы.

Проверка прав доступа у субъекта

В процессе аутентификации субъекта выполняется создание сеанса и создание сессионных JWT-токенов. При создании access-токена в него вкладывается user_id. Пользователь, выполняя запросы на выполнение операций, прикладывает access-токен в заголовки запроса. Менеджер выполняет авторизацию, извлекает из access-токена user_id пользователя и через роли проверяет наличие необходимой привилегии. Если привилегия доступна, то доступ разрешается, если привилегии нет, запрос отклоняется.

Более подробно:

Для проверки, что субъект имеет право доступа на выполнение операции над объектом нужны:

  • user_id или agent_id — идентификатор пользователя или агента;
  • class — имя класса для объекта (по сути это тип ресурса);
  • object — идентификатор объекта (опционально).

Клиент в запросе указывает заголовок Authorization: Bearer и прикладывает access-токен.

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

  • Значение user_id (или agent_id) извлекается из access-токена.
  • Значение class определяется на основе привилегии.
  • Значения object:
    • для GET-запросов вида /resources извлекается из URL пути и параметров запроса (ids=?);
    • для GET-запросов вида /resources/objectID извлекается из URL пути;
    • для PUT-запросов извлекается из тела запроса;
    • для DELETE-запросов вида /resources извлекается из тела запросов (отдельное поле в объекте).

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

Проверка выполняется через репозиторий и представление user_privileges.

Особенности и ограничения

Использование средств, усиливающих безопасность и добавляющих дополнительные уровни ограничений, могут нарушить работу некоторых функций PPEM. Нормальная работа PPEM при использовании таких средств не гарантируется и не рекомендуется. К таким средствам относятся:

Что нового

В этом разделе содержатся основные сведения о выпусках PPEM, а также изменениях и улучшениях функциональности.

Инструкции и рекомендации по миграции можно найти в разделе Обновление и миграция.

Подробнее о версиях PPEM читайте в разделах:

Что нового в PPEM 2.1

Дата выпуска: 15 апреля 2025

Инструкции и рекомендации по миграции можно найти в разделе Обновление на версию PPEM 2.1.

В версии PPEM 2.1 были реализованы следующие обновления функциональности:

  • Работа с кластерами репликации и интеграция с менеджером отказоустойчивости BiHA

    Добавлена возможность работы с кластерами потоковой репликации. Теперь в интерфейсе PPEM доступно создание кластера из существующего экземпляра и его отображение в соответствующем разделе интерфейса. В PPEM 2.1 сделан первый шаг в сторону полноценной поддержки BiHA кластеров. В новой версии поддержано отображение уже существующих кластеров BiHA, а также предоставлена функциональная возможность удалять узлы из существующего кластера.

  • Управление источниками данных

    В разделе ИнфраструктураИсточники данных веб-приложения PPEM теперь доступна возможность создания внешних хранилищ для метрик и журналов сообщений, собираемых с помощью pgpro-otel-collector. В качестве внешнего хранилища метрик в интерфейсе PPEM поддерживается подключение к системе Prometheus, а для хранения журналов сообщений — к системе Elasticsearch. Хранение метрик и журналов сообщений во внешнем хранилище является предпочтительным, так как разгружает служебный репозиторий PPEM от хранения дополнительных данных и избавляет DBA от необходимости дополнительного масштабирования и пристального контроля за служебным репозиторием PPEM. Внешние хранилища специально предназначены для решения задачи хранения большого объема данных определенного типа, а также могут масштабироваться и управляться независимо от PPEM.

    Подробнее о настройке интеграции читайте в разделе Интеграция с внешними источниками данных.

  • Пользовательские SQL-метрики

    Добавлена возможность создания и просмотра пользовательских SQL-метрик на основе статистик планирования и выполнения SQL–операторов, собираемых расширением pgpro_stats. В режиме создания и редактирования SQL-метрики пользователь может выбрать конкретную базу данных, пользователя, от которого будет выполнен запрос, и задать интервал сбора метрики. Список созданных метрик будет отображен на странице, а просмотр значения метрики доступен по клику на имя метрики.

  • Обновление панели навигации

    Панель навигации переработана с учётом пользовательского опыта инфраструктурных и прикладных DBA. Теперь страницы, преимущественно предназначенные для работы с задачами инфраструктурных DBA, сгруппированы в отдельный раздел "Инфраструктура", а раздел "Базы данных", преимущественно предназначенный для прикладных DBA, выведен на первый уровень панели навигации для удобного и быстрого доступа к списку баз данных.

  • Проверка целостности каталога данных экземпляра

    Добавлена возможность проверки каталога данных экземпляра с помощью команды checkdb, доступной в составе команд расширения pg_probackup. Эта команда выполняет физическую проверку всех файлов данных в каталоге данных, проводя проверки целостности заголовков страниц, а также проверяя контрольные суммы на уровне блоков.

  • Добавление роли "Пользователь консоли"

    Для гибкого управления доступом к web-консоли psql, в версии PPEM 2.1 добавлена роль "Пользователь консоли". Теперь только пользователи PPEM, имеющие соответствующую роль, могут обращаться к консоли psql из интерфейса PPEM для проведения операций над базами данных.

  • Установка и работа с расширениями

    Добавлена возможность установки и работы с расширениями Postgres Pro из интерфейса PPEM. В панели навигации экземпляра СУБД доступен новый раздел "Расширения", в котором отображается список установленных расширений с возможностью их удаления, а также блок "Установка расширения", в котором можно устанавливать расширения для конкретной базы данных.

Что нового в PPEM 2.0

Дата выпуска: 19 февраля 2025

Инструкции и рекомендации по миграции можно найти в разделе Обновление на версию PPEM 2.0.

В версии PPEM 2.0 были реализованы следующие обновления функциональности:

  • Миграция на Golang

    Выполнена миграция компонентов менеджера и агента на Golang для улучшения возможностей производительности, масштабируемости и расширяемости в условиях растущей нагрузки и количества обслуживаемых систем. Новый менеджер способен обслуживать большее количество агентов, используя при этом меньшее количество памяти и вычислительных ресурсов процессора. Новые агенты в повседневной работе также используют меньшее количество памяти и вычислительных ресурсов.

  • Автоматическое обнаружение ресурсов

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

  • Интеграция с pgpro-otel-collector

    Postgres Pro OpenTelemetry Collector предназначен для сбора метрик и журналов активности с экземпляров СУБД и их отправки в системы мониторинга. PPEM теперь интегрируется с Postgres Pro OpenTelemetry Collector и может использовать метрики, собранные коллектором, для задач мониторинга. Интеграция может выполняться двумя способами:

    • Первый способ заключается в способности PPEM принимать метрики и журналы от коллектора по протоколу OTLP и хранить их во внутренней базе данных репозитория.
    • Второй способ заключается в интеграции с внешними системами хранения журналов и метрик и возможности брать оттуда данные для мониторинга. Способ интеграции через внешние хранилища позволяет PPEM встраиваться в инфраструктуру мониторинга и использовать ее в собственных функциях мониторинга.

    Подробнее читайте в разделе Архитектура мониторинга.

  • Редизайн API

    Проведен редизайн API и выполнены первые шаги в сторону его публикации для широкого использования. Интерфейс API организован в формате REST и позволяет в привычном для многих разработчиков стиле работать с ресурсами PPEM: создавать новые, просматривать существующие или даже редактировать их и удалять. В будущем публикация API позволит встраивать PPEM в системы автоматизации и улучшать возможности автоматизированных средств для обслуживания инфраструктур СУБД.

Быстрый старт

В этом разделе описано, как установить PPEM на сервере в соответствии со схемой развёртывания «всё-в-одном» (all-in-one). В результате выполнения приведённых инструкций вы протестируете процесс установки и получите минимальную работоспособную версию PPEM для демонстрационных целей.

При выполнении команд, приведённых в этом разделе, обратите внимание на следующие особенности:

  • Приведены команды для операционной системы Debian Linux. При использовании другой версии операционной системы используйте соответствующие команды.
  • В командах указаны стандартные имена для объектов, например ppem для базы данных репозитория. При необходимости можно указать другие имена.

Процесс установки состоит из следующих этапов:

  1. Убедитесь, что выполнены предварительные требования.
  2. Настройте менеджер.
  3. Настройте агент.

PPEM будет установлен. Вы можете обновить страницу браузера с веб-приложением и начать работу.

Предварительные требования

Перед началом установки прочитайте следующую информацию и выполните необходимые действия:

  1. Подготовьте сервер, на котором будет установлен PPEM, в соответствии с аппаратными и программными требованиями.

  2. Установите на сервере экземпляр СУБД Postgres Pro. За подробной информацией по установке обратитесь к официальной документации Postgres Pro.

  3. Запустите новый сеанс от имени суперпользователя:

    $ sudo -s

Настройте менеджер

Чтобы настроить менеджер, выполните следующие действия:

  1. Установите репозиторий:

    # wget -O pgpro-repo-add.sh https://repo.postgrespro.ru/ppem/ppem/keys/pgpro-repo-add.sh
    # sh pgpro-repo-add.sh
  2. Установите менеджер:

    # apt install ppem ppem-gui

    На ваше локальное устройство скачается конфигурационный файл менеджера ppem-manager.yml.

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

    # sudo -u postgres createuser --pwprompt ppem

    При выполнении команды укажите пароль для пользователя СУБД.

  4. Создайте базу данных репозитория:

    # sudo -u postgres createdb -O ppem ppem
  5. Убедитесь, что пользователь СУБД может подключиться к базе данных:

    # psql -h localhost -U ppem -d ppem

    При возникновении проблем с подключением убедитесь, что в конфигурационный файл pg_hba.conf добавлено HBA-правило, разрешающее пользователю СУБД подключаться к базе данных, а также указан метод авторизации. За более подробной информацией обратитесь к официальной документации Postgres Pro по конфигурационному файлу pg_hba.conf.

  6. В конфигурационном файле менеджера ppem-manager.yml выполните следующие действия:

    • Укажите имя базы данных репозитория с помощью параметра repo.name:

      repo:
        name: "ppem"
    • Укажите имя и пароль пользователя СУБД с помощью параметров repo.user и repo.password:

      repo:
        user: "ppem"
        password: "<пароль_пользователя_СУБД>"
    • Укажите URL для подключения менеджера к базе данных репозитория с помощью параметра repo.url:

      repo:
        url: "postgres://ppem:<пароль_пользователя_СУБД>@localhost/ppem"

      За подробной информацией о формате URL обратитесь к официальной документации Postgres Pro по строкам параметров подключения.

  7. Запустите службу менеджера и добавьте её в автозагрузку:

    # systemctl start ppem
    # systemctl enable ppem

На сервере будет развёрнуто веб-приложение.

Настройте агент

Чтобы настроить агент, выполните следующие действия:

  1. Установите агент:

    # apt install ppem-agent

    На ваше локальное устройство скачается конфигурационный файл агента ppem-agent.yml.

  2. Создайте пользователя СУБД, от имени которого агент будет подключаться к базе данных репозитория:

    # sudo -u postgres createuser -s --pwprompt ppem_agent

    При выполнении команды укажите пароль для пользователя СУБД.

  3. Убедитесь, что пользователь СУБД может подключиться к базе данных репозитория:

    # psql -h localhost -U ppem_agent -d ppem

    При возникновении проблем с подключением убедитесь, что в конфигурационный файл pg_hba.conf добавлено HBA-правило, разрешающее пользователю СУБД подключаться к базе данных, а также указан метод авторизации. За более подробной информацией обратитесь к официальной документации Postgres Pro по конфигурационному файлу pg_hba.conf.

  4. Получите API-ключ для настройки агента, выполнив следующие действия:

    1. Войдите в веб-приложение.
    2. Скопируйте API-ключ из отобразившейся инструкции по установке агентов и сохраните его.
  5. Укажите параметры агента в конфигурационном файле ppem-agent.yml:

    • agent.name: уникальное имя агента.
    • agent.manager.url: URL для подключения агента к менеджеру в формате <схема>://<веб-адрес_менеджера>/<путь_к_версии_API>.
    • agent.manager.api_key: ранее полученный API-ключ для подключения агента к менеджеру.
    • agent.instance.connection_defaults.user и agent.instance.connection_defaults.password: имя и пароль пользователя СУБД.
    • http.server.address и http.server.port: сетевой адрес и номер порта для входящих сетевых подключений. Чтобы включить прослушивание всех сетевых адресов и портов, не указывайте значения для этих параметров.

    Пример конфигурационного файла ppem-agent.yml:

    agent:
      name: "local"
      manager:
        url: "https://ppem.example.org/v1"
        api_key: "741c5c39-3ac9-402f-aeba-e2fa05bd3037"
      instance:
        connection_defaults:
          user: "ppem_agent"
          password: "<пароль пользователя СУБД>"
    http:
      server:
        address: "192.0.2.1"
        port: "80"
  6. Запустите службу агента и добавьте её в автозагрузку:

    # systemctl start ppem-agent
    # systemctl enable ppem-agent

Установка и настройка

В этом разделе описано, как произвести изначальную установку и настройку PPEM, и приведены следующие инструкции:

Рекомендуется предварительно ознакомиться с разделом Быстрый старт.

Установка в средах с усиленными мерами безопасности

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

При выполнении команд, приведённых в этом разделе, обратите внимание на следующие особенности:

  • Приведены команды для операционной системы Debian Linux. При использовании другой версии операционной системы используйте соответствующие команды.
  • В командах указаны стандартные имена для объектов, например ppem для базы данных репозитория. При необходимости можно указать другие имена.

Процесс установки состоит из следующих этапов:

  1. Убедитесь, что выполнены предварительные требования.
  2. Создайте пользователей операционной системы.
  3. Настройте менеджер.
  4. Настройте агенты.

PPEM будет установлен. Вы можете обновить страницу браузера с веб-приложением и начать работу.

Предварительные требования

Перед началом установки прочитайте следующую информацию и выполните необходимые действия:

  1. Подготовьте серверы, на которых будет установлен PPEM, в соответствии с аппаратными и программными требованиями. Потребуется как минимум один сервер.
  2. Установите экземпляр СУБД Postgres Pro как минимум на одном из серверов. За подробной информацией по установке обратитесь к официальной документации Postgres Pro.

Создайте пользователей операционной системы

Создайте отдельных пользователей операционной системы на всех серверах:

# useradd ppem

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

Настройте менеджер

Чтобы настроить менеджер, выполните следующие действия на сервере с экземпляром СУБД Postgres Pro:

  1. Установите репозиторий:

    # wget -O pgpro-repo-add.sh https://repo.postgrespro.ru/ppem/ppem/keys/pgpro-repo-add.sh
    # sh pgpro-repo-add.sh
  2. Установите менеджер:

    # apt install ppem ppem-gui

    На ваше локальное устройство скачается конфигурационный файл менеджера ppem-manager.yml.

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

    # sudo -u postgres createuser --pwprompt ppem

    При выполнении команды укажите пароль для пользователя СУБД.

  4. Создайте базу данных репозитория:

    # sudo -u postgres createdb -O ppem ppem
  5. Убедитесь, что пользователь СУБД может подключиться к базе данных:

    # psql -h localhost -U ppem -d ppem

    При возникновении проблем с подключением убедитесь, что в конфигурационный файл pg_hba.conf добавлено HBA-правило, разрешающее пользователю СУБД подключаться к базе данных, а также указан метод авторизации. За более подробной информацией обратитесь к официальной документации Postgres Pro по конфигурационному файлу pg_hba.conf.

  6. В конфигурационном файле менеджера ppem-manager.yml выполните следующие действия:

    • Укажите имя базы данных репозитория с помощью параметра repo.name:

      repo:
        name: "ppem"
    • Укажите имя и пароль пользователя СУБД с помощью параметров repo.user и repo.password:

      repo:
        user: "ppem"
        password: "<пароль_пользователя_СУБД>"
    • Укажите URL для подключения менеджера к базе данных репозитория с помощью параметра repo.url:

      repo:
        url: "postgres://ppem:<пароль_пользователя_СУБД>@localhost/ppem"

      За подробной информацией о формате URL обратитесь к официальной документации Postgres Pro по строкам параметров подключения.

  7. Настройте запуск службы менеджера от имени созданного пользователя операционной системы, выполнив следующие действия:

    1. Начните редактирование юнита systemd:

      # systemctl edit ppem
    2. В разделе [Service] укажите имя пользователя операционной системы:

    [Service]
    User=ppem
    1. Убедитесь, что пользователь операционной системы имеет право чтения конфигурационного файла менеджера ppem-manager.yml. Если право отсутствует, выполните следующие команды:
     # chown ppem:ppem /etc/ppem-manager.yml
     # chmod 400 /etc/ppem-manager.yml
    1. Сохраните параметры юнита systemd, после чего перезагрузите его:
     # systemctl daemon-reload
  8. Запустите службу менеджера и добавьте её в автозагрузку:

    # systemctl start ppem
    # systemctl enable ppem

На сервере будет установлено веб-приложение.

Настройте агенты

Чтобы настроить агенты, выполните следующие действия на всех серверах:

  1. Установите агент:

    # apt install ppem-agent

    На ваше локальное устройство скачается конфигурационный файл агента ppem-agent.yml.

  2. Создайте пользователя СУБД, от имени которого агент будет подключаться к базе данных репозитория:

    # sudo -u postgres createuser --pwprompt ppem_agent

    При выполнении команды укажите пароль для пользователя СУБД.

  3. Назначьте пользователю СУБД права на чтение системного каталога и запуск функций. Рекомендуется назначить следующие права:

    GRANT pg_monitor, pg_maintain, pg_signal_backend, pg_read_all_settings TO ppem_agent;

    Для каждой базы данных в экземпляре необходимо назначить следующие права:

    GRANT EXECUTE ON FUNCTION pg_catalog.pg_stat_file(TEXT) TO ppem_agent;
    GRANT EXECUTE ON FUNCTION pg_catalog.pg_stat_file(TEXT, BOOLEAN) TO ppem_agent;
    GRANT SELECT ON pg_catalog.pg_statistic TO ppem_agent;
    GRANT SELECT ON pg_catalog.pg_config TO ppem_agent;
    GRANT EXECUTE ON FUNCTION pg_catalog.pg_config() TO ppem_agent;
    GRANT SELECT ON pg_catalog.pg_file_settings TO ppem_agent;
    GRANT EXECUTE ON FUNCTION pg_catalog.pg_show_all_file_settings() TO ppem_agent;
    GRANT SELECT ON pg_catalog.pg_authid TO ppem_agent;

    Для резервного копирования с помощью pg_probackup необходимо назначить право REPLICATION и другие права:

    ALTER ROLE ppem_agent WITH REPLICATION;
    
    GRANT USAGE ON SCHEMA pg_catalog TO ppem_agent;
    GRANT EXECUTE ON FUNCTION pg_catalog.current_setting(text) TO ppem_agent;
    GRANT EXECUTE ON FUNCTION pg_catalog.set_config(text, text, boolean) TO ppem_agent;
    GRANT EXECUTE ON FUNCTION pg_catalog.pg_is_in_recovery() TO ppem_agent;
    GRANT EXECUTE ON FUNCTION pg_catalog.pg_backup_start(text, boolean) TO ppem_agent;
    GRANT EXECUTE ON FUNCTION pg_catalog.pg_backup_stop(boolean) TO ppem_agent;
    GRANT EXECUTE ON FUNCTION pg_catalog.pg_create_restore_point(text) TO ppem_agent;
    GRANT EXECUTE ON FUNCTION pg_catalog.pg_switch_wal() TO ppem_agent;
    GRANT EXECUTE ON FUNCTION pg_catalog.pg_last_wal_replay_lsn() TO ppem_agent;
    GRANT EXECUTE ON FUNCTION pg_catalog.txid_current() TO ppem_agent;
    GRANT EXECUTE ON FUNCTION pg_catalog.txid_current_snapshot() TO ppem_agent;
    GRANT EXECUTE ON FUNCTION pg_catalog.txid_snapshot_xmax(txid_snapshot) TO ppem_agent;
    GRANT EXECUTE ON FUNCTION pg_catalog.pg_control_checkpoint() TO ppem_agent;

    Права достаточно назначить для базы данных, которая будет использоваться при подключении пользователя к экземпляру. За подробной информацией о правах обратитесь к официальной документации Postgres Pro по pg_probackup.

  4. Убедитесь, что пользователь СУБД может подключиться к базе данных репозитория:

    # psql -h localhost -U ppem_agent -d ppem

    При возникновении проблем с подключением убедитесь, что в конфигурационный файл pg_hba.conf добавлено HBA-правило, разрешающее пользователю СУБД подключаться к базе данных, а также указан метод авторизации. За более подробной информацией обратитесь к официальной документации Postgres Pro по конфигурационному файлу pg_hba.conf.

  5. Получите API-ключ для настройки агента, выполнив следующие действия:

    1. Войдите в веб-приложение.
    2. Скопируйте API-ключ из отобразившейся инструкции по установке агентов и сохраните его.
  6. Укажите параметры агента в конфигурационном файле ppem-agent.yml:

    • agent.name: уникальное имя агента.
    • agent.manager.url: URL для подключения агента к менеджеру в формате <схема>://<веб-адрес_менеджера>/<путь_к_версии_API>.
    • agent.manager.api_key: ранее полученный API-ключ для подключения агента к менеджеру.
    • agent.instance.connection_defaults.user и agent.instance.connection_defaults.password: имя и пароль пользователя СУБД.
    • http.server.address и http.server.port: сетевой адрес сервера и номер порта для входящих сетевых подключений. Чтобы включить прослушивание всех сетевых адресов и портов, не указывайте значения для этих параметров.

    Пример конфигурационного файла ppem-agent.yml:

    agent:
      name: "local"
      manager:
        url: "https://ppem.example.org/v1"
        api_key: "741c5c39-3ac9-402f-aeba-e2fa05bd3037"
      instance:
        connection_defaults:
          user: "ppem_agent"
          password: "<пароль пользователя СУБД>"
    http:
      server:
        address: "192.0.2.1"
        port: "80"
  7. Назначьте созданному пользователю операционной системы права суперпользователя на работу с целевыми каталогами с помощью команд chown и chmod. Для запуска, остановки и перезапуска экземпляров пользователю операционной системы также рекомендуется назначить следующие права:

    Cmnd_Alias PG_SYS = \
        /usr/bin/systemctl status postgresql*.service, \
        /usr/bin/systemctl stop postgresql*.service, \
        /usr/bin/systemctl start postgresql*.service, \
        /usr/bin/systemctl restart postgresql*.service, \
        /usr/bin/systemctl reload postgresql*.service
    
    Cmnd_Alias PG_CTL = \
        /usr/lib/postgresql/17/bin/pg_ctl, \
        /usr/lib/postgresql/16/bin/pg_ctl
    
    ppem ALL = (root) NOPASSWD: PG_SYS
    ppem ALL = (postgres) NOPASSWD: PG_CTL
  8. Настройте запуск службы агента от имени пользователя операционной системы, выполнив следующие действия:

    1. Начните редактирование юнита systemd:

      # systemctl edit ppem-agent
    2. В разделе Service укажите пользователя операционной системы:

    [Service]
    User=ppem
    1. Убедитесь, что пользователь операционной системы имеет право чтения конфигурационного файла агента ppem-agent.yml. Если право отсутствует, выполните следующие команды:
     # chown ppem:ppem /etc/ppem-agent.yml
     # chmod 400 /etc/ppem-agent.yml
    1. Сохраните параметры юнита systemd, после чего перезагрузите его:

       # systemctl daemon-reload
  9. Запустите службу агента и добавьте её в автозагрузку:

    # systemctl start ppem-agent
    # systemctl enable ppem-agent

Установка в режиме высокой доступности

В этом разделе описан пример установки и настройки PPEM в режиме высокой доступности и отказоустойчивости.

В примере используется следующее ПО:

  • ОС Debian Linux 12
  • HAProxy 2.6.12 (входит в репозиторий Debian)
  • keepalived 2.2.7 (входи в репозиторий Debian)
  • Postgres Pro Enterprise 17.2.2 + BiHA (входит в пакет postgrespro-ent-17-contrib)

Описание архитектуры

Рекомендованная архитектура кластера PPEM высокой доступности содержит следующие компоненты:

  • Отказоустойчивый кластер на базе решения BiHA, доступного в Postgres Pro Enterprise 16 и выше. BiHA-кластер состоит из трёх и более серверов. В один момент времени один из серверов выступает в роли лидера. Менеджеры PPEM автоматически подключаются к серверу БД с этой ролью. В случае отказа лидера один из оставшихся серверов становится лидером автоматически.
  • Кластер серверов HAProxy + keepalived. На одном из серверов автоматически активируется виртуальный IP-адрес с помощью службы keepalived. Пользователи и агенты PPEM взаимодействуют с менеджерами PPEM через этот виртуальный IP-адрес. В случае отказа активного сервера с виртуальным IP один из оставшихся серверов поднимает виртуальный IP. HAProxy также балансирует HTTP-запросы клиентов на все доступные менеджеры PPEM. Чтобы запросы конкретного клиента попадали на тот же самый менеджер, используется функционал HAProxy "IP-based stickiness" или "cookie session stickiness". Этот компонент можно развёртывать как на отдельных серверах, так и на менеджерах PPEM.
  • Менеджер PPEM (два сервера или более). Все серверы работают в активном режиме.

Пример реализации рекомендованной архитектуры

Для реализации рекомендованной архитектуры понадобятся следующие компоненты:

КомпонентКоличествоМинимальные требования
Сервер PPEM Manager + HAProxy + keepalived22 CPU, 4 GB RAM, 20 GB HDD
Сервер Postgres Pro BiHA32 CPU, 4 GB RAM, 20 GB HDD
Виртуальный статичный IP-адрес1Адрес должен быть исключён из DHCP-пула. Дополнительно можно создать DNS A-запись для этого IP-адреса.

Порядок установки

  1. Установите Postgres Pro Enterprise с решением BiHA по инструкции.

  2. Чтобы обеспечить серверам PPEM доступ к СУБД, внесите изменения в файл pg_hba.conf.

    Пример конфигурации pg_hba.conf:

    # cat /var/lib/pgpro/ent-17/data/pg_hba.conf
    
    host    all     all     192.168.1.0/24      scram-sha-256
  3. Настройте менеджер PPEM.

    Необходимые параметры конфигурации менеджера:

    # cat /etc/ppem-manager.yml
    http:
      server:
        address: ''
        port: 8080
    repo:
      url: postgres://ppem:<пароль_пользователя_СУБД>@biha-server-1/ppem
      fallback_addresses:
        - biha-server-2
        - biha-server-3
      target_session_attrs: read-write

    Где:

    • http.server.port — порт менеджера PPEM. В терминах HAProxy — backend.
    • repo.url — адрес первого узла в BiHA-кластере.
    • fallback_addresses — адреса оставшихся узлов.

    Менеджер PPEM автоматически подключится к лидеру BiHA-кластера, так как только на нём выполнится условие атрибута сессии read-write.

  4. На серверах HAProxy установите haproxy, keepalived и необходимые инструменты:

    sudo apt-get install haproxy keepalived psmisc
  5. Настройте HAProxy в соответствии с нижеприведённым примером конфигурационного файла.

    В этом примере используется метод cookie-based persistence, который устанавливает пользователям cookie с именем сервера PPEM. Это необходимо, чтобы все запросы в рамках HTTP-сеанса попадали на один сервер менеджера PPEM.

    Пример конфигурации HAProxy в файле /etc/haproxy/haproxy.cfg:

    global
      log /dev/log  local0
      log /dev/log  local1 notice
      stats socket /var/lib/haproxy/stats level admin
      chroot /var/lib/haproxy
      user haproxy
      group haproxy
      daemon
    
    defaults
      log global
      mode  http
      option  httplog
      option  dontlognull
      timeout connect 5000
      timeout client 50000
      timeout server 50000
      errorfile 400 /etc/haproxy/errors/400.http
      errorfile 403 /etc/haproxy/errors/403.http
      errorfile 408 /etc/haproxy/errors/408.http
      errorfile 500 /etc/haproxy/errors/500.http
      errorfile 502 /etc/haproxy/errors/502.http
      errorfile 503 /etc/haproxy/errors/503.http
      errorfile 504 /etc/haproxy/errors/504.http
    
    frontend hafrontend
      bind *:80
      mode http
      default_backend habackend
    
    backend habackend
      mode http
      balance roundrobin
      option forwardfor
      option httpchk
      http-check send meth HEAD uri /
      cookie SERVERID insert indirect
      server ppem-server-1 <адрес_сервера_PPEM-1>:8080 cookie ppem-server-1 check
      server ppem-server-2 <адрес_сервера_PPEM-2>:8080 cookie ppem-server-2 check
  6. Настройте keepalived в соответствии с нижеприведённым примером.

    Пример конфигурации сервера HAProxy-1 в файле /etc/keepalived/keepalived.conf:

    global_defs {
      enable_script_security
    }
    
    vrrp_script chk_haproxy {
      script "/usr/bin/killall -0 haproxy"
      interval 3
      fall 2
      rise 3
      timeout 3
      user root
    }
    
    vrrp_instance internal {
      interface <интерфейс>
      state MASTER
      virtual_router_id 124
      priority 100
    
      unicast_src_ip <IP-адрес_сервера_HAproxy-1>
      unicast_peer {
        <IP-адрес_сервера_HAproxy-2>
      }
      virtual_ipaddress {
        <виртуальный_IP-адрес>/<класс_подсети (например 16 или 24)> dev <интерфейс>
      }
      track_script {
        chk_haproxy
      }
    }

    На сервере HAProxy-2 конфигурация идентичная, только IP-адреса в unicast_src_ip и unicast_peer меняются местами.

  7. На всех серверах BiHA настройте агенты PPEM.

    ВАЖНО!

    На серверах PPEM агенты настраивать не нужно.

    Подключение к менеджеру PPEM должно быть настроено через виртуальный IP.

    Необходимые параметры конфигурации агента:

    cat /etc/ppem-agent.yml
    
    agent:
      manager:
        url: http://<виртуальный_IP-адрес>:80/v1

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

Убедитесь, что:

  • База данных PPEM BiHA-кластера доступна на серверах PPEM.

  • systemd-сервис ppem запущен на всех серверах PPEM.

    systemctl status ppem
  • Веб-приложение PPEM доступно на всех серверах PPEM на порту 8080:

    curl http://<IP-адрес_сервера_PPEM>:8080
  • Сервисы haproxy и keepalived запущены на всех серверах PPEM:

    systemctl status haproxy
    systemctl status keepalived
  • Веб-приложение PPEM доступно на всех серверах PPEM на порту 80 (через haproxy):

    curl http://<IP-адрес_сервера_PPEM>:80
  • Веб-приложение PPEM доступно через виртуальный IP-адрес:

    curl http://<виртуальный_IP-адрес>:80

Установка и настройка средств резервного копирования и восстановления

Резервное копирование осуществляется в PPEM посредством pg_probackup. Вам нужно установить pg_probackup вручную на всех серверах. Версия pg_probackup должна соответствовать версии экземпляров СУБД.

За подробной информацией об установке обратитесь к официальной документации Postgres Pro по pg_probackup для Postgres Pro Standard или Postgres Pro Enterprise. Доступные в PPEM возможности резервного копирования зависят от установленной редакции pg_probackup.

Также рекомендуется ознакомиться с примером установки pg_probackup с помощью пакетного менеджера APT (для Debian-совместимых операционных систем).

После установки pg_probackup агент автоматически найдёт его и сообщит об этом менеджеру. Затем на сервере станет доступно резервное копирование.

Установленный pg_probackup рекомендуется настроить. Процесс настройки состоит из следующих этапов:

  1. Настройте пользователей СУБД.
  2. Настройте потоковое резервное копирование.
  3. Настройте непрерывное архивирование WAL.

Настройте пользователей СУБД

Создайте отдельных пользователей СУБД на всех серверах и назначьте им права для резервного копирования с помощью pg_probackup. За подробной информацией обратитесь к официальной документации Postgres Pro по настройке кластера баз данных для Postgres Pro Standard или Postgres Pro Enterprise.

Настройте потоковое резервное копирование

Настройте потоковое резервное копирование на всех серверах. За подробной информацией обратитесь к официальной документации Postgres Pro по настройке потокового резервного копирования для Postgres Pro Standard или Postgres Pro Enterprise.

Настройте непрерывное архивирование WAL

Настройте непрерывное архивирование WAL на всех серверах для обеспечения восстановления на определённый момент времени (PITR). Это можно сделать одним из следующих способов:

Пример установки pg_probackup с помощью APT

В этом разделе приведён пример установки pg_probackup на сервере с экземпляром СУБД и PPEM. Рекомендуется предварительно ознакомиться с разделом Установка и настройка средств резервного копирования и восстановления.

Процесс установки состоит из следующих этапов:

  1. Запустите новый сеанс от имени суперпользователя:

    $ sudo -s
  2. Добавьте ключ GPG для репозитория pg_probackup. Для этого может потребоваться установка дополнительных утилит:

    # apt install gpg wget
    # wget -qO - https://repo.postgrespro.ru/pg_probackup/keys/GPG-KEY-PG-PROBACKUP | \
    # tee /etc/apt/trusted.gpg.d/pg_probackup.asc
  3. Настройте репозиторий пакетов:

    # . /etc/os-release
    # echo "deb [arch=amd64] https://repo.postgrespro.ru/pg_probackup/deb $VERSION_CODENAME  main-$VERSION_CODENAME " | tee /etc/apt/sources.list.d/pg_probackup.list
  4. Обновите метаданные менеджера пакетов, чтобы пакеты pg_probackup были доступны для просмотра и установки:

    # apt update
    # apt search pg_probackup
  5. Установите pg_probackup:

    # apt install pg-probackup-16

    Версия pg_probackup должна соответствовать версии экземпляра. В этом примере используется версия 16.

После установки pg_probackup агент автоматически найдёт его и сообщит об этом менеджеру. Затем на сервере станет доступно резервное копирование.

Установка и настройка средств журналирования и мониторинга

Журналирование экземпляров СУБД и работа с их метриками осуществляется в PPEM с помощью pgpro-otel-collector. Необходимо установить pgpro-otel-collector вручную на всех серверах. За подробной информацией обратитесь к официальной документации Postgres Pro по установке pgpro-otel-collector.

Установленный pgpro-otel-collector необходимо настроить. Процесс настройки состоит из следующих этапов:

  1. Настройте журналирование экземпляров.
  2. Настройте сбор журналов и метрик в pgpro-otel-collector.
  3. Настройте отправку журналов и метрик в PPEM или внешнее хранилище.

Настройте журналирование экземпляров

Настройте журналирование экземпляров. За подробной информацией обратитесь к официальной документации Postgres Pro по конфигурации сервера для Postgres Pro Standard или Postgres Pro Enterprise. Необходимо убедиться, что указаны значения для следующих параметров:

  • logging_collector
  • log_destination
  • log_directory
  • log_filename

Журналирование экземпляров должно вестись в формате CSV или JSON.

Настройте сбор журналов и метрик в pgpro-otel-collector

Настройте pgpro-otel-collector на сбор журналов и метрик экземпляров. За подробной информацией обратитесь к официальной документации Postgres Pro по настройке работы с журналами, а также настройке работы с метриками для pgpro-otel-collector.

Настройте отправку журналов и метрик в PPEM или внешнее хранилище

Настройте pgpro-otel-collector на отправку журналов и метрик экземпляров в PPEM или внешнее хранилище. За подробной информацией обратитесь к официальной документации Postgres Pro по интеграции pgpro-otel-collector c PPEM.

ПРИМЕЧАНИЕ

Локальные хранилища предназначены для ознакомления c PPEM. В эксплуатационной среде с большим количеством экземпляров и производимых метрик рекомендуется использовать отдельные внешние хранилища.

Интеграция с внешними источниками данных

В этом разделе описаны варианты интеграции со следующими внешними источниками данных:

За общей информацией об архитектуре мониторинга обратитесь к разделу Архитектура мониторинга.

ПРИМЕЧАНИЕ

В примерах конфигураций используются различные вымышленные имена сервисов:

  • example.org — основной домен
  • prometheus.example.org — сервис системы мониторинга Prometheus
  • elasticsearch.example.org — сервис системы мониторинга Elasticsearch
  • elasticsearch-apm.example.org — сервис APM системы мониторинга Elasticsearch
  • postgresql-01.example.org — сервис СУБД PostgreSQL

Интеграция с Prometheus

Интеграция с внешними источниками данных Prometheus используется для возможности чтения метрик, записываемых туда утилитой pgpro-otel-collector.

ПРИМЕЧАНИЕ

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

Архитектура

Интеграция включает в себя следующие компоненты:

  • pgpro-otel-collector — агент мониторинга. Выполняет следующие функции:
    • сбор статистики с экземпляров СУБД Postgres Pro и преобразование в метрики;
    • публикация метрик для их дальнейшего сбора системой мониторинга Prometheus.
  • Prometheus — система мониторинга. Выполняет следующие функции:
    • собирает метрики с агентов мониторинга pgpro-otel-collector;
    • хранит метрики с агентов мониторинга (согласно внутренним настройкам хранения);
    • предоставляет HTTP-интерфейс для получения метрик.
  • PPEM — система Postgres Pro Enterprise Manager. Выполняет следующие функции
    • обращается к системе мониторинга Prometheus для получения метрик экземпляров СУБД;
    • на основе метрик предоставляет пользователю интерфейс мониторинга (в виде графиков).

Настройка pgpro-otel-collector

  1. Включите и настройте ресиверы postgrespro и hostmetrics:

    receivers:
      hostmetrics:
        initial_delay: 1s
        collection_interval: 60s
        scrapers:
          cpu:
            metrics:
              system.cpu.utilization:
                enabled: true
          disk: null
          filesystem: null
          load: null
          memory: null
          network: null
          paging: null
          processes: null
      postgrespro:
        max_threads: 3
        initial_delay: 1s
        collection_interval: 60s
        transport: tcp
        endpoint: localhost:5432
        database: postgres
        username: postgres
        password: ${env:POSTGRESQL_PASSWORD}
        plugins:
          activity:
            enabled: true
          archiver:
            enabled: true
          bgwriter:
            enabled: true
          cache:
            enabled: true
          databases:
            enabled: true
          io:
            enabled: true
          locks:
            enabled: true
          version:
            enabled: true
          wal:
            enabled: true
  2. Настройте публикацию метрик через prometheusexporter и настройте конвейер.

    PPEM ожидает, что метрики, передаваемые от pgpro-otel-collector, будут иметь метку (лэйбл) instance с полным именем (FQDN) узла и номером порта экземпляра СУБД, разделенными двоеточием, например postgresql_activity_connections{instance="postgresql-01.example.org:5432"}

    Пример конфигурации:

    exporters:
      prometheus:
        const_labels:
          instance: postgresql-01.example.org:5432
        endpoint: :8889
        send_timestamps: true
    
    service:
      extensions: []
      pipelines:
        metrics:
          exporters:
          - prometheus
          receivers:
          - postgrespro
          - hostmetrics
  3. Запустите коллектор и проверьте публикацию метрик на стороне коллектора:

    systemctl start pgpro-otel-collector
    
    systemctl status pgpro-otel-collector
    ● pgpro-otel-collector.service - PostgresPro OpenTelemetry Collector
         Loaded: loaded (/lib/systemd/system/pgpro-otel-collector.service; enabled; preset: enabled)
         Active: active (running) since Thu 2025-03-20 01:18:08 MSK; 4h 13min ago
       Main PID: 6991 (pgpro-otel-coll)
          Tasks: 8 (limit: 3512)
         Memory: 119.3M
            CPU: 2min 49.311s
         CGroup: /system.slice/pgpro-otel-collector.service
                 └─6991 /usr/bin/pgpro-otel-collector --config /etc/pgpro-otel-collector/basic.yml
    
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"info","ts":1742422688.366656,"msg":"Setting up own telemetry..."}
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"info","ts":1742422688.367178,"msg":"Skipped telemetry setup."}
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"info","ts":1742422688.3679142,"msg":"Development component. May change in the future.","kind":"receiver","name":"postgrespro","data_type":"metrics"}
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"warn","ts":1742422688.3494158,"caller":"[email protected]/provider.go:59","msg":"Configuration references unset environment variable","name":"POSTGRESQL_P>
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"info","ts":1742422688.4481084,"msg":"Starting pgpro-otel-collector...","Version":"v0.3.1","NumCPU":1}
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"info","ts":1742422688.4481149,"msg":"Starting extensions..."}
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"warn","ts":1742422688.4483361,"msg":"Using the 0.0.0.0 address exposes this server to every network interface, which may facilitate Denial of Service attack>
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"info","ts":1742422688.4515307,"msg":"Starting stanza receiver","kind":"receiver","name":"filelog","data_type":"logs"}
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"info","ts":1742422688.451749,"msg":"Everything is ready. Begin running and processing data."}
    
    curl -s 127.0.0.1:8889/metrics |grep -c postgres
    4254

Настройка Prometheus

Сбор метрик с pgpro-otel-collector на стороне Prometheus может быть настроен разными способами. Один из вариантов — это сбор через статическую конфигурацию:

- job_name: pgpro-otel-collector
  static_configs:
    targets:
    - postgresql-01.example.org:8889/metrics

Для получения информации о других методах и способах сбора обратитесь к документации Prometheus.

Дополнительная настройка Prometheus для нужд PPEM не требуется.

Настройка агента PPEM

Дополнительная настройка агента PPEM не требуется.

Проверка наличия метрик в Prometheus

После того, как сбор метрик с pgpro-otel-collector настроен, убедитесь, что метрики попадают в систему мониторинга. Для проверки можно воспользоваться встроенным графическим инструментом Expression Browser или утилитой promtool из поставки Prometheus.

Пример проверки с помощью утилиты promtool:

promtool query instant https://prometheus.example.org 'postgresql_activity_connections{instance="postgresql-01.example.org:5432"}'

Где

Пример ответа:

postgresql_activity_connections{database="postgres", instance="postgresql-01.example.org:5432", job="pgpro-otel-collector", state="active", user="postgres"} 5
postgresql_activity_connections{database="postgres", instance="postgresql-01.example.org:5432", job="pgpro-otel-collector", state="idle", user="postgres"} 10

Настройка источника данных метрик в веб-приложении PPEM

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураИсточники данныхХранилища метрик.

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

  3. Укажите параметры хранилища (помеченные звёздочкой параметры являются обязательными):

    • Название: произвольное имя, например Prometheus.
    • URL-адрес: адрес подключения к Prometheus, например https://prometheus.example.org/select/0/prometheus.
    • Пользователь: имя пользователя, если используется авторизация.
    • Пароль: пароль пользователя, если используется авторизация.
    • Описание: произвольное описание.
    • Сделать источником данных по умолчанию: отметьте, чтобы использовать это хранилище по умолчанию для любых запросов к метрикам.

Новое хранилище появится в таблице Хранилища метрик.

Проверка

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингМетрики.

  2. В правом верхнем углу страницы из списка выберите экземпляр, для которого в хранилище есть метрики.

    На странице отобразятся графики.

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

Интеграция с Elasticsearch и APM

Интеграция с внешними источниками данных Elasticsearch используется для возможности чтения журналов, записываемых туда утилитой pgpro-otel-collector.

Архитектура

Интеграция включает в себя следующие компоненты:

  • pgpro-otel-collector — агент мониторинга. Выполняет следующие функции:
    • сбор журналов активности с экземпляров СУБД Postgres Pro;
    • передача журналов активности в систему APM Elasticsearch.
  • APM Elasticsearch — система мониторинга производительности приложений на основе Elastic Stack. Выполняет следующие функции:
    • принимает данные от агента мониторинга и преобразует их в формат документа ES;
    • отправляет преобразованные данные в Elasticsearch.
  • Elasticsearch — система хранения журналов активности. Выполняет следующие функции:
    • принимает журналы активности от системы мониторинга производительности приложений;
    • хранит журналы активности согласно внутренним настройкам хранения;
    • предоставляет интерфейс для получения журналов активности.
  • PPEM — система Postgres Pro Enterprise Manager. Выполняет следующие функции
    • обращается к системе Elasticsearch для получения журналов активности экземпляров СУБД;
    • на основе журналов активности предоставляет пользователю интерфейс мониторинга в виде текстовых данных.

Настройка Elasticsearch

Для передачи журналов в Elasticsearch выполните следующие действия:

  1. Установите Elasticsearch APM server по стандартной документации.

  2. Выполните интеграцию Elasticsearch APM server с Elasticsearch по стандартной документации.

  3. Настройте pgpro-otel-collector ingest pipeline.

    Это необходимо для совместимости полей документов (журналов) со схемой именования полей Elasticsearch Common Schema (ECS).

    Пример настройки pipeline (оба запроса следует последовательно выполнить в Kibana Developer Tools):

    PUT _ingest/pipeline/postgrespro-otelcol-enrich-logs
    {
      "description": "Enrich PostgresPro Otel collector logs",
      "processors": [
        {
          "rename": {
            "if": "ctx?.labels?.message != null",
            "field": "labels.message",
            "target_field": "message",
            "ignore_failure": true,
            "ignore_missing": false,
            "override": true
          }
        },
        {
          "rename": {
            "if": "ctx?.numeric_labels?.pid != null",
            "field": "numeric_labels.pid",
            "target_field": "process.pid",
            "ignore_failure": true,
            "ignore_missing": false,
            "override": true
          }
        },
        {
          "rename": {
            "if": "ctx?.labels?.error_severity != null",
            "field": "labels.error_severity",
            "target_field": "log.level",
            "ignore_failure": true,
            "ignore_missing": false,
            "override": true
          }
        },
        {
          "rename": {
            "if": "ctx?.labels?.user != null",
            "field": "labels.user",
            "target_field": "user.name",
            "ignore_failure": true,
            "ignore_missing": false,
            "override": true
          }
        },
        {
          "rename": {
            "if": "ctx?.labels?.session_start != null",
            "field": "labels.session_start",
            "target_field": "session.start_time",
            "ignore_failure": true,
            "ignore_missing": false,
            "override": true
          }
        },
        {
          "rename": {
            "if": "ctx?.labels?.session_id != null",
            "field": "labels.session_id",
            "target_field": "session.id",
            "ignore_failure": true,
            "ignore_missing": false,
            "override": true
          }
        },
        {
          "rename": {
            "if": "ctx?.numeric_labels?.tx_id != null",
            "field": "numeric_labels.tx_id",
            "target_field": "transaction.id",
            "ignore_failure": true,
            "ignore_missing": false,
            "override": true
          }
        },
        {
          "rename": {
            "if": "ctx?.labels?.log_file_name != null",
            "field": "labels.log_file_name",
            "target_field": "log.file.path",
            "ignore_failure": true,
            "ignore_missing": false,
            "override": true
          }
        },
        {
          "rename": {
            "if": "ctx?.labels?.dbname != null",
            "field": "labels.dbname",
            "target_field": "db.name",
            "ignore_failure": true,
            "ignore_missing": false,
            "override": true
          }
        },
        {
          "gsub": {
            "if": "ctx?.service?.node?.name != null",
            "field": "service.node.name",
            "target_field": "host.name",
            "pattern": ":.+$",
            "replacement": "",
            "ignore_failure": true,
            "ignore_missing": false
          }
        },
        {
          "remove": {
            "field": [
              "observer.version",
              "observer.hostname",
              "service.language.name"
            ],
            "ignore_failure": true
          }
        },
        {
          "remove": {
            "field": "agent.version",
            "if": "ctx?.agent?.version == \"unknown\"",
            "ignore_failure": true
          }
        }
      ]
    }
    PUT _ingest/pipeline/logs-apm.app@custom
    {
      "processors": [
        {
          "pipeline": {
            "name": "postgrespro-otelcol-enrich-logs"
          }
        }
      ]
    }

Настройка pgpro-otel-collector

  1. Включите и настройте ресивер filelog.

    Пример настройки ресивера для сценария, когда журналы PostgreSQL формируются в формате JSON:

    receivers:
      filelog:
        include:
        - /var/log/postgresql/*.json
        operators:
        - parse_ints: true
          timestamp:
            layout: '%Y-%m-%d %H:%M:%S.%L %Z'
            layout_type: strptime
            parse_from: attributes.timestamp
          type: json_parser
        - field: attributes.timestamp
          type: remove
        retry_on_failure:
          enabled: true
          initial_interval: 1s
          max_elapsed_time: 5m
          max_interval: 30s
        start_at: end
  2. Настройте процессоры:

    processors:
      attributes/convert:
        actions:
        - action: convert
          converted_type: string
          key: query_id
      resource:
        attributes:
        - action: upsert
          key: service.name
          value: postgresql
        - action: upsert
          key: service.instance.id
          value: postgresql-01.example.org:5432

    Где:

    • обязательное поле service.name — ключ для именования потока данных (data stream) и как следствие индексов;
    • обязательное поле service.instance.id — ключ для идентификации экземпляра;
    • для журналов в JSON формате, обязательная конвертация поля query_id в строку, так как числовое значение некорректно отображается в ES.

    ПРИМЕЧАНИЕ

    Следует отметить структуры данных внутри Elasticsearch, в которых будут храниться журналы. Для хранения данных используются так называемые «потоки» (data streams). Целевой поток выбирается автоматически и имеет формат logs-apm.app.<service.name>-<namespace>. Значение service.name указывается в конфигурации коллектора в списке processors.resource.attributes элементом key: service.name. Значение namespace определяется элементом с ключом service.environment. В приведённой конфигурации он не передаётся, поэтому подставляется значение по умолчанию default. Таким образом при использовании приведённой конфигурации журналы активности будут храниться в потоке с именем logs-apm.app.postgresql-default.

  3. Настройте отправку логов через otlphttpexporter и настройте конвейер:

    exporters:
      otlphttp/elastic_logs:
        compression: gzip
        endpoint: https://elasticsearch-apm.example.org
        tls:
          insecure_skip_verify: false
    
    service:
      extensions: []
      pipelines:
        logs:
          receivers:
          - filelog
          processors:
          - resource
          - attributes/convert
          exporters:
          - otlphttp/elastic_logs
  4. Запустите коллектор и проверьте публикацию метрик на стороне коллектора:

    systemctl start pgpro-otel-collector
    
    systemctl status pgpro-otel-collector
    ● pgpro-otel-collector.service - PostgresPro OpenTelemetry Collector
         Loaded: loaded (/lib/systemd/system/pgpro-otel-collector.service; enabled; preset: enabled)
         Active: active (running) since Thu 2025-03-20 01:18:08 MSK; 4h 13min ago
       Main PID: 6991 (pgpro-otel-coll)
          Tasks: 8 (limit: 3512)
         Memory: 119.3M
            CPU: 2min 49.311s
         CGroup: /system.slice/pgpro-otel-collector.service
                 └─6991 /usr/bin/pgpro-otel-collector --config /etc/pgpro-otel-collector/basic.yml
    
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"info","ts":1742422688.366656,"msg":"Setting up own telemetry..."}
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"info","ts":1742422688.367178,"msg":"Skipped telemetry setup."}
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"info","ts":1742422688.3679142,"msg":"Development component. May change in the future.","kind":"receiver","name":"postgrespro","data_type":"metrics"}
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"warn","ts":1742422688.3494158,"caller":"[email protected]/provider.go:59","msg":"Configuration references unset environment variable","name":"POSTGRESQL_P>
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"info","ts":1742422688.4481084,"msg":"Starting pgpro-otel-collector...","Version":"v0.3.1","NumCPU":1}
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"info","ts":1742422688.4481149,"msg":"Starting extensions..."}
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"warn","ts":1742422688.4483361,"msg":"Using the 0.0.0.0 address exposes this server to every network interface, which may facilitate Denial of Service attack>
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"info","ts":1742422688.4515307,"msg":"Starting stanza receiver","kind":"receiver","name":"filelog","data_type":"logs"}
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"info","ts":1742422688.451749,"msg":"Everything is ready. Begin running and processing data."}
    мар 20 01:18:08 postgresql-01.example.org pgpro-otel-collector[6991]: {"level":"info","ts":1742422688.6523068,"msg":"Started watching file","kind":"receiver","name":"filelog","data_type":"logs","component":"fileconsumer","path":"/var/log/postgresql/postgresql-2025-03-20.json"}

Настройка агента PPEM

Дополнительная настройка агента PPEM не требуется.

Проверка наличия журналов в Elasticsearch

После того, как отправка журналов из pgpro-otel-collector в Elasticsearch настроена, убедитесь, что метрики попадают в систему хранения журналов. Для проверки можно выполнить запрос к хранилищу с помощью утилиты curl. Пример запроса:

curl -s -XGET "https://elasticsearch.example.org:9200/logs-apm.app.postgresql-default/_search?size=10" -H 'Content-Type: application/json' -d'
{
  "_source": ["message","service.node.name","@timestamp"],
"sort": [
    { "@timestamp": "desc" }
  ],
  "query": {
        "bool": {
            "filter": [
                { "term":{"service.node.name":"postgresql-01.example.org:5432" }}]
        }
    }
}'

Где:

  • https://elasticsearch.example.org:9200 — URL системы хранения журналов;
  • logs-apm.app.postgresql-default — название потока (data stream) для поиска;
  • size=10 — размер выборки;
  • "_source": ["message","service.node.name","@timestamp"] — запрашиваемые поля.

Пример ответа:

{
  "took": 18,
  "timed_out": false,
  "_shards": {
    "total": 11,
    "successful": 11,
    "skipped": 0,
    "failed": 0
  },
  "hits": {
    "total": {
      "value": 10000,
      "relation": "gte"
    },
    "max_score": null,
    "hits": [
      {
        "_index": ".ds-logs-apm.app.postgresql-default-2025.03.19-000379",
        "_id": "qmuArJUB2PKtie47RffA",
        "_score": null,
        "_source": {
          "message": "checkpoint complete: wrote 2038 buffers (16.6%); 0 WAL file(s) added, 0 removed, 10 recycled; write=269.563 s, sync=1.192 s, total=270.962 s; sync files=246, longest=0.677 s, average=0.005 s; distance=162419 kB, estimate=174180 kB; lsn=6/62000850, redo lsn=6/583C4DD8",
          "@timestamp": "2025-03-19T03:44:01.336Z",
          "service": {
            "node": {
              "name": "postgresql-01.example.org:5432"
            }
          }
        },
        "sort": [
          1742355841336
        ]
      }
    ]
  }
}

Настройка источника данных журналов в PPEM UI

Чтобы добавить хранилище журналов, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураИсточники данныхХранилища сообщений.

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

  3. Укажите параметры хранилища (помеченные звёздочкой параметры являются обязательными):

    • Название: произвольное имя, например Elasticsearch.
    • URL-адрес: адрес подключения к Elasticsearch, например https://elasticsearch.example.org.
    • Индекс Elasticsearch: имя индекса (потока), который будет использоваться для поисковых запросов, следует указать logs-apm.app.postgresql-default.
    • Пользователь: имя пользователя, если используется авторизация.
    • Пароль: пароль пользователя, если используется авторизация.
    • Описание: произвольное описание.
    • Сделать источником данных по умолчанию: отметьте, чтобы использовать это хранилище по умолчанию для любых запросов к журналам экземпляров.

Новое хранилище появится в таблице Хранилища метрик.

Проверка

В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингЖурнал сообщений.

На странице отобразятся журналы экземпляров СУБД.

Использование PPEM

Вход в веб-приложение

В веб-приложение можно войти после установки PPEM.

Чтобы войти в веб-приложение, выполните следующие действия:

  1. В адресной строке браузера введите сетевой адрес сервера, на котором установлен менеджер. Дополнительно может потребоваться указать номер порта, на котором сервер прослушивает входящие подключения. Если в сети настроена служба DNS, можно ввести сетевое имя сервера.

    Сетевой адрес и номер порта сервера можно указать в конфигурационном файле менеджера ppem-manager.yml с помощью параметров http.server.address и http.server.port.

  2. На странице авторизации введите логин и пароль, после чего нажмите АВТОРИЗАЦИЯ. При первом входе в веб-приложение используйте пользователя по умолчанию с логином admin и паролем admin.

Откроется страница Главная в разделе УПРАВЛЕНИЕ навигационной панели.

Рекомендуется выполнить следующие действия после первого входа в веб-приложение:

  • Отредактируйте пользователя по умолчанию с логином admin и измените его пароль.
  • Создайте для себя отдельного пользователя.

Интерфейс веб-приложения

В этом разделе описаны следующие элементы интерфейса веб-приложения:

Интерфейс веб-приложения

Главная страница

После входа в веб-приложения автоматически отображается главная страница с основной информацией о PPEM. На главной странице отображаются следующие блоки:

  • ЭКЗЕМПЛЯРЫ: позволяет перейти к управлению экземплярами.
  • КЛАСТЕРЫ: позволяет перейти к управлению кластерами.
  • БАЗЫ ДАННЫХ: позволяет перейти к управлению базами данных.
  • ОБЩИЙ РАЗМЕР БД: отображает общий объем памяти, занимаемый всеми базами данных.
  • ПОСЛЕДНИЕ УВЕДОМЛЕНИЯ: отображает три последних уведомления, полученные от PPEM.
  • ПОСЛЕДНИЕ СООБЩЕНИЯ: отображает последние сообщения журнала. Чтобы просмотреть полный журнал сообщений, нажмите ПЕРЕЙТИ В ЖУРНАЛ СООБЩЕНИЙ.

Навигационная панель

Навигация по страницам веб-приложения осуществляется с помощью навигационной панели. При переходе на страницу справа отображается её содержимое.

Некоторые страницы содержат вложенные страницы. Если вы переходите на страницу, которая содержит вложенные страницы, эти страницы также отображаются в навигационной панели.

Чтобы свернуть или развернуть навигационную панель, в нижней части навигационной панели нажмите Свернуть или нажмите на значок разворачивания icon-expand-panel.

Вы можете перейти на главную страницу, находясь на любой странице, нажав на логотип PPEM в верхней части навигационной панели.

Панель инструментов

При переходе на любую страницу веб-приложения в верхней части страницы отображается панель инструментов. С помощью панели инструментов можно выполнить следующие действия:

  • Найти компонент PPEM, введя его имя в поле поиска.

  • Переключиться между темами веб-приложения:

    • Чтобы переключиться на тёмную тему, нажмите на значок луны icon-moon.
    • Чтобы переключиться на светлую тему, нажмите на значок солнца icon-sun.
  • Изменить язык веб-приложения:

    • Чтобы изменить язык на английский, выберите Английский icon-english-flag из выпадающего списка.
    • Чтобы изменить язык на русский, выберите Русский icon-russian-flag из выпадающего списка.
  • Просмотреть уведомления, полученные от PPEM, нажав на значок колокольчика icon-bell. Чтобы отметить все уведомления как прочитанные, в меню нажмите Прочитать всё.

  • Просмотреть роли, назначенные вашей учётной записи, наведя курсор на имя пользователя.

  • Выйти из веб-приложения, нажав на значок выхода icon-logout.

Настройка системы

В этом разделе описано, как просмотреть сводную информацию о PPEM, а также как управлять агентами и тегами.

Просмотр сводной информации о PPEM

Чтобы просмотреть сводную информацию о PPEM, в разделе СИСТЕМА навигационной панели перейдите на страницу О PPEM.

Отобразятся следующие блоки:

  • Платформа: информация о сервере, на котором установлен менеджер. Отображаются следующие параметры:

    • Platform: архитектура ЦП сервера.
    • Kernel: версия ядра Linux сервера.
    • System: версия операционной системы, установленной на сервере.
    • Nodename: FQDN сервера.
  • Менеджер: информация о менеджере. Отображаются следующие параметры:

    • Version: версия менеджера.
    • Configuration: путь к каталогу на сервере, в котором размещён конфигурационный файл менеджера ppem-manager.yml.
  • Репозиторий: информация о репозитории. Отображаются следующие параметры:

    • Version: версия репозитория.
    • Connection: строка подключения к базе данных репозитория.
  • Полезные ссылки: ссылки на официальную документацию Postgres Pro.

Чтобы обновить сводную информацию о PPEM, в правом верхнем углу страницы нажмите Обновить данные icon-update.

Агенты

В этом разделе описано, как управлять агентами, и приведены следующие инструкции:

За подробной информацией об агентах обратитесь к разделу Архитектура.

Создание агента

После установки на сервере агент автоматически создаётся в веб-приложении. Если этого не произошло, агент можно создать вручную. Агент невозможно создать вручную, если он предварительно не был установлен на сервере.

Чтобы создать агент, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураАгенты.

    Отобразится таблица агентов.

  2. В правом верхнем углу страницы нажмите ДОБАВИТЬ АГЕНТ.

    Откроется окно создания агента.

  3. Укажите подробную информацию о новом агенте (помеченные звёздочкой параметры являются обязательными):

    • Название: уникальное имя агента.

    • Хост: сетевой адрес сервера, на котором установлен агент. Сетевой адрес сервера можно найти, введя его в поле поиска.

    • Порт: номер порта, на котором сервер прослушивает входящие подключения.

    • Протокол: протокол, используемый агентом. Возможные значения:

      • http. Это значение по умолчанию.
      • https.

    ПРИМЕЧАНИЕ

    На основании параметров Хост, Порт и Протокол автоматически формируется URL для подключения агента к менеджеру.

  4. Нажмите СОХРАНИТЬ.

Агент будет создан и появится в таблице агентов.

Просмотр агентов

Чтобы просмотреть агенты, в разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураАгенты.

Отобразится таблица агентов со следующими столбцами:

  • Агент: уникальное имя агента. Если агент был создан в веб-приложении автоматически, имя генерируется на основании имени хоста сервера, на котором установлен агент.

    Слева от имени агента отображается индикатор его статуса. При наведении курсора на имя агента отображается сам статус. Возможные статусы:

    • online: агент работает штатно.
    • stopped: служба агента была остановлена.
    • unknown: статус агента неизвестен.
    • not_responding: не удаётся связаться со службой агента.

    Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • URL: URL для подключения агента к менеджеру. Значения в этом столбце можно фильтровать с помощью соответствующего значка.

  • Ключ аутентификации: ключ, который агент использует для аутентификации при подключении к менеджеру. Ключ аутентификации можно скопировать или просмотреть, нажав Скопировать ключ icon-copy или на значок просмотра icon-view-eye рядом с ним.

  • Версия: версия агента. Если версия агента отличается от версии менеджера, отображается соответствующее предупреждение.

  • Действия: действия, которые можно выполнить с агентом. За подробной информацией о действиях с агентами обратитесь к другим инструкциям в этом разделе.

С таблицей агентов можно выполнить следующие действия:

  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.

Редактирование агента

По умолчанию агенты автоматически обновляют информацию о себе и внесённые вами изменения со временем перезаписываются. Автоматическое обновление можно отключить. Для этого в конфигурационном файле агента ppem-agent.yml для параметра collectors.instances.disabled укажите значение true.

Чтобы отредактировать агент, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураАгенты.

    Отобразится таблица агентов.

  2. Нажмите Редактировать icon-pencil рядом с агентом, который необходимо отредактировать.

    Откроется окно редактирования агента.

  3. Измените параметры агента.

  4. Нажмите СОХРАНИТЬ.

Агент будет отредактирован, изменения отобразятся в таблице агентов.

Удаление агента

Чтобы удалить агент, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураАгенты.

    Отобразится таблица агентов.

  2. Нажмите Удалить icon-delete рядом с агентом, который необходимо удалить.

    Откроется окно удаления агента.

  3. Нажмите УДАЛИТЬ.

Агент будет удалён и перестанет отображаться в таблице агентов.

ПРИМЕЧАНИЕ

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

Теги

Теги — это уникальные метки, которые можно назначать экземплярам при создании и редактировании экземпляров. Экземпляры можно фильтровать по назначенным тегам.

В этом разделе описано, как управлять тегами, и приведены следующие инструкции:

Создание тега

Чтобы создать тег, выполните следующие действия:

  1. В разделе СИСТЕМА навигационной панели перейдите на страницу Настройки.

    Отобразится таблица тегов.

  2. В правом верхнем углу страницы нажмите ДОБАВИТЬ ТЕГ.

    Откроется окно создания тега.

  3. Укажите подробную информацию о новом теге (помеченные звёздочкой параметры являются обязательными):

    • Описание: краткое описание тега.
    • Отображаемое имя: уникальное имя тега.
  4. Нажмите СОХРАНИТЬ.

Тег будет создан и появится в таблице тегов.

Просмотр тегов

Чтобы просмотреть теги, в разделе СИСТЕМА навигационной панели перейдите на страницу Настройки.

Отобразится таблица тегов со следующими столбцами:

  • Описание: краткое описание тега. Значения в этом столбце можно фильтровать с помощью соответствующего значка.
  • Отображаемое имя: уникальное имя тега.
  • Действия: действия, которые можно выполнить с тегом. За подробной информацией о действиях с тегами обратитесь к другим инструкциям в этом разделе.

С таблицей тегов можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.

Редактирование тега

Чтобы отредактировать тег, выполните следующие действия:

  1. В разделе СИСТЕМА навигационной панели перейдите на страницу Настройки.

    Отобразится таблица тегов.

  2. Нажмите Редактировать icon-pencil рядом с тегом, который необходимо отредактировать.

    Откроется окно редактирования тега.

  3. Измените параметры тега.

  4. Нажмите СОХРАНИТЬ.

Тег будет отредактирован, изменения обновятся в таблице тегов.

Удаление тега

ПРЕДУПРЕЖДЕНИЕ

После удаления теги нельзя восстановить.

Чтобы удалить тег, выполните следующие действия:

  1. В разделе СИСТЕМА навигационной панели перейдите на страницу Настройки.

    Отобразится таблица тегов.

  2. Нажмите Удалить icon-delete рядом с тегом, который необходимо удалить.

    Откроется окно удаления тега.

  3. Нажмите УДАЛИТЬ.

Тег будет удалён и перестанет отображаться в таблице тегов.

Пользователи PPEM

Пользователи управляют PPEM с помощью веб-приложения. При необходимости пользователей можно объединять в группы для централизованного управления.

Уровень доступа пользователей к различным операциям определяется ролями. Каждая роль имеет предопределённый набор привилегий. Роли можно назначать как отдельным пользователям, так и группам.

За подробной информацией о ролях и привилегиях обратитесь к разделу Ролевая модель доступа (RBAC).

В этом разделе описано, как управлять пользователями и группами, а также приведена информация о существующих ролях и привилегиях.

Управление пользователями

В этом разделе описано, как управлять пользователями, и приведены следующие инструкции:

Создание пользователя

Чтобы создать пользователя, выполните следующие действия:

  1. В разделе СИСТЕМА навигационной панели перейдите на страницу Пользователи.

    Отобразится таблица пользователей.

  2. В правом верхнем углу страницы нажмите ДОБАВИТЬ ПОЛЬЗОВАТЕЛЯ.

    Откроется окно создания пользователя.

  3. Укажите подробную информацию о новом пользователе (помеченные звёздочкой параметры являются обязательными):

    • Имя: имя пользователя.

    • Фамилия: фамилия пользователя.

    • Эл. почта: адрес эл. почты пользователя.

    • Логин: логин пользователя для входа в веб-приложение.

    • Пароль: пароль пользователя для входа в веб-приложение. Минимальная длина пароля — 8 символов.

    • Должность: должность пользователя в вашей организации.

    • Телефон: номер телефона пользователя.

    • Группа: группы, в которые будет добавлен пользователь. Выбор группы можно отменить, нажав на крестик icon-cross-grey рядом с её именем.

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

    • Права доступа: роли, которые будут назначены пользователю. Чтобы назначить роль пользователю, нажмите ДОБАВИТЬ РОЛЬ + и выберите роль из выпадающего списка. Роль можно отозвать, нажав на значок корзины icon-delete рядом с ней.

      Для определённых ролей выберите из выпадающего списка объекты, к которым эти роли будут предоставлять доступ. Объект можно отозвать, нажав на крестик icon-cross-grey рядом с его именем.

    • Статус: статус доступа пользователя к веб-приложению после создания. Возможные значения:

      • Доступ разрешен: пользователь может входить в веб-приложение.
      • Доступ заблокирован: пользователю запрещён вход в веб-приложение. Чтобы у пользователя появился доступ к веб-приложению, отредактируйте пользователя и выберите Доступ разрешен из выпадающего списка Статус.
  4. Нажмите СОХРАНИТЬ.

Пользователь будет создан и появится в таблице пользователей.

Просмотр пользователей

Чтобы просмотреть пользователей, в разделе СИСТЕМА навигационной панели перейдите на страницу Пользователи.

Отобразится таблица пользователей со следующими столбцами:

  • Имя пользователя: имя и фамилия пользователя. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.
  • Логин: логин пользователя для входа в веб-приложение. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.
  • Почта: адрес эл. почты пользователя. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.
  • Личные роли: назначенные пользователю роли. Значения в этом столбце можно фильтровать с помощью соответствующих значков.
  • Группа: группы, в которые добавлен пользователь.

С таблицей пользователей можно выполнить следующие действия:

  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.

Редактирование пользователя

Чтобы отредактировать пользователя, выполните следующие действия:

  1. В разделе СИСТЕМА навигационной панели перейдите на страницу Пользователи.

    Отобразится таблица пользователей.

  2. Нажмите Редактировать icon-pencil рядом с пользователем, которого необходимо отредактировать.

    Откроется окно редактирования пользователя.

  3. Измените параметры пользователя.

  4. Нажмите СОХРАНИТЬ.

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

Удаление пользователя

ПРЕДУПРЕЖДЕНИЕ

После удаления пользователей нельзя восстановить.

Чтобы удалить пользователя, выполните следующие действия:

  1. В разделе СИСТЕМА навигационной панели перейдите на страницу Пользователи.

    Отобразится таблица пользователей.

  2. Нажмите Удалить icon-delete рядом с пользователем, которого необходимо удалить.

    Откроется окно удаления пользователя.

  3. Нажмите ДА, УДАЛИТЬ.

Пользователь будет удалён и перестанет отображаться в таблице пользователей.

Управление группами пользователей

В этом разделе описано, как управлять группами пользователей, и приведены следующие инструкции:

Создание группы пользователей

Чтобы создать группу пользователей, выполните следующие действия:

  1. В разделе СИСТЕМА навигационной панели перейдите на страницу ПользователиГруппы.

    Отобразится таблица групп пользователей.

  2. В правом верхнем углу страницы нажмите СОЗДАТЬ ГРУППУ.

    Откроется окно создания группы пользователей.

  3. Укажите подробную информацию о новой группе пользователей (помеченные звёздочкой параметры являются обязательными):

    • Название: уникальное имя группы пользователей.

    • Описание: краткое описание группы пользователей.

    • Группа LDAP: группа LDAP, которая будет относится к группе пользователей.

    • Пользователи: пользователи, которые будут добавлены в группу. Выбор пользователя можно отменить, нажав на крестик icon-cross-grey рядом с именем пользователя.

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

    • Права доступа: роли, которые будут назначены группе пользователей. Чтобы назначить роль группе пользователей, нажмите ДОБАВИТЬ РОЛЬ + и выберите роль из выпадающего списка. Роль можно отозвать, нажав на значок корзины icon-delete рядом с ней.

      Для определённых ролей выберите из выпадающего списка объекты, к которым эти роли будут предоставлять доступ. Объект можно отозвать, нажав на крестик icon-cross-grey рядом с его именем.

  4. Нажмите СОХРАНИТЬ.

Группа пользователей будет создана и появится в таблице групп пользователей.

Просмотр групп пользователей

Чтобы просмотреть группы пользователей, в разделе СИСТЕМА навигационной панели перейдите на страницу ПользователиГруппы.

Отобразится таблица групп пользователей со следующими столбцами:

  • Группа: уникальное имя группы пользователей. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.
  • Описание: краткое описание группы пользователей.
  • Группа LDAP: группа LDAP, которая относится к группе пользователей.
  • Действия: действия, которые можно выполнить с группой пользователей. За подробной информацией о действиях с группами пользователей обратитесь к другим инструкциям в этом разделе.

С таблицей групп пользователей можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.

Просмотр информации о группе пользователей

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

Чтобы просмотреть информацию о группе пользователей, выполните следующие действия:

  1. В разделе СИСТЕМА навигационной панели перейдите на страницу ПользователиГруппы.

    Отобразится таблица групп пользователей.

  2. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsПоказать детали рядом с группой пользователей, информацию о которой необходимо просмотреть.

Откроется окно с информацией о группе пользователей.

Редактирование группы пользователей

Чтобы отредактировать группу пользователей, выполните следующие действия:

  1. В разделе СИСТЕМА навигационной панели перейдите на страницу ПользователиГруппы.

    Отобразится таблица групп пользователей.

  2. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsРедактировать рядом с группой пользователей, которую необходимо отредактировать.

    Откроется окно редактирования группы пользователей.

  3. Измените параметры группы пользователей.

  4. Нажмите СОХРАНИТЬ.

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

Удаление группы пользователей

ПРЕДУПРЕЖДЕНИЕ

После удаления группы пользователей нельзя восстановить.

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

Чтобы удалить группу пользователей, выполните следующие действия:

  1. В разделе СИСТЕМА навигационной панели перейдите на страницу ПользователиГруппы.

    Отобразится таблица групп пользователей.

  2. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsУдалить рядом с группой пользователей, которую необходимо удалить.

    Откроется окно удаления группы пользователей.

  3. Нажмите УДАЛИТЬ.

Группа пользователей будет удалена и перестанет отображаться в таблице групп пользователей.

Роли и привилегии

В этом разделе описаны роли и привилегии, а также приведена инструкция по их просмотру. За подробной информацией о ролях и привилегиях обратитесь к разделу Ролевая модель доступа (RBAC).

Описание ролей

В PPEM существуют следующие роли:

  • System administrator role: имеет полный набор привилегий.
  • Guest role: может просматривать ограниченное количество объектов.
  • Instance objects administrator role: может управлять объектами экземпляра.
  • Instance objects viewer role: может просматривать объекты экземпляра.
  • Instance administrator role: может управлять экземпляром.
  • Пользователь консоли: может запускать psql в рамках экземпляра.
  • Access administrator role: может управлять ролями пользователей и групп.
  • Repositories and packages administrator: может управлять репозиториями и пакетами.

В веб-приложении невозможно создавать новые роли и редактировать существующие, однако это можно сделать с помощью API.

Описание привилегий

Роли могут иметь следующие привилегии:

  • privilege_view: просмотр привилегий и их описаний.
  • role_create: создание ролей.
  • role_view: просмотр ролей и их параметров.
  • role_edit: редактирование ролей.
  • role_delete: удаление ролей.
  • user_create: создание пользователей.
  • user_view_all: просмотр любых пользователей и их параметров.
  • user_edit_all: редактирование любых пользователей.
  • user_delete: удаление пользователей.
  • project_create: создание проектов.
  • project_view: просмотр проектов и их параметров.
  • project_edit: редактирование проектов.
  • project_delete: удаление проектов.
  • notification_create: создание уведомлений.
  • notification_view: просмотр уведомлений и их параметров.
  • notification_edit: редактирование уведомлений.
  • notification_delete: удаление уведомлений.
  • group_create: создание групп пользователей.
  • group_view: просмотр групп пользователей и их параметров.
  • group_edit: редактирование групп пользователей.
  • group_delete: удаление групп пользователей.
  • host_create: создание серверов.
  • host_view: просмотр серверов и их параметров.
  • host_edit: редактирование серверов.
  • host_delete: удаление серверов.
  • agent_create: создание агентов.
  • agent_view: просмотр агентов и их параметров.
  • agent_edit: редактирование агентов.
  • agent_delete: удаление агентов.
  • instance_create: создание экземпляров.
  • instance_view: просмотр экземпляров.
  • instance_edit: редактирование экземпляров.
  • instance_delete: удаление экземпляров.
  • session_view_all: просмотр любых пользовательских сеансов.
  • session_delete_all: удаление любых пользовательских сеансов.
  • session_update: обновление пользовательских сеансов.
  • command_create: создание команд.
  • command_view_all: просмотр любых команд.
  • command_edit_all: редактирование любых команд.
  • command_delete_all: отмена любых команд.
  • instance_object_view: просмотр объектов экземпляра и их параметров.
  • metrics_view: просмотр метрик.
  • job_create: создание заданий.
  • job_view_all: просмотр любых заданий.
  • job_edit_all: редактирование любых заданий.
  • job_delete_all: удаление любых заданий.
  • backup_create: создание резервных копий.
  • backup_view: просмотр резервных копий.
  • backup_edit: редактирование резервных копий.
  • backup_delete: удаление резервных копий.
  • datasource_create: создание хранилищ данных.
  • datasource_view: просмотр хранилищ данных.
  • datasource_edit: редактирование хранилищ данных.
  • datasource_delete: удаление хранилищ данных.
  • maintenance_create: выполнение команд технического обслуживания.
  • instance_service_control: выполнение служебных команд.
  • instance_settings_create: создание параметров экземпляров. Это сервисная привилегия, необходимая агентам для добавления параметров экземпляров в базу данных репозитория.
  • instance_settings_view: просмотр параметров экземпляров.
  • instance_settings_edit: редактирование параметров экземпляров.
  • query_state_read: выполнение команды pg_query_state.
  • logs_view: просмотр журналов.
  • chart_create: создание графиков.
  • chart_view: просмотр графиков.
  • chart_edit: редактирование графиков.
  • chart_delete: удаление графиков.
  • chart_group_create: создание групп графиков.
  • chart_group_view: просмотр групп графиков.
  • chart_group_edit: редактирование групп графиков.
  • chart_group_delete: удаление групп графиков.
  • stat_activity_view: просмотр статистики представления pg_stat_activity.
  • stat_statements_view: просмотр любых операторов SQL, выполненных сервером.
  • overview_view: просмотр обзорной информации о системе.
  • tag_create: создание тегов.
  • tag_view: просмотр тегов и их параметров.
  • tag_edit: редактирование тегов.
  • tag_delete: удаление тегов.
  • progress_stats_view: просмотр статистики представлений pg_stat_progress_*.
  • about_view: просмотр информации о системе.
  • pgpro_pwr_databases_view: просмотр расширений pgpro_pwr.
  • pgpro_pwr_servers_delete: удаление серверов pgpro_pwr.
  • pgpro_pwr_servers_view: просмотр серверов pgpro_pwr.
  • create_replication_nodes: создание узлов репликации.
  • pgpro_pwr_servers_add: добавление серверов pgpro_pwr.
  • pgpro_pwr_servers_patch: установка патчей для расширений pgpro_pwr.
  • stat_locktree_view: просмотр дерева блокировок (locktree).
  • pgpro_pwr_samples_create: создание выборок pgpro_pwr.
  • pgpro_pwr_samples_get: просмотр выборок pgpro_pwr.
  • pgpro_pwr_samples_delete: удаление выборок pgpro_pwr.
  • pgpro_pwr_report_create: создание отчётов pgpro_pwr.
  • pgpro_pwr_report_delete: удаление отчётов pgpro_pwr.
  • view_replication_nodes: просмотр узлов репликации.
  • pgpro_pwr_report_view: просмотр отчётов pgpro_pwr.
  • settings_preset_view: просмотр пресетов.
  • pgpro_pwr_overview: просмотр содержимого отчётов pgpro_pwr.
  • manage_user_roles: назначение и отзыв ролей пользователей.
  • manage_group_roles: назначение и отзыв ролей групп пользователей.
  • manage_user_groups: добавление и удаление пользователей из групп.
  • job_run_all: запуск любых заданий.

Просмотр ролей и привилегий

Чтобы просмотреть роли и привилегии, в разделе СИСТЕМА навигационной панели перейдите на страницу ПользователиРоли.

Отобразятся роли. Для каждой роли отображается класс объектов, к которым она предоставляет доступ, а также таблица привилегий со следующими столбцами:

  • Привилегия: уникальное имя привилегии.
  • Название: описание привилегии.
  • Параметрическая: указывает, распространяется ли привилегия на конкретные объекты.
  • Объекты: объекты, на которые распространяется привилегия.

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

Кластеры репликации

PPEM поддерживает использование кластеров репликации. Если вы устанавливаете агент на сервере, на котором создан кластер, этот кластер автоматически создаётся в веб-приложении. Кластеры также можно создавать вручную. За более подробной информацией о кластерах обратитесь к официальной документации Postgres Pro.

В этом разделе описано, как управлять кластерами, и приведены следующие инструкции:

Создание кластера

Чтобы создать кластер, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураКластеры.

    Отобразится таблица кластеров.

  2. В правом верхнем углу нажмите СОЗДАТЬ КЛАСТЕР.

    Откроется окно создания кластера.

  3. На этапе Режим выберите Из экземпляра и нажмите ДАЛЕЕ.

  4. На этапе Параметры укажите подробную информацию о новом кластере (помеченные звёздочкой параметры являются обязательными):

    • Ведущий узел: ведущий узел кластера. При выборе ведущего узла отображается следующая информация об экземпляре:

      • Версия и редакция: версия и редакция Postgres Pro на сервере экземпляра.
      • Каталог данных: путь к каталогу на сервере, в котором размещены основные каталоги и файлы экземпляра.
      • Сетевой адрес и Порт: сетевой адрес и номер порта, которые экземпляр использует для приёма клиентских подключений.
      • База данных: база данных для подключения к экземпляру.
      • Пользователь: имя суперпользователя СУБД, от имени которого агент подключается к экземпляру.
    • Серверы резервных узлов: позволяет добавить узлы в кластер. Для обеспечения кворума рекомендуется добавить в кластер нечётное количество узлов. Чтобы добавить узлы в кластер, выполните следующие действия:

      1. Нажмите ДОБАВИТЬ СЕРВЕРЫ.

      2. Выберите узел из выпадающего списка. При выборе узла отображается следующая информация об экземпляре:

        • Каталог данных: путь к каталогу на сервере, в котором размещены основные каталоги и файлы экземпляра.
        • Сетевой адрес и Порт: сетевой адрес и номер порта, которые экземпляр использует для приёма клиентских подключений.
      3. Нажмите ДОБАВИТЬ СЕРВЕР.

        Вы можете добавить несколько узлов. Добавление узла можно отменить, нажав на значок корзины icon-bin рядом с ним.

      4. Нажмите ДОБАВИТЬ В КЛАСТЕР.

      Узлы будут добавлены в кластер и появятся в разделе Серверы резервных узлов. Список узлов можно отредактировать, нажав РЕДАКТИРОВАТЬ.

  5. Нажмите СОЗДАТЬ КЛАСТЕР.

Кластер будет создан и появится в таблице кластеров.

Просмотр кластеров

Чтобы просмотреть кластеры, в разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураКластеры.

Отобразится таблица кластеров со следующими столбцами:

  • Кластер: уникальное имя и идентификатор кластера. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Менеджер отказоустойчивости: менеджер отказоустойчивости кластера. Возможные значения:

    • Отсутствует
    • Patroni
    • Biha
    • Shardman

    Значения в этом столбце можно фильтровать с помощью соответствующего значка.

  • Узлов, шт.: количество узлов в кластере. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Версия: версия и редакция Postgres Pro на узлах кластера. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Состояние: состояние кластера. Возможные значения:

    • Запущен: все узлы кластера запущены.
    • Репликация остановлена: репликация остановлена в кластере.
    • Смена ведущего узла: происходит изменение ведущего узла кластера.

    Значения в этом столбце можно фильтровать с помощью соответствующего значка.

  • Сетевой адрес: сетевой адрес ведущего узла кластера.

  • Последнее обновление: дата и время последнего обновления информации о состоянии кластера.

    ПРИМЕЧАНИЕ

    Менеджер получает информацию о состоянии кластера от агентов. Это происходит с задержкой, поэтому в веб-приложении может отображаться неактуальная информация.

    Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Действия: действия, которые можно выполнить с кластером. За подробной информацией о действиях с кластерами обратитесь к другим инструкциям в этом разделе.

С таблицей кластеров можно выполнить следующие действия:

  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в левом верхнем углу таблицы нажмите Сбросить фильтры.

Редактирование кластера

Чтобы отредактировать кластер, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураКластеры.

    Отобразится таблица кластеров.

  2. Нажмите Редактировать icon-pencil рядом с кластером, который необходимо отредактировать.

    Откроется окно редактирования кластера.

  3. Измените параметры кластера.

  4. Нажмите СОХРАНИТЬ.

Кластер будет отредактирован, изменения отобразятся в таблице кластеров.

Экземпляры

В этом разделе описано, как управлять экземплярами СУБД, а также настраивать их, и приведены следующие подразделы:

Управление экземплярами

В этом разделе описано, как управлять экземплярами, и приведены следующие инструкции:

Создание экземпляра

Агенты автоматически выполняют поиск установленных на сервере экземпляров и создают их в веб-приложении. Автоматический поиск и создание экземпляров можно настроить в конфигурационном файле агента ppem-agent.yml.

Для экземпляров, которые не были автоматически созданы в веб приложении, поддерживаются следующие способы создания:

Создание нового экземпляра

Создание нового экземпляра подразумевает создание основного каталога данных (data directory) и запуск службы экземпляра на сервере.

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. В правом верхнем углу страницы нажмите Добавить экземпляр.

    Откроется окно создания экземпляра.

  3. На этапе Общее выберите Создать новый экземпляр и нажмите ДАЛЕЕ.

  4. На этапе Параметры экземпляра укажите подробную информацию о новом экземпляре (помеченные звёздочкой параметры являются обязательными):

    • Название: уникальное имя экземпляра.

    • Сервер: сервер, на котором будет установлен экземпляр.

    • Системный пользователь: пользователь операционной системы, которому будут принадлежать файлы и каталоги экземпляра, и от имени которого будет запущена служба экземпляра. В большинстве случаев таким пользователем является posgtres. Рекомендуется убедиться, что указанный пользователь существует в операционной системе.

    • Основной каталог данных: путь к каталогу на сервере, в котором будут размещены основные каталоги и файлы экземпляра.

    • Адрес подключения и Порт подключения: сетевой адрес и номер порта, которые экземпляр будет использовать для приёма клиентских подключений. Сетевой адрес по умолчанию: localhost.

    • Метод аутентификации: метод аутентификации, который экземпляр будет использовать для проверки пользователей при приёме клиентских подключений. Возможные значения:

      • scram-sha-256. Это значение по умолчанию.
      • md5.
      • trust: не выполнять аутентификацию. Рекомендуется выбирать это значение только для тестовой среды.
    • Супер-пользователь БД и Пароль супер-пользователя БД: имя и пароль суперпользователя СУБД, который будет создан, и от имени которого агент будет подключаться к экземпляру. Имя суперпользователя СУБД по умолчанию: postgres.

    • Запустить экземпляр после создания: указывает, следует ли запустить службу экземпляра после его создания. По умолчанию этот флажок установлен.

    • Теги: теги, которые будут назначены экземпляру. Назначение тега можно отменить, нажав на крестик icon-cross-grey рядом с его именем.

    • Пресет конфигурации: набор предопределённых параметров, который будет применен к экземпляру. Возможные значения:

      • ---: не применять к экземпляру набор предопределённых параметров. Это значение по умолчанию.
      • Settings for 1C: применить к экземпляру набор предопределённых параметров для 1C.
      • Settings for OLTP: применить к экземпляру набор предопределённых параметров для OLTP (OnLine Transaction Processing).

      Набор предопределённых параметров экземпляра можно отредактировать позднее.

  5. Нажмите ВЫПОЛНИТЬ.

Новый экземпляр будет создан и появится в таблице экземпляров.

Добавление существующего экземпляра

Добавление существующего экземпляра может потребоваться, если у агента выключена функция автоматического поиска установленных на сервере экземпляров и их создания в веб-приложении.

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

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. В правом верхнем углу страницы нажмите Добавить экземпляр.

    Откроется окно создания экземпляра.

  3. На этапе Общее выберите Добавить существующий экземпляр и нажмите ДАЛЕЕ.

  4. На этапе Параметры экземпляра укажите подробную информацию об экземпляре (помеченные звёздочкой параметры являются обязательными):

    • Название: уникальное имя экземпляра.
    • Сервер: сервер, на котором установлен экземпляр.
    • Основной каталог данных: путь к каталогу на сервере, в котором размещены основные каталоги и файлы экземпляра.
    • Адрес подключения и Порт подключения: сетевой адрес и номер порта, которые экземпляр использует для приёма клиентских подключений. Сетевой адрес по умолчанию: localhost.
    • Супер-пользователь БД и Пароль супер-пользователя БД: имя и пароль суперпользователя СУБД, от имени которого агент будет подключаться к экземпляру. Имя суперпользователя СУБД по умолчанию: postgres.
    • Теги: теги, которые будут назначены экземпляру. Назначение тега можно отменить, нажав на крестик icon-cross-grey рядом с его именем.
  5. Нажмите ВЫПОЛНИТЬ.

Существующий экземпляр будет добавлен и появится в таблице экземпляров.

Создание экземпляра из резервной копии

За более подробной информацией о резервных копиях обратитесь к разделу Резервное копирование.

Перед выполнением этой процедуры создайте резервную копию.

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. В правом верхнем углу страницы нажмите Добавить экземпляр.

    Откроется окно создания экземпляра.

  3. На этапе Общее выберите Создать новый экземпляр из резервной копии и нажмите ДАЛЕЕ.

  4. На этапе Выбор резервной копии укажите подробную информацию о резервной копии, из которой будет создан экземпляр (помеченные звёздочкой параметры являются обязательными):

    • Каталог: каталог хранилища, в который помещена резервная копия.
    • Экземпляр: экземпляр, для которого создана резервная копия.
    • Период: период времени, в который была создана резервная копия.
    • Резервная копия: резервная копия, из которой будет создан экземпляр.
  5. Нажмите ДАЛЕЕ и на этапе Параметры экземпляра укажите подробную информацию о новом экземпляре (помеченные звёздочкой параметры являются обязательными):

    • Название: уникальное имя экземпляра.

    • Сервер: сервер, на котором будет установлен экземпляр.

    • Системный пользователь: пользователь операционной системы, которому будут принадлежать файлы и каталоги экземпляра, и от имени которого будет запущена служба экземпляра. В большинстве случаев таким пользователем является posgtres. Рекомендуется убедиться, что указанный пользователь существует в операционной системе.

    • Основной каталог данных: путь к каталогу на сервере, в котором будут размещены основные каталоги и файлы экземпляра.

    • Адрес подключения и Порт подключения: сетевой адрес и номер порта, которые экземпляр будет использовать для приёма клиентских подключений. Сетевой адрес по умолчанию: localhost.

    • Теги: теги, которые будут назначены экземпляру. Назначение тега можно отменить, нажав на крестик icon-cross-grey рядом с его именем.

    • Резервная копия: резервная копия, из которой будет создан экземпляр. Значение подставляется автоматически.

    • Размер РК: размер резервной копии, из которой будет создан экземпляр. Значение подставляется автоматически.

    • Точка восстановления: состояние, которое необходимо восстановить для экземпляра. Возможные значения:

      • ---: восстановить последнее состояние экземпляра в рамках резервной копии. Это значение по умолчанию.
      • Время: восстановить состояние экземпляра на конкретную дату и время в рамках резервной копии. Для этого значения в поле Время укажите дату и время.
      • LSN: восстановить состояние экземпляра, соответствующее конкретному последовательному номеру в WAL. Для этого значения в поле LSN введите последовательный номер в WAL.
      • Транзакция: восстановить состояние экземпляра, соответствующее конкретному номеру транзакции. Для этого значения в поле Транзакция введите номер транзакции.

      Для значений Время, LSN и Транзакция дополнительно необходимо указать следующие параметры:

      • Восстановить включая указанное значение: указывает, следует ли восстановить состояние для экземпляра до указанного значения включительно. Этот флажок установлен по умолчанию.

        Например, если в поле Транзакция вы ввели 123456 и установили флажок Восстановить включая указанное значение, для экземпляра будет восстановлено состояние, соответствующее транзакции 123456. Если вы не установили этот флажок, для экземпляра будет восстановлено состояние, соответствующее транзакции 123455.

      • Действие после восстановления: указывает, какое действие следует выполнить на сервере после восстановления состояния для экземпляра. Возможные значения:

        • Приостановить восстановление (pause): приостановить создание экземпляра из резервной копии. Позволяет убедиться перед созданием экземпляра, что для него было восстановлено правильное состояние. Это значение по умолчанию.
        • Завершить восстановление (promote): создать экземпляр из резервной копии и начать принимать клиентские подключения.
        • Выключить инстанс (shutdown): создать экземпляр из резервной копии и остановить сервер.
    • Частичное восстановление: указывает, какие базы данных будут восстановлены в экземпляре, или наоборот исключены из процесса восстановления. Возможные значения:

      • Не использовать: восстановить все базы данных в экземпляре. Это значение по умолчанию.
      • Исключить некоторые БД: исключить конкретные базы данных из процесса восстановления.
      • Восстановить некоторые БД: восстановить конкретные базы данных в экземпляре.

      Для значений Исключить некоторые БД и Восстановить некоторые БД укажите имя базы данных с помощью параметра Базы данных и нажмите ДОБАВИТЬ БАЗУ ДАННЫХ. Вы можете добавить несколько имён баз данных. Имя базы данных можно удалить, нажав на значок корзины icon-delete рядом с ним.

    • Проверка доступного пространства: позволяет провести проверку свободного дискового пространства на сервере, чтобы убедиться, что дискового пространства будет достаточно для создания экземпляра из резервной копии. Чтобы запустить проверку, нажмите ПРОВЕРИТЬ.

  6. Нажмите ВЫПОЛНИТЬ.

Экземпляр будет создан из резервной копии и появится в таблице экземпляров.

Просмотр экземпляров

Чтобы просмотреть экземпляры, в разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

Отобразится таблица экземпляров со следующими столбцами:

  • Название:

    • Уникальное имя экземпляра.
    • Версия PostgreSQL: версия и редакция Postgres Pro на сервере экземпляра.
    • Каталог данных: путь к каталогу на сервере, в котором размещаются основные каталоги и файлы экземпляра.
    • Порт: номер порта, который экемпляр использует для приёма клиентских подключений.

    Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Сервер:

    • FQDN сервера экземпляра.

    • IP-адрес сервера экземпляра.

    • Статус экземпляра. Возможные значения:

      • Неизвестно: статус экземпляра неизвестен.
      • Подготовка инициализации: происходит подготовка к инициализации экземпляра.
      • Инициализация: происходит инициализация экземпляра.
      • Инициализация завершена: инициализация экземпляра завершена.
      • Восстановление: происходит создание экземпляра из резервной копии.
      • Восстановлено: экземпляр создан из резервной копии.
      • Восстановление отменено: создание экземпляра из резервной копии было отменено.
      • Запуск: происходит запуск экземпляра.
      • Запущен: экземпляр запущен.
      • Остановка: происходит остановка экземпляра.
      • Остановлен: экземпляр остановлен.
      • Перезапуск: происходит перезапуск экземпляра.
      • Перезагрузка: происходит перезагрузка экземпляра.
      • Ошибка: произошла ошибка, связанная с экземпляром.
      • Расписание удаляется: происходит подготовка к удалению экземпляра.
      • Базовое резервное копирование: происходит создание резервной копии для экземпляра.
      • Агент не отвечает: агент, установленный на сервере экземпляра, не отвечает.

    Значения в этом столбце можно фильтровать с помощью соответствующего значка.

  • Роль: роль экземпляра. Возможные значения:

    • primary: экземпляр является ведущим узлом в кластере репликации и обеспечивает репликацию данных на ведомые узлы.
    • standby: экземпляр является ведомым узлом в кластере репликации и принимает реплицированные данные от ведущего узла.
    • cascade: экземпляр является ведомым узлом в кластере потоковой репликации, принимает реплицированные данные от ведущего узла и одновременно обеспечивает репликацию данных на другие ведомые узлы.
    • standalone: экземпляр является отдельным узлом и не добавлен в кластер репликации.

    За подробной информацией о репликации данных обратитесь к официальной документации Postgres Pro.

    Значения в этом столбце можно фильтровать с помощью соответствующего значка.

  • БД:

    • Базы данных: уникальные имена баз данных.
    • Транзакций в секунду: количество транзакций в секунду в базах данных.
    • Соединения: количество клиентских подключений к базам данных.
  • Теги: назначенные экземпляру теги. Значения в этом столбце можно фильтровать с помощью соответствующего значка.

С таблицей экземпляров можно выполнить следующие действия:

  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.

Проверка целостности каталога экземпляра

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

Чтобы проверить целостность каталога экземпляра, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите Проверить целостность каталога icon-validate рядом с экземпляром, для каталога которого необходимо выполнить проверку целостности.

    Откроется окно запуска проверки целостности.

  3. Нажмите ЗАПУСТИТЬ.

Начнётся проверка целостности каталога экземпляра. Чтобы просмотреть результат, в разделе УПРАВЛЕНИЕ навигационной страницы перейдите на страницу Консоль заданий и нажмите Показать журнал рядом с заданием, которое было автоматически создано для проверки целостности каталога экземпляра.

Остановка и запуск экземпляра

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите Остановить icon-stop или Запустить icon-start рядом с экземпляром, который необходимо остановить или запустить.

  3. Чтобы остановить экземпляр, в открывшемся окне нажмите ОСТАНОВИТЬ.

Экземпляр будет остановлен или запущен.

Перезапуск экземпляра

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите Перезапустить icon-restart рядом с экземпляром, который необходимо перезапустить.

    Откроется окно перезапуска экземпляра.

  3. Нажмите ПЕРЕЗАПУСТИТЬ.

Экземпляр будет перезапущен.

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

За более подробной информацией о резервных копиях обратитесь к разделу Резервное копирование.

Чтобы создать резервную копию, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите Создать резервную копию icon-backup рядом с экземпляром, для которого необходимо создать резервную копию.

    Откроется окно создания резервной копии.

  3. На этапе Общее укажите подробную информацию о новой резервной копии (помеченные звёздочкой параметры являются обязательными):

    • Экземпляр: экземпляр, для которого будет создана резервная копия. Значение подставляется автоматически.

    • Хранилище копий: хранилище, в которое будет помещена резервная копия. Можно выбрать локальное или S3-хранилище. Локальное хранилище должно находиться на одном сервере с экземпляром, для которого вы создаёте резервную копию.

    • Пользователь и Пароль: имя и пароль пользователя СУБД, от имени которого будет выполнено резервное копирование.

    • База данных: база данных для подключения к экземпляру.

    • Режим копирования: режим резервного копирования, в котором будет создана резервная копия. Возможные значения:

      • full. Это значение по умолчанию.
      • page.
      • ptrack.
      • delta.

      За подробной информацией о режимах резервного копирования обратитесь к официальной документации Postgres Pro по pg_probackup.

    • Количество потоков: количество параллельных потоков, которые будут запущены при создании резервной копии.

    • Время ожидания (сек): таймаут в секундах для ожидания архивирования сегментов WAL и потоковой передачи. Значение по умолчанию: 300.

    • Создать автономную резервную копию: указывает, следует ли создать потоковую (stream) резервную копию с записями WAL, необходимыми для последующего восстановления экземпляра. По умолчанию этот флажок снят.

    • Слот репликации: слот репликации, который будет использован для передачи записей WAL.

    • Создать временный слот репликации: указывает, следует ли создать временный слот репликации для передачи записей WAL экземпляра, для которого вы создаёте резервную копию. По умолчанию этот флажок снят. Если он установлен, сегменты WAL остаются доступны, даже если при создании резервной копии происходит их переключение.

  4. Нажмите ДАЛЕЕ и на этапе Дополнительно при необходимости укажите дополнительную информацию:

    • Внешние каталоги: путь к каталогу экземпляра, который будет дополнительно включён в резервную копию.

    • Включить каталог log: указывает, следует ли включить в резервную копию каталог с журналами активности экземпляра. По умолчанию этот флажок снят.

    • Не проверять копию: указывает, следует ли пропустить автоматическую проверку созданной резервной копии. По умолчанию этот флажок снят. Если он установлен, резервная копия создаётся быстрее.

    • Растягивать выполнение контрольной точки: указывает, следует ли начать создание резервной копии только после выполнения запланированной контрольной точки. По умолчанию этот флажок снят.

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

    • Уровень сжатия: уровень сжатия файлов при создании резервной копии. Можно указать значение от 0 до 9, где 0 — выключить сжатие файлов, а 9 — использовать наилучшее сжатие файлов. Значение по умолчанию: 0.

    • Алгоритм сжатия: алгоритм, используемый при сжатии файлов. Этот параметр доступен, только если в поле Уровень сжатия вы ввели значение больше 0. Возможные значения:

      • zlib
      • lz4
      • zstd
      • pglz
    • Закрепление: параметры закрепления резервной копии. Возможные значения:

      • Не закреплять: не закреплять резервную копию. При выборе этого значения используются параметры, указанные в разделе Параметры хранения. Это значение по умолчанию.
      • ttl: резервную копию невозможно удалить на протяжении конкретного количества дней после её создания. Для этого значения в поле Срок хранения, дни введите количество дней.
      • expire-time: резервную копию невозможно удалить до конкретной даты и времени. Для этого значения в поле Срок хранения до укажите дату и время.
    • Параметры хранения: параметры хранения резервных копий. Доступные параметры:

      • Retention redundancy (избыточность): максимальное количество полных резервных копий в хранилище. Например, если вы указываете 3, в хранилище могут быть не более трёх полных резервных копий.

        Чтобы отключить это ограничение, укажите 0. В этом случае максимальное количество полных резервных копий в хранилище не ограничено.

      • Retention window (окно): количество дней суток, покрываемое резервными копиями в хранилище. Например, если вы указываете 7, в хранилище всегда должны быть резервные копии, необходимые для восстановления данных за последние семь дней, включая текущий день.

        Чтобы отключить это ограничение, укажите 0. В этом случае резервные копии могут быть удалены из хранилища в любой момент.

      • WAL depth (глубина WAL): минимальное количество резервных копий на каждой линии времени в хранилище. Резервные копии на каждой линии времени необходимы для обеспечения восстановления на определённый момент времени (PITR). Например, если вы указываете 3, в хранилище всегда должны быть как минимум три резервные копии на каждой линии времени.

        Чтобы отключить это ограничение, укажите 0. В этом случае восстановление на определённый момент времени невозможно.

      • Просроченные копии: политика управления устаревшими резервными копиями. Возможные значения:

        • Объединять: при возможности объединять устаревшие резервные копии с новыми.
        • Удалять: удалять устаревшие резервные копии из хранилища.
        • Удалить просроченные WAL: удалять WAL устаревших резервных копий из хранилища.

        Все флажки можно установить одновременно.

      Параметры Retention redundancy, Retention window и WAL depth применяются, только если в разделе Просроченные копии вы установили флажок Объединять и/или Удалять.

      При удалении устаревших резервных копий из хранилища значения параметров Retention redundancy и Retention window учитываются одновременно. Например, если в поле Retention redundancy вы ввели 3, а в поле Retention window7, будут сохранены не более трёх полных резервных копий, а также все резервные копии, необходимые для восстановления данных за последние семь дней, включая текущий день.

      Параметры хранения дополнительно можно настроить для экземпляра, а также для хранилища при создании и редактировании хранилища. Применяется следующий приоритет:

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

      Обратите внимание, что приоритет относится к каждому отдельному параметру хранения, а не ко всем параметрам одновременно. Например, может возникнуть ситуация, при которой используется параметр Retention window, указанный для экземпляра, и параметр WAL depth, указанный для хранилища.

      За более подробной информацией о параметрах хранения обратитесь к официальной документации Postgres Pro по pg_probackup.

  5. Нажмите ВЫПОЛНИТЬ РК.

Резервная копия будет создана.

Редактирование набора предопределённых параметров экземпляра

К экземпляру можно применить другой набор предопределённых параметров.

Чтобы отредактировать набор предопределённых параметров экземпляра, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите Пресеты конфигурации icon-gear рядом с экземпляром, к которому необходимо применить другой набор предопределённых параметров.

    Откроется окно редактирования набора предопределённых параметров.

  3. Выберите новый набор предопределённых параметров из выпадающего списка.

  4. Нажмите ПРИМЕНИТЬ.

Редактирование экземпляра

При редактировании экземпляра его можно назначить экземпляром репозитория.

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите Редактировать icon-pencil рядом с экземпляром, который необходимо отредактировать.

    Откроется окно редактирования экземпляра.

  3. Измените параметры экземпляра.

  4. Нажмите СОХРАНИТЬ.

Экземпляр будет отредактирован, изменения отобразятся в таблице экземпляров.

Назначение экземпляра репозитория

База данных репозитория размещается в экземпляре. Этот экземпляр, как и другие экземпляры, можно создать в веб-приложении. Вам нужно вручную указать, в каком из экземпляров в веб-приложении размещается база данных репозитория.

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите Редактировать icon-pencil рядом с экземпляром, в котором размещена база данных репозитория.

    Откроется окно редактирования экземпляра.

  3. Установите флажок Экземпляр репозитория EM. По умолчанию этот флажок снят.

  4. Нажмите СОХРАНИТЬ.

Удаление экземпляра

ПРЕДУПРЕЖДЕНИЕ

После удаления экземпляры нельзя восстановить.

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите Удалить из EM icon-delete рядом с экземпляром, который необходимо удалить.

    Откроется окно удаления экземпляра.

  3. Нажмите УДАЛИТЬ.

Экземпляр будет удалён и перестанет отображаться в таблице экземпляров.

Табличные пространства

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

За подробной информацией о табличных пространствах обратитесь к официальной документации Postgres Pro.

В этом разделе описано, как управлять табличными пространствами, и приведены следующие инструкции:

Создание табличного пространства

Чтобы создать табличное пространство, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, в котором необходимо создать табличное пространство.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Табличные пространства.

    Отобразится таблица табличных пространств.

  4. В правом верхнем углу страницы нажмите СОЗДАТЬ ПРОСТРАНСТВО.

    Откроется окно создания табличного пространства.

  5. Укажите подробную информацию о новом табличном пространстве (помеченные звёздочкой параметры являются обязательными):

    • Экземпляр: экземпляр, которому будет принадлежать табличное пространство. Значение подставляется автоматически.
    • Название: уникальное имя табличного пространства.
    • Каталог: путь к каталогу, в котором будет размещено табличное пространство.
    • Владелец: пользователь СУБД, которому будет принадлежать табличное пространство.
    • seq_page_cost: значение параметра seq_page_cost, которое будет присвоено табличному пространству.
    • random_page_cost: значение параметра random_page_cost, которое будет присвоено табличному пространству.
    • effective_io_concurrency: значение параметра effective_io_concurrency, которое будет присвоено табличному пространству.
    • maintenance_io_concurrency: значение параметра maintenance_io_concurrency, которое будет присвоено табличному пространству.
    • Compression: использование файловой системы с функцией сжатия CFS. Возможные варианты алгоритмов сжатия: zstd, lz4, pglz и zlib. Функциональность доступна только для Postgres Pro Enterprise.

    При создании табличного пространства создается каталог в файловой системе и затем с помощью CREATE TABLESPACE создается табличное пространство. Создать табличное пространство можно и в уже существующем каталоге, однако в таком случае каталог должен быть пуст.

  6. Нажмите СОХРАНИТЬ.

Табличное пространство будет создано и появится в таблице табличных пространств.

Просмотр табличных пространств

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, в котором необходимо просмотреть табличные пространства.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Табличные пространства.

Отобразится таблица табличных пространств со следующими столбцами:

  • Название: уникальное имя табличного пространства. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.
  • Экземпляр: экземпляр, в котором создано табличное пространство.
  • Владелец: пользователь СУБД, являющийся владельцем табличного пространства.
  • Путь: каталог табличного пространства в файловой системе.
  • Конфигурационные параметры: дополнительные параметры конфигурации, специфичные для табличных пространств.
  • Размер: общий размер объектов внутри табличного пространства.
  • Действия: действия, которые можно выполнить с табличным пространством. За подробной информацией о действиях с табличными пространствами обратитесь к другим инструкциям в этом разделе.

С таблицей табличных пространств можно выполнить следующие действия:

  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.

Редактирование табличного пространства

Табличные пространства можно переименовать. При редактировании табличного пространства выполняется SQL-команда ALTER TABLESPACE.

ПРИМЕЧАНИЕ

Системные табличные пространства редактировать нельзя.

Чтобы отредактировать табличное пространство, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, в котором создано табличное пространство.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Табличные пространства.

    Отобразится таблица табличных пространств.

  4. Нажмите Редактировать icon-pencil рядом с табличным пространством, которое необходимо отредактировать.

    Откроется окно редактирования табличного пространства.

  5. Измените имя табличного пространства.

  6. Нажмите СОХРАНИТЬ.

Табличное пространство будет отредактировано, изменения отобразятся в таблице табличных пространств.

Удаление табличного пространства

ПРЕДУПРЕЖДЕНИЕ

После удаления табличные пространства нельзя восстановить.

При удалении табличного пространства выполняется SQL-команда DROP TABLESPACE.

ПРИМЕЧАНИЯ

  • Удалить можно только пустое табличное пространство.
  • Перед удалением табличного пространства переместите или удалите все находящиеся в нём объекты.
  • Системные табличные пространства удалить нельзя.

Чтобы удалить табличное пространство, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, в котором создано табличное пространство.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Табличные пространства.

    Отобразится таблица табличных пространств.

  4. Нажмите Удалить icon-delete рядом с табличным пространством, которое необходимо удалить.

    Откроется окно удаления табличного пространства.

  5. Нажмите УДАЛИТЬ.

Табличное пространство будет удалено и перестанет отображаться в таблице табличных пространств.

Базы данных

PPEM позволяет работать с базами данных, схемами, таблицами, индексами, функциями и последовательностями.

Управление базами данных

В этом разделе описано, как управлять базами данных, и приведены следующие инструкции:

Создание базы данных

Чтобы создать базу данных, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. В правом верхнем углу страницы нажмите СОЗДАТЬ БАЗУ ДАННЫХ.

    Откроется окно создания базы данных.

  3. Укажите подробную информацию о новой базе данных (помеченные звёздочкой параметры являются обязательными):

    • Экземпляр: экземпляр, в котором будет создана база данных.
    • Название БД: уникальное имя базы данных.
    • Владелец БД: владелец базы данных.
    • Кодировка (ENCODING): кодировка символов в новой базе данных.
    • Категория сортировки (LC_COLLATE): устанавливает значение LC_COLLATE в окружении операционной системы сервера баз данных.
    • Категория типов символов (LC_CTYPE): устанавливает значение LC_CTYPE в окружении операционной системы сервера баз данных.
    • Табличное пространство: табличное пространство, в котором будет создана база данных.
    • Разрешить соединения: указывает, будет ли база данных доступна для подключений.
    • Ограничение количества соединений: лимит одновременно установленных сеансов к базе данных.
    • Является ли шаблоном: указывает, будет ли созданная база данных шаблоном.
    • Шаблон: шаблон базы данных.
  4. Нажмите СОХРАНИТЬ.

База данных будет создана и появится в таблице баз данных.

Просмотр баз данных

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

Таблица баз данных содержит следующие столбцы:

  • Имя БД: уникальное имя базы данных. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Общий размер: размер базы данных. Горизонтальный индикатор показывает размер таблиц, раздувания и индексов. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Wraparound: количество свободных идентификаторов транзакций в базе данных (в процентах).

  • Экземпляр: экземпляр, в котором создана база данных.

  • Сбор данных: объём, в котором агенты собирают служебную информацию с экземпляров.

  • Таблицы: общая информация о таблицах:

    • Количество таблиц
    • Размер таблиц
    • Процент раздувания таблиц
  • Индексы: общая информация об индексах:

    • Количество индексов
    • Размер индексов
    • Процент раздувания индексов
  • Действия: действия, которые можно выполнить с базой данных. За подробной информацией о действиях с базами данных обратитесь к другим инструкциям в этом разделе.

С таблицей баз данных можно выполнить следующие действия:

  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.

Размер базы данных рассчитывается как сумма размеров всех реляционных объектов базы данных. Такой подход позволяет исключить избыточный вызов функции pg_database_size, которая использует рекурсивный обход директорий и файлов и может негативно влиять на производительность основной рабочей нагрузки экземпляра.

ПРЕДУПРЕЖДЕНИЕ

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

Запуск терминала PSQL

Терминал PSQL предоставляет низкоуровневый доступ к экземпляру СУБД и предназначен для тех случаев, когда возможностей PPEM недостаточно. Он предоставляет большую часть функциональности классического psql, но всё же имеет ограничения. Например, вызов мета-команды \! для запуска shell-команд запрещён.

При запуске терминала используются параметры подключения к экземпляру СУБД.

Чтобы запустить терминал PSQL, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите PSQL рядом с базой данных, для которой необходимо запустить терминал.

Откроется окно терминала PSQL. В правом верхнем углу окна можно развернуть терминал на полный экран, открыть в отдельном окне или закрыть и выйти из него.

Сбор статистики планировщика

При сборе статистики планировщика выполняется SQL-команда ANALYZE.

Чтобы запустить сбор статистики планировщика, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsAnalyze рядом с базой данных, для которой необходимо запустить сбор статистики.

    Откроется окно сбора статистики.

  4. Задайте необходимые параметры (помеченные звёздочкой параметры являются обязательными):

    • Задать выполнение cron-строкой: позволяет задать расписание выполнения операции в формате crontab.
    • Планирование задачи: позволяет запланировать выполнение задачи.
  5. Нажмите ПРИМЕНИТЬ.

  6. Подтвердите выполнение операции.

Сбор статистики будет запущен в асинхронном режиме.

ПРИМЕЧАНИЕ

Для сбора статистики планировщика используется SQL-команда ANALYZE. Как правило, сбор статистики не требует значительных ресурсов. Тем не менее его продолжительность зависит от количества таблиц и столбцов и может занимать длительное время.

Чтобы отследить ход сбора статистики планировщика, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится страница Активность.

  4. Выберите вкладку СБОР СТАТИСТИКИ.

Отобразится статистика планировщика.

Переиндексация

При переиндексации выполняется SQL-команда REINDEX.

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsReindex рядом с базой данных, для которой необходимо перестроить индексы.

    Откроется окно перестроения индексов.

  4. Задайте необходимые параметры (помеченные звёздочкой параметры являются обязательными):

    • Concurrently: указывает, следует ли выполнить операцию в неблокирующем режиме. Это наиболее безопасный режим, который позволяет избежать блокировки работы соседних сеансов за счёт некоторого замедления самого процесса переиндексации. Это режим по умолчанию.
    • Табличное пространство: табличное пространство, в котором будут создаваться новые индексы.
    • Задать выполнение cron-строкой: позволяет задать расписание выполнения операции в формате crontab.
    • Планирование задачи: позволяет запланировать выполнение задачи.
  5. Нажмите ПРИМЕНИТЬ.

  6. Подтвердите выполнение операции.

Задача на перестроение индексов будет запущена.

ПРИМЕЧАНИЕ

Для переиндексации используется SQL-команда REINDEX. Чтобы выполнить эту операцию, могут потребоваться значительные ресурсы в зависимости от количества и размера индексов, поэтому ход перестроения индексов рекомендуется отслеживать.

Чтобы отследить ход перестроения индексов, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится страница Активность.

  4. Выберите вкладку ИНДЕКСАЦИЯ.

Отобразится информация о перестроении индексов базы данных.

Запуск очистки

Вы можете запустить очистку от устаревших версий строк по всем таблицам базы данных. При этом выполняется SQL-команда VACUUM.

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsVacuum рядом с базой данных, для которой необходимо запустить очистку.

    Откроется окно запуска очистки.

  4. Задайте необходимые параметры (помеченные звёздочкой параметры являются обязательными):

    • Режимы: режимы очистки таблиц. Возможные значения:

      • Analyze: обновляет статистику, которую планировщик использует для выбора наиболее эффективного способа выполнения запроса.
      • Full: выполняет полную очистку через перестроение файлов таблицы. Обратите внимание, что на время выполнения очистки в этом режиме все сеансы, работающие с перестраиваемыми таблицами, будут заблокированы.
      • Freeze: выполняет агрессивную «заморозку» строк для продвижения горизонта заморозки и освобождения идентификаторов транзакций для дальнейшего переиспользования. Агрессивная заморозка всегда выполняется при перезаписи таблицы, поэтому если выбран режим Full, режим Freeze выбирать не нужно.
    • Задать выполнение cron-строкой: позволяет задать расписание выполнения операции в формате crontab.

    • Планирование задачи: позволяет запланировать выполнение задачи.

  5. Нажмите ПРИМЕНИТЬ.

  6. Подтвердите выполнение операции.

Задача на очистку будет запущена.

ПРИМЕЧАНИЕ

Для очистки таблиц используется SQL-команда VACUUM. Чтобы выполнить эту операцию, могут потребоваться значительные ресурсы в зависимости от количества и размера таблиц, поэтому ход очистки рекомендуется отслеживать.

Чтобы отследить ход перестроения индексов, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится страница Активность.

  4. Выберите вкладку ОЧИСТКА или КЛАСТЕРИЗАЦИЯ, если для очистки был выбран режим Full.

Отобразится информация об очистке таблиц.

Переименование базы данных

При переименовании базы данных выполняется SQL-команда ALTER DATABASE с предложением RENAME TO.

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsRename рядом с базой данных, которую необходимо переименовать.

    Откроется окно переименования базы данных.

  4. Укажите новое имя базы данных.

  5. Нажмите СОХРАНИТЬ.

База данных будет переименована, изменение отобразится в таблице баз данных.

Удаление базы данных

ПРЕДУПРЕЖДЕНИЕ

После удаления базы данных нельзя восстановить.

При удалении базы данных выполняется SQL-команда DROP DATABASE.

Чтобы удалить базу данных, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsDrop рядом с базой данных, которую необходимо удалить.

    Откроется окно удаления базы данных.

  4. Нажмите УДАЛИТЬ.

  5. Подтвердите выполнение операции.

База данных будет удалена и перестанет отображаться в таблице баз данных.

ПРЕДУПРЕЖДЕНИЕ

Для удаления базы данных используется SQL-команда DROP DATABASE. После подтверждения операции база данных и данные будут безвозвратно удалены. Отменить или откатить операцию не получится.

Схемы

В этом разделе описано, как управлять схемами, и приведены следующие инструкции:

Создание схемы

Чтобы создать схему, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на имя базы данных, в которой необходимо создать схему.

    Отобразится таблица схем.

  4. В правом верхнем углу страницы нажмите СОЗДАТЬ СХЕМУ.

    Откроется окно создания схемы.

  5. Укажите подробную информацию о новой схеме (помеченные звёздочкой параметры являются обязательными):

    • Название: уникальное имя схемы.
    • Владелец: владелец схемы.
  6. Нажмите СОЗДАТЬ.

Схема будет создана и появится в таблице схем.

Просмотр схем

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на имя базы данных, в которой необходимо просмотреть схемы.

Отобразится таблица схем со следующими столбцами:

  • Схемы: уникальное имя схемы. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Общий размер: размер всех объектов, входящих в схему. Горизонтальный индикатор показывает размер таблиц, раздувания и индексов.

  • Владелец: владелец схемы.

  • Таблицы: общая информация о таблицах:

    • Количество таблиц
    • Размер таблиц
    • Процент раздувания таблиц
  • Индексы: общая информация об индексах:

    • Количество индексов
    • Размер индексов
    • Процент раздувания индексов
  • Действия: действия, которые можно выполнить со схемой. За подробной информацией о действиях со схемами обратитесь к другим инструкциям в этом разделе.

С таблицей схем можно выполнить следующие действия:

  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.

Размер объектов схемы рассчитывается как сумма размеров всех входящих в неё реляционных объектов.

ПРЕДУПРЕЖДЕНИЕ

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

Редактирование схемы

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

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

    Отобразится таблица схем.

  4. Нажмите Редактировать icon-pencil рядом со схемой, которую необходимо отредактировать.

    Откроется окно редактирования схемы.

  5. В окне измените параметры схемы.

  6. Нажмите СОХРАНИТЬ.

Схема будет отредактирована, изменения отобразятся в таблице схем.

Удаление схемы

ПРЕДУПРЕЖДЕНИЕ

После удаления схемы нельзя восстановить.

Чтобы удалить схему, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

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

    Отобразится таблица схем.

  4. Нажмите Удалить icon-delete рядом со схемой, которую необходимо удалить.

    Откроется окно удаления схемы.

  5. Нажмите УДАЛИТЬ. Чтобы удалить все вложенные объекты схемы, активируйте переключатель Каскадное удаление.

  6. Подтвердите выполнение операции.

Схема будет удалена и перестанет отображаться в таблице схем.

ПРЕДУПРЕЖДЕНИЕ

Для удаления схемы базы данных используется SQL-команда DROP SCHEMA. После подтверждения операции схема будет безвозвратно удалена. Отменить или откатить операцию не получится.

Таблицы

В этом разделе описано, как управлять таблицами, и приведены следующие инструкции:

Создание таблицы

Чтобы создать таблицу, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на имя базы данных.

    Отобразится таблица схем.

  4. Нажмите на имя схемы, в которой необходимо создать таблицу.

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  5. В правом верхнем углу страницы нажмите СОЗДАТЬ ТАБЛИЦУ.

    Откроется окно создания таблицы.

  6. Укажите подробную информацию о новой таблице (помеченные звёздочкой параметры являются обязательными):

    • Название: уникальное имя таблицы.

    • Табличное пространство: табличное пространство, в котором будет создана таблица.

    • Колонки: столбцы создаваемой таблицы. Чтобы добавить столбец таблицы, выполните следующие действия:

      1. Нажмите ДОБАВИТЬ + и задайте параметры столбца (помеченные звёздочкой параметры являются обязательными):

        • Название: уникальное имя столбца.

        • Тип: тип данных столбца.

        • NOT NULL: указывает, что столбец не принимает значения NULL.

        • Значение по умолчанию: значение по умолчанию, заданное в столбце.

        • Первичный ключ: ограничение PRIMARY KEY определяет, что столбец или столбцы таблицы могут содержать только уникальные (без повторений) значения, отличные от NULL.

          1. Нажмите ДОБАВИТЬ +, чтобы указать параметры хранения первичного ключа:

        • Уникальный ключ: ограничение UNIQUE определяет, что группа из одного или нескольких столбцов таблицы может содержать только уникальные значения.

          1. Нажмите ДОБАВИТЬ +, чтобы указать параметры хранения уникального ключа:

        • Выражение ограничения: ограничение столбца.

        • Метод сжатия: метод сжатия для столбца. Возможные значения:

          • pglz
          • lz4
      2. Нажмите СОХРАНИТЬ.

    • Параметры хранения: параметры хранения таблицы. Чтобы задать параметр, нажмите ДОБАВИТЬ +, выберите его из выпадающего списка слева и укажите значение в поле справа.

    • UNLOGGED: указывает, что созданная таблица будет нежурналируемой.

  7. Нажмите СОХРАНИТЬ.

Таблица будет создана и появится на вкладке Таблицы.

Просмотр таблиц

Чтобы просмотреть таблицы схемы, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на имя базы данных.

    Отобразится таблица схем.

  4. Нажмите на имя схемы, в которой необходимо просмотреть таблицы.

Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ. Информация отображается в следующих столбцах таблицы:

  • Таблицы: уникальное имя таблицы в пределах схемы. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Общий размер: размер таблицы в байтах. Горизонтальный индикатор показывает:

    • Размер пользовательских данных таблицы и отдельный учёт раздувания.
    • Общий размер всех индексов таблицы и отдельный учёт раздувания в этих индексах.
    • Размер служебного TOAST-хранилища без учёта раздувания.

    Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • CFS: указывает, используется ли для таблицы сжатие CFS. Актуально только для редакции Postgres Pro Enterprise.

  • Данные: размер данных в байтах, отдельно в процентах указано раздувание.

  • Индексы: общее количество индексов, размер индексов в байтах и раздувание в процентах.

  • TOAST: размер служебного TOAST-хранилища без учёта раздувания.

  • Действия: действия, которые можно выполнить с таблицей:

    • Analyze: обновление статистики планировщика. Действие доступно при нажатии на значок трёх вертикальных точек icon-three-vertical-dots.
    • Reindex: перестроение индексов в таблице. Действие доступно при нажатии на значок трёх вертикальных точек icon-three-vertical-dots.
    • Vacuum: очистка от устаревших версий строк в таблице. Действие доступно при нажатии на значок трёх вертикальных точек icon-three-vertical-dots.
    • Редактировать: редактирование параметров схемы.
    • Удалить: удаление схемы.

С таблицей можно выполнить следующие действия:

  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.

ПРИМЕЧАНИЕ

После завершения операций обслуживания таблицы информация о размерах обновляется асинхронно.

На одной странице отображается 50 таблиц. Чтобы перейти на следующую страницу, воспользуйтесь кнопками постраничной навигации в правом нижнем углу страницы.

Просмотр информации о конкретной таблице

Чтобы отобразить информацию о конкретной таблице при просмотре таблиц схемы, на вкладке ТАБЛИЦЫ нажмите на имя таблицы, подробную информацию о которой необходимо просмотреть.

Отобразится страница выбранной таблицы со следующими вкладками:

  • СТРУКТУРА: информация о логической структуре таблицы и составе полей. Таблица вкладки содержит следующие столбцы:

    • Num: порядковый номер столбца в таблице.

    • Column name: уникальное имя столбца.

    • Data type: тип данных столбца.

    • Is nullable: указывает, можно ли в столбце хранить значения NULL.

    • Column default: значение по умолчанию в столбце.

    • Description: описание столбца в свободной форме.

    • Действия: действия, которые можно выполнить со столбцом:

      • Редактировать: редактирование столбца. Доступные параметры для редактирования:

        • Тип: тип данных.
        • NOT NULL: указывает, можно ли в столбце хранить значения NULL.
        • Значение по умолчанию: значение по умолчанию в столбце.
      • Удалить: удаление столбца.

  • ИНДЕКСЫ: информация об индексах таблицы. Таблица вкладки содержит следующие столбцы:

    • Индексы: уникальное имя индекса. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

    • Общий размер: общий размер индекса.

    • CFS: указывает, используется ли для индекса сжатие CFS.

    • Статус: статус индекса. Возможные значения:

    • valid: нормальное состояние индекса, при котором он доступен для использования в запросах.

    • invalid: индекс недоступен для использования в запросах. Этот статус указывает, что индекс находится в процессе создания или был поврежден.

    Значения в этом столбце можно фильтровать с помощью соответствующего значка.

    • Действия: действия, которые можно выполнить с индексом:

      • icon-warning: просмотр SQL-команды создания индекса. Отображается при наведении курсора на значок подсказки.
      • REINDEX: запустить перестроение индекса.
        • Редактировать: редактирование индекса. Доступные параметры для редактирования:
      • Название: уникальное имя индекса.
      • Табличное пространство: табличное пространство, в котором будет размещён индекс.
      • Удалить: удаление индекса.
  • ОГРАНИЧЕНИЯ: ограничения таблицы. Таблица вкладки содержит следующие столбцы:

    • Name: уникальное имя ограничения.
    • Definition: определение ограничения.
  • ХРАНЕНИЕ: структура хранения таблицы на диске. Для хранения основных и служебных данных таблицы используются следующие слои:

    • Основной слой (main): слой хранения основных пользовательских данных.
    • Карта свободного пространства (FSM): служебный слой с информацией о свободных участках в основном слое хранения.
    • Карта видимости (VM): служебный слой с информацией о видимых строках в основном слое хранения.
    • CFM: служебный слой для сжатия CFS.
    • TOAST: служебный слой для размещения больших значений, превышающих ограничения стандартного страничного хранения данных.

    Для каждого слоя в таблице приведены следующие столбцы:

    • Размер: размер файла слоя.
    • Табличное пространство: табличное пространство, в котором размещен слой.
    • Путь к файлу: путь к файлу слоя.
Редактирование таблицы

Чтобы отредактировать таблицу, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на имя базы данных.

    Отобразится таблица схем.

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

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  5. Нажмите Редактировать icon-pencil рядом с таблицей, которую необходимо отредактировать.

    Откроется окно редактирования таблицы.

  6. В окне измените параметры таблицы. Доступные параметры хранения перечислены в разделе Параметры хранения таблиц.

  7. Нажмите СОХРАНИТЬ.

Таблица будет отредактирована, изменения отобразятся на вкладке ТАБЛИЦЫ.

Удаление таблицы

ПРЕДУПРЕЖДЕНИЕ

После удаления таблицы нельзя восстановить.

Чтобы удалить таблицу, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на имя базы данных.

    Отобразится таблица схем.

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

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  5. Нажмите Удалить icon-delete рядом с таблицей, которую необходимо удалить.

    Откроется окно удаления таблицы.

  6. Нажмите УДАЛИТЬ.

Таблица будет удалена и перестанет отображаться на вкладке ТАБЛИЦЫ.

Параметры хранения таблиц

При создании или редактировании таблиц можно задать следующие параметры хранения:

Индексы

В этом разделе описано, как управлять индексами, и приведены следующие инструкции:

Создание индекса

Чтобы создать индекс, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на имя базы данных.

    Отобразится таблица схем.

  4. Нажмите на имя схемы.

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  5. Нажмите на имя таблицы, в которой необходимо создать индекс.

    Отобразится страница таблицы с выбранной вкладкой СТРУКТУРА.

  6. В правом верхнем углу страницы нажмите СОЗДАТЬ ИНДЕКС.

    Откроется окно создания индекса.

  7. Укажите подробную информацию о новом индексе (помеченные звёздочкой параметры являются обязательными):

    • Название: уникальное имя индекса.

    • Concurrently построение: указывает, что индекс будет создан в особом режиме, который минимизирует количество блокировок и снижает их риск при конкурентной рабочей нагрузке.

    • Unique индекс: указывает, что индекс будет создан с контролем повторяющихся значений в таблице. Контроль будет осуществляться как при создании индекса, так и при дальнейшем добавлении новых значений в индекс.

    • Столбцы: столбцы, которые войдут в индекс. Доступные действия:

      • Чтобы добавить столбец, нажмите ДОБАВИТЬ СТОЛБЕЦ + и выберите столбец из списка.
      • Чтобы удалить столбец, нажмите на значок корзины icon-delete.
  8. (Необязательно) Активируйте переключатель Расширенные настройки в правом верхнем углу окна, чтобы задать дополнительные параметры:

    • Табличное пространство: табличное пространство, в котором будет размещён индекс.

    • Using метод: указывает метод доступа. Возможные значения:

    • btree (значение по умолчанию)

    • gin

    • gist

    • brin

    • hash

    • Where предикат: указывает условие индекса.

    • Столбцы:

      • Столбец: столбец из списка.

      • Класс операторов

      • Правило сортировки

      • Сортировка: порядок сортировки. Возможные значения:

        • По умолчанию
        • По возрастанию
        • По убыванию
      • Порядок Null: порядок сортировки значений NULL. Возможные значения:

        • По умолчанию
        • NULL вверху
        • NULL внизу
  9. Нажмите СОЗДАТЬ.

Индекс будет создан и появится в таблице индексов на вкладке ИНДЕКСЫ страницы соответствующей таблицы или страницы схемы, в которой создана таблица.

Просмотр индексов

Чтобы просмотреть индексы, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на имя базы данных.

    Отобразится таблица схем.

  4. Нажмите на имя схемы.

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  5. Нажмите на имя таблицы, в которой необходимо просмотреть индексы.

    Отобразится страница таблицы с выбранной вкладкой СТРУКТУРА.

  6. Выберите вкладку ИНДЕКСЫ.

Отобразится таблица индексов со следующими столбцами:

  • Индексы: уникальное имя индекса. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Общий размер: общий размер индекса.

  • CFS: указывает, используется ли для индекса сжатие CFS.

  • Статус: статус индекса. Возможные значения:

    • valid: нормальное состояние индекса, при котором он доступен для использования в запросах.
    • invalid: индекс недоступен для использования в запросах. Этот статус указывает, что индекс находится в процессе создания или был поврежден.

    Значения в этом столбце можно фильтровать с помощью соответствующего значка.

  • Действия: действия, которые можно выполнить с индексом. За подробной информацией о действиях с индексами обратитесь к другим инструкциям в этом разделе.

    Рядом с этим столбцом отображается значок восклицательного знака icon-exclamation. При наведении курсора на этот значок отображается SQL-команда создания индекса.

С таблицей индексов можно выполнить следующие действия:

  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.

ПРЕДУПРЕЖДЕНИЕ

Если индекс создаётся за пределами PPEM, информация о нём в веб-приложении может появляться с задержкой. Длительность задержки зависит от настроек агента и по умолчанию равна одной минуте.

Редактирование индекса

Чтобы отредактировать индекс, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на имя базы данных.

    Отобразится таблица схем.

  4. Нажмите на имя схемы.

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  5. Нажмите на имя таблицы, в которой создан индекс.

    Отобразится страница таблицы с выбранной вкладкой СТРУКТУРА.

  6. Выберите вкладку ИНДЕКСЫ.

    Отобразится таблица индексов.

  7. Нажмите Редактировать icon-pencil рядом с индексом, который необходимо отредактировать.

    Откроется окно редактирования индекса.

  8. В окне измените параметры индекса.

  9. Нажмите СОХРАНИТЬ.

Индекс будет отредактирован, изменения отобразятся в таблице индексов.

Переиндексация

Чтобы перестроить индекс, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на имя базы данных.

    Отобразится таблица схем.

  4. Нажмите на имя схемы.

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  5. Нажмите на имя таблицы, в которой создан индекс.

    Отобразится страница таблицы с выбранной вкладкой СТРУКТУРА.

  6. Выберите вкладку ИНДЕКСЫ.

    Отобразится таблица индексов.

  7. Нажмите REINDEX рядом с индексом, который необходимо перестроить.

    Откроется окно подтверждения со следующими параметрами:

    • Concurrently: указывает, следует ли выполнить операцию в неблокирующем режиме. Это наиболее безопасный режим, который позволяет избежать блокировки работы соседних сеансов за счёт некоторого замедления самого процесса переиндексации. Это режим по умолчанию. Возможные значения:

      • Да
      • Нет
    • Табличное пространство: табличное пространство, в котором будет выполнено перестроение индекса.

  8. Нажмите ВЫПОЛНИТЬ.

Будет запущена задача на перестроение индекса.

ПРИМЕЧАНИЕ

Для переиндексации используется SQL-команда REINDEX. Чтобы выполнить эту операцию, могут потребоваться значительные ресурсы, поэтому ход перестроения индексов рекомендуется отслеживать.

Чтобы отследить ход перестроения индексов, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится страница Активность.

  4. Выберите вкладку ИНДЕКСАЦИЯ.

Отобразится информация о перестроении индексов.

Удаление индекса

ПРЕДУПРЕЖДЕНИЕ

После удаления индексы нельзя восстановить.

Чтобы удалить индекс, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на имя базы данных.

    Отобразится таблица схем.

  4. Нажмите на имя схемы.

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  5. Нажмите на имя таблицы, в которой создан индекс.

    Отобразится страница таблицы с выбранной вкладкой СТРУКТУРА.

  6. Выберите вкладку ИНДЕКСЫ.

    Отобразится таблица индексов.

  7. Нажмите Удалить icon-delete рядом с индексом, который необходимо удалить.

    Откроется окно удаления индекса.

  8. Нажмите УДАЛИТЬ.

Индекс будет удалён и перестанет отображаться в таблице индексов.

Функции

В этом разделе описано, как управлять функциями, и приведены следующие инструкции:

Создание функции

Чтобы создать функцию, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на имя базы данных.

    Отобразится таблица схем.

  4. Нажмите на имя схемы, в которой необходимо создать функцию.

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  5. Выберите вкладку ФУНКЦИИ.

    Отобразится таблица функций.

  6. В правом верхнем углу страницы нажмите СОЗДАТЬ ФУНКЦИЮ.

    Откроется окно создания функции.

  7. Укажите подробную информацию о новой функции (помеченные звёздочкой параметры являются обязательными):

    • Название: уникальное имя функции.

    • Язык: процедурный язык функции.

    • Аргументы: аргументы функции. Возможные значения:

      • Имя: уникальное имя аргумента.

      • Режим аргумента: режим добавляемого аргумента. Возможные значения:

        • IN (входной), это значение по умолчанию
        • OUT (выходной)
        • INOUT (входной и выходной)
        • VARIADIC (переменный)
      • Тип: тип данных аргумента.

      • Значение по умолчанию: значение по умолчанию добавляемого аргумента.

    Нажмите ДОБАВИТЬ АРГУМЕНТ +, чтобы добавить аргумент.

    • Функция возвращает таблицу: указывает, что функция будет возвращать таблицу. При активации переключателя заполните параметры возвращаемой таблицы:

      • Имя: имя возвращаемого значения.
      • Тип: тип данных возвращаемого значения.

    Нажмите ДОБАВИТЬ ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ +, чтобы добавить возвращаемое значение.

    • Тип возвращаемого значения: тип данных значения, которое будет возвращать создаваемая функция. При активированном переключателе Функция возвращает таблицу этот параметр недоступен для редактирования.

    • Тело функции: тело функции на выбранном процедурном языке.

    • Window: указывает, что создаваемая функция будет оконной.

    • Optimizer: указывает атрибут, который информирует оптимизатор запросов о поведении функции. Возможные значения:

      • По умолчанию: значение по умолчанию — Volatile.
      • Immutable: характеристика Immutable (постоянная) показывает, что функция не может модифицировать базу данных и всегда возвращает один и тот же результат при определённых значениях аргументов; то есть, она не обращается к базе данных и не использует информацию, не переданную ей явно в списке аргументов. Если функция имеет такую характеристику, любой её вызов с аргументами-константами можно немедленно заменить значением функции.
      • Stable: характеристика Stable (стабильная) показывает, что функция не может модифицировать базу данных и в рамках одного сканирования таблицы она всегда возвращает один и тот же результат для определённых значений аргументов, но этот результат может быть разным в разных операторах SQL. Это подходящий выбор для функций, результаты которых зависят от содержимого базы данных и настраиваемых параметров (например, текущего часового пояса). (Но этот вариант не подходит для триггеров AFTER, желающих прочитать строки, изменённые текущей командой.) Также заметьте, что функции семейства current_timestamp также считаются стабильными, так как их результаты не меняются внутри транзакции.
      • Volatile: характеристика Volatile (изменчивая) показывает, что результат функции может меняться даже в рамках одного сканирования таблицы, так что её вызовы нельзя оптимизировать. Изменчивы в этом смысле относительно немногие функции баз данных, например: random(), currval() и timeofday(). Но заметьте, что любая функция с побочными эффектами должна быть классифицирована как изменчивая, даже если её результат вполне предсказуем, чтобы её вызовы не были оптимизированы; пример такой функции: setval().
    • Strict: указывает, что функция всегда будет возвращать NULL, если в одном из аргументов был передан NULL.

    • Leakproof: указывает, что функция не имеет побочных эффектов, поскольку не раскрывает информацию о своих аргументах, а только возвращает результат.

    • Security: указывает, с какими правами будет вызываться и выполняться функция. Возможные значения:

      • По умолчанию: значение по умолчанию — Invoker.
      • Invoker: указывает, что функция будет выполняться с правами пользователя, вызвавшего её.
      • Definer: указывает, что функция будет выполняться с правами пользователя, владеющего ей.
    • Parallel: указывает параметры вызова функции в параллельном режиме. Возможные значения:

      • По умолчанию: значение по умолчанию — Unsafe.
      • Unsafe: указывает, что создаваемую функцию нельзя будет выполнять в параллельном режиме и присутствие такой функции в операторе SQL приводит к выбору последовательного плана выполнения.
      • Restricted: указывает, что функцию можно выполнять в параллельном режиме, но только в ведущем процессе группы.
      • Safe: указывает, что функция безопасна для выполнения в параллельном режиме без ограничений, в том числе в параллельных рабочих процессах.
    • ПОКАЗАТЬ SQL: отображает SQL-запрос создания функции с заданными параметрами.

  8. Нажмите СОЗДАТЬ.

Функция будет создана и появится в таблице функций.

Просмотр функций

Чтобы просмотреть функции, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на имя базы данных.

    Отобразится таблица схем.

  4. Нажмите на имя схемы, в которой необходимо просмотреть функции.

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  5. Выберите вкладку ФУНКЦИИ.

Отобразится таблица функций со следующими столбцами:

  • Имя: уникальное имя функции или процедуры. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.
  • Аргументы: передаваемые функции аргументы с типами данных.
  • Возвращаемые значения: возвращаемые функцией значения с типами данных.
  • Список контроля доступа: права доступа к функции.
  • Действия: действия, которые можно выполнить с функцией. За подробной информацией о действиях с функциями обратитесь к другим инструкциям в этом разделе.

С таблицей функций можно выполнить следующие действия:

  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в левом верхнем углу таблицы нажмите Сбросить фильтры.
Редактирование функции

Чтобы отредактировать функцию, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на имя базы данных.

    Отобразится таблица схем.

  4. Нажмите на имя схемы, в которой создана функция.

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  5. Выберите вкладку ФУНКЦИИ.

    Отобразится таблица функций.

  6. Нажмите Редактировать icon-pencil рядом с функцией, которую необходимо отредактировать.

    Откроется окно редактирования функции.

  7. Измените параметры функции.

  8. Нажмите СОХРАНИТЬ.

Функция будет отредактирована, изменения отобразятся в таблице функций.

Удаление функции

ПРЕДУПРЕЖДЕНИЕ

После удаления функции нельзя восстановить

Чтобы удалить функцию, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. (Необязательно) Активируйте переключатель Показывать системные базы данных, чтобы отобразить в том числе системные БД. По умолчанию этот переключатель деактивирован.

  3. Нажмите на имя базы данных.

    Отобразится таблица схем.

  4. Нажмите на имя схемы, в которой создана функция.

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  5. Выберите вкладку ФУНКЦИИ.

    Отобразится таблица функций.

  6. Нажмите Удалить icon-delete рядом с функцией, которую необходимо удалить.

    Откроется окно удаления функции.

  7. Нажмите УДАЛИТЬ.

Функция будет удалена и перестанет отображаться в таблице функций.

Последовательности

В этом разделе описано, как управлять последовательностями, и приведены следующие инструкции:

Создание последовательности

Чтобы создать последовательность, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. Нажмите на имя базы данных.

    Отобразится таблица схем.

  3. Нажмите на имя схемы, в которой необходимо создать последовательность.

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  4. Выберите вкладку ПОСЛЕДОВАТЕЛЬНОСТИ.

    Отобразится таблица последовательностей.

  5. В правом верхнем углу страницы нажмите СОЗДАТЬ ПОСЛЕДОВАТЕЛЬНОСТЬ.

    Откроется окно создания последовательности.

  6. Укажите подробную информацию о новой последовательности (помеченные звёздочкой параметры являются обязательными):

    1. В поле Название введите уникальное имя последовательности.

    2. (Необязательно) В правом верхнем углу окна активируйте переключатель Расширенные настройки, чтобы задать дополнительные параметры:

      • Нежурналируемая: указывает, что изменения создаваемой последовательности не будут фиксироваться в WAL.

      • Cycle: указывает, что создаваемая последовательность будет зацикленной.

      • Тип данных: тип данных последовательности. Возможные значения:

        • По умолчанию (Bigint)
        • Smallint
        • Integer
        • Bigint
      • Мин. значение: наименьшее число, которое будет генерировать последовательность.

      • Макс. значение: наибольшее число, которое будет генерировать последовательность.

      • Начало: начальное значение последовательности.

      • Шаг: число, которое будет добавляться к текущему значению последовательности для получения нового значения.

      • Кеш: количество чисел последовательности, которое будет выделяться и сохраняться в памяти для ускорения доступа к ним.

  7. Нажмите СОЗДАТЬ.

Последовательность будет создана и появится в таблице последовательностей.

Просмотр последовательностей

Чтобы просмотреть последовательности, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. Нажмите на имя базы данных.

    Отобразится таблица схем.

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

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  4. Выберите вкладку ПОСЛЕДОВАТЕЛЬНОСТИ.

Отобразится таблица последовательностей со следующими столбцами:

  • Имя: уникальное имя последовательности. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.
  • Владелец: владелец последовательности. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.
  • Тип данных: тип данных значений последовательности.
  • Начало: начальное значение последовательности. Значения в этом столбце можно сортировать с помощью соответствующего значка.
  • Мин. значение и Макс. значение: минимально и максимально возможное значение последовательности. Значения в этих столбцах можно сортировать с помощью соответствующего значка.
  • Шаг: шаг изменения значений последовательности. Значения в этом столбце можно сортировать с помощью соответствующего значка.
  • Cycle: указывает, что последовательность является зацикленной и при достижении предела начинается заново.
  • Кеш: количество чисел последовательности, которое будет выделяться и сохраняться в памяти для ускорения доступа к ним. Значения в этом столбце можно сортировать с помощью соответствующего значка.
  • Last_value: последнее значение последовательности. Значения в этом столбце можно сортировать с помощью соответствующего значка.
  • Действия: действия, которые можно выполнить с последовательностью. За подробной информацией о действиях с последовательностями обратитесь к другим инструкциям в этом разделе.

С таблицей последовательностей можно выполнить следующие действия:

  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.
Редактирование последовательности

Чтобы отредактировать последовательность, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. Нажмите на имя базы данных.

    Отобразится таблица схем.

  3. Нажмите на имя схемы, в которой создана последовательность.

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  4. Выберите вкладку ПОСЛЕДОВАТЕЛЬНОСТИ.

    Отобразится таблица последовательностей.

  5. Нажмите Редактировать icon-pencil рядом с последовательностью, которую необходимо отредактировать.

    Откроется окно редактирования последовательности.

  6. В окне измените параметры последовательности.

  7. Нажмите СОХРАНИТЬ.

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

Удаление последовательности

ПРЕДУПРЕЖДЕНИЕ

После удаления последовательности нельзя восстановить.

Чтобы удалить последовательность, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Базы данных.

    Отобразится таблица баз данных.

  2. Нажмите на имя базы данных.

    Отобразится таблица схем.

  3. Нажмите на имя схемы, в которой создана последовательность.

    Отобразится страница схемы с выбранной вкладкой ТАБЛИЦЫ.

  4. Выберите вкладку ПОСЛЕДОВАТЕЛЬНОСТИ.

    Отобразится таблица последовательностей.

  5. Нажмите Удалить icon-delete рядом с последовательностью, которую необходимо удалить.

    Откроется окно удаления последовательности.

  6. Нажмите УДАЛИТЬ. Чтобы удалить все зависимые от последовательности объекты, активируйте переключатель Каскадное удаление.

Последовательность будет удалена и перестанет отображаться в таблице последовательностей.

Метрики

Ключевые показатели работы системы можно отслеживать с помощью графиков на основе метрик, собираемых pgpro-otel-collector.

Для работы графиков необходимо предварительно установить и настроить средств журналирования и мониторинга.

Кроме того, доступны SQL-метрики на основе статистик планирования и выполнения SQL–операторов, собираемые расширением pgpro_stats.

Основные метрики

Просмотр основных метрик

Чтобы просмотреть основные метрики, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, в котором необходимо просмотреть метрики.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Метрики.

    Отобразится страница Основные метрики с доступными графиками.

Графики по основным метрикам можно фильтровать по времени с помощью выпадающего списка Период в правом верхнем углу страницы.

Доступные графики

Чтобы скрыть или отобразить графики, нажмите ГРАФИКИ и выберите нужные. Доступны следующие графики:

  • WAL Archiver

    Количество заархивированных WAL-сегментов.

  • Vacuum workers.

    Количество операций очистки.

  • Background Writes: Buffers

    Объём фоновой записи из общего кеша на диск.

  • Background Writes: Maxwritten/Fsync

    График отображает динамику двух метрик:

    • maxwritten: количество случаев, когда процессу фоновой записи пришлось остановить запись по достижению лимита.
    • fsync: количество случаев вынужденного вызова fsync.
  • Background Writes: Checkpoints

    Количество контрольных точек.

  • Background Writes: Checkpoints Write/Sync

    Время, затраченное на запись и синхронизацию блоков во время выполнения контрольных точек.

  • Instance: Connections

    Соединения, установленные к экземпляру СУБД, и их состояние.

  • Instance: Blocks rate

    Утилизация общего кеша экземпляра СУБД: количество попаданий в кеш и количество промахов, приведших к необходимости чтения данных с диска.

  • Instance: Transactions rate

    Транзакционная активность в экземпляре СУБД.

  • Instance: Events

    События в экземпляре СУБД: взаимоблокировки, конфликты репликации, ошибки проверки контрольных сумм.

  • Instance: Tuples

    Рабочая нагрузка, выраженная в обработке строк: количество прочитанных, вставленных, обновлённых и удалённых строк.

  • Instance: Cache hit ratio

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

  • Instance: Temp bytes written

    Объём записи во временные файлы.

  • Instance: Temp files

    Количество временных файлов, записанных экземпляром СУБД.

  • Instance: Locks

    Динамика блокировок.

  • WAL: Written bytes

    Объём записи в WAL-журнал.

  • System: Load Average

    Средняя нагрузка на сервер.

  • System: Memory Usage

    Утилизация памяти сервера.

  • System: Swap Usage

    Утилизация области подкачки в системе.

  • System: Processes

    Состояние процессов в системе.

SQL-метрики

Создание SQL-метрики

Чтобы создать SQL-метрику, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, в котором необходимо создать SQL-метрику.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу МетрикиSQL-метрики.

    Отобразится таблица SQL-метрик.

  4. В правом верхнем углу страницы нажмите ДОБАВИТЬ SQL-МЕТРИКИ.

    Откроется окно создания SQL-метрики.

  5. Укажите подробную информацию о новой SQL-метрике (помеченные звёздочкой параметры являются обязательными):

    • Имя: уникальное имя метрики.
    • База данных: база данных, в которой будет выполняться запрос.
    • Пользователь: системная роль, от имени которой будет выполняться запрос.
    • Интервал сбора: частота сбора данных.
    • Запрос: SQL-запрос, по которому вычисляется метрика.
    • Требуется перезагрузка экземпляра: указывает, следует ли перезагрузить экземпляр. По умолчанию этот переключатель деактивирован.
  6. Нажмите СОХРАНИТЬ.

SQL-метрика будет создана и появится в таблице SQL-метрик.

Просмотр SQL-метрик

Чтобы просмотреть SQL-метрики, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, в котором необходимо просмотреть SQL-метрики.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу МетрикиSQL-метрики.

    Отобразится таблица SQL-метрик со следующими столбцами:

    • ID: идентификатор метрики.
    • Имя: уникальное имя метрики.
    • База данных: база данных, в которой выполняется запрос.
    • Пользователь: системная роль, от имени которой будет выполняться запрос.
    • Интервал: частота сбора данных.
    • Последнее значение: результат последнего выполненного запроса в формате JSON.
    • Получено: время последнего обновления данных.
    • Запрос: SQL-запрос, по которому вычисляется метрика.
    • Действия: действия, которые можно выполнить со SQL-метрикой. За подробной информацией о действиях с SQL-метриками обратитесь к другим инструкциям в этом разделе.

    Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.

  4. Чтобы просмотреть историю собранных данных, нажмите на имя метрики.

    Отобразится таблица с историей значений, для каждого из которых указано время сбора данных.

Редактирование SQL-метрики

Чтобы отредактировать SQL-метрику, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, в котором создана SQL-метрика.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу МетрикиSQL-метрики.

    Отобразится таблица SQL-метрик.

  4. Нажмите Редактировать icon-pencil рядом с SQL-метрикой, которую необходимо отредактировать.

    Откроется окно редактирования SQL-метрики.

  5. Измените параметры SQL-метрики.

  6. Нажмите СОХРАНИТЬ.

SQL-метрика будет отредактирована, изменения отобразятся в таблице SQL-метрик.

Удаление SQL-метрики

ПРЕДУПРЕЖДЕНИЕ

После удаления SQL-метрики нельзя восстановить.

Чтобы удалить SQL-метрику, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, в котором создана SQL-метрика.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу МетрикиSQL-метрики.

    Отобразится таблица SQL-метрик.

  4. Нажмите Удалить icon-delete рядом с SQL-метрикой, которую необходимо удалить.

    Откроется окно удаления SQL-метрики.

  5. Нажмите УДАЛИТЬ.

SQL-метрика будет удалена и перестанет отображаться в таблице SQL-метрик.

Активность

PPEM поддерживает мониторинг следующих активностей экземпляров:

Пользовательские сеансы

Вы можете просмотреть информацию о пользовательских сеансах и фоновых процесса экземпляра. Информация основана на представлении pg_stat_activity.

В этом разделе описано, как управлять пользовательскими сеансами, и приведены следующие инструкции:

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

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, в котором необходимо просмотреть пользовательские сеансы.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

Отобразится таблица пользовательских сеансов со следующими столбцами:

  • pid: идентификатор обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • leader_pid: идентификатор обслуживающего процесса для процесса в группе параллельного выполнения запроса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • backend_type: тип обслуживающего процесса. За подробной информацией о возможных значениях обратитесь к официальной документации Postgres Pro по модулю pg_stat_activity (см. столбец backend_type).

    Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • backend_start: дата и время запуска обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • client_hostname, client_addr и client_port: сетевое имя, адрес и номер порта клиента, с которого установлен пользовательский сеанс. Значения в этих столбцах можно сортировать с помощью соответствующего значка.

  • usesysid: идентификатор пользователя СУБД, от имени которого установлен сеанс. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • username: имя пользователя СУБД, от имени которого установлен сеанс. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • datid: идентификатор базы данных, с которой установлен пользовательский сеанс. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • database: имя базы данных, с которой установлен пользовательский сеанс. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • application_name: имя приложения, которое является источником пользовательского сеанса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • state: состояние обслуживающего процесса. За подробной информацией о возможных значениях обратитесь к официальной документации Postgres Pro по модулю pg_stat_activity (см. столбец state).

    Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • wait_event_type: тип события, которое ожидает обслуживающий процесс. За информацией о возможных значениях обратитесь к официальной документации Postgres Pro по модулю pg_stat_activity (см. столбец wait_event_type). Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • wait_event: имя события, которое ожидает обслуживающий процесс. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • transaction_duration_seconds: продолжительность выполнения текущей транзакции обслуживающего процесса в секундах. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • xact_start: дата и время начала текущей транзакции обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • query_duration_seconds: продолжительность выполнения текущего запроса обслуживающего процесса в секундах. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • query_start: дата и время начала выполнения текущего запроса обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • state_change: дата и время последнего изменения состояния обслуживающего процесса (см. столбец state). Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • backend_xid: идентификатор транзакции верхнего уровня обслуживающего процесса.

  • backend_xmin: текущая граница xmin для обслуживающего процесса.

  • query_id: идентификатор текущего или последнего запроса обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • query: текст текущего или последнего запроса обслуживающего процесса. Текст запроса можно скопировать. Для этого нажмите на значок восклицательного знака icon-exclamation рядом с текстом запроса, после чего в открывшемся окне нажмите Скопировать icon-copy.

    Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Действия: действия, которые можно выполнить с пользовательским сеансом. За подробной информацией о действиях с пользовательскими сеансами обратитесь к другим инструкциям в этом разделе.

С таблицей пользовательских сеансов можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы отключить или включить автоматическое обновление таблицы, в правом верхнем углу страницы нажмите на значок запуска icon-start или на значок остановки icon-stop-autoupdate.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update. Это действие доступно, только если вы отключили автоматическое обновление таблицы.
  • Чтобы сбросить все фильтры, в левом верхнем углу таблицы нажмите Сбросить фильтры.
Просмотр блокировок текущего запроса обслуживающего процесса

Чтобы просмотреть блокировки текущего запроса обслуживающего процесса, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Нажмите Открыть дерево блокировок icon-tree рядом с пользовательским сеансом, для которого необходимо просмотреть блокировки текущего запроса обслуживающего процесса.

Откроется окно с деревом блокировок текущего запроса обслуживающего процесса.

Просмотр плана текущего запроса обслуживающего процесса

План текущего запроса обслуживающего процесса можно просмотреть, если установлен модуль pg_query_state.

Чтобы просмотреть план текущего запроса обслуживающего процесса, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Нажмите План активного запроса icon-journal рядом с пользовательском сеансом, для которого необходимо просмотреть план текущего запроса обслуживающего процесса.

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

Чтобы обновить план запроса, нажмите ОБНОВИТЬ СТАТИСТИКУ ВЫПОЛНЕНИЯ.

Отмена текущего запроса обслуживающего процесса

При отмене текущего запроса обслуживающего процесса не завершается пользовательский сеанс.

Чтобы отменить выполнение текущего запроса обслуживающего процесса, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Нажмите Прервать текущий запрос icon-cancel-request рядом с пользовательским сеансом, для которого необходимо отменить выполнение текущего запроса обслуживающего процесса.

    Откроется окно подтверждения.

  5. Нажмите ВЫПОЛНИТЬ.

Завершение пользовательского сеанса

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

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Нажмите Завершить сессию icon-cancel-session рядом с пользовательским сеансом, который необходимо завершить.

    Откроется окно подтверждения.

  5. Нажмите ВЫПОЛНИТЬ.

Процессы очистки

Вы можете просмотреть информацию об процессах очистки (VACUUM) и автоочистки (autovacuum). Информация основана на представлении pg_stat_progress_vacuum.

В этом разделе описано, как управлять процессами очистки, и приведены следующие инструкции:

Просмотр процессов очистки

Чтобы просмотреть процессы очистки, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку ОЧИСТКА, после чего в правом верхнем углу страницы выберите базу данных, в которой необходимо просмотреть процессы очистки.

Отобразится таблица процессов очистки со следующими столбцами:

  • PID: идентификатор обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • State: состояние обслуживающего процесса. За подробной информацией о возможных значениях обратитесь к официальной документации Postgres Pro по модулю pg_stat_activity (см. столбец state).

    Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Wait event: тип и имя события, которое ожидает обслуживающий процесс. За подробной информацией обратитесь к официальной документации Postgres Pro по модулю pg_stat_activity (см. столбцы wait_event_type и wait_event). Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Phase: фаза выполнения очистки. За подробной информацией о возможных значениях обратитесь к официальной документации Postgres Pro.

  • Database: имя базы данных, в которой выполняется очистка. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • User: имя пользователя СУБД, от имени которого выполняется очистка. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Table: имя или идентификатор таблицы, для которой выполняется очистка.

  • Query: текст текущего или последнего запроса обслуживающего процесса. Текст запроса можно скопировать. Для этого нажмите на значок восклицательного знака icon-exclamation рядом с текстом запроса, после чего в открывшемся окне нажмите Скопировать icon-copy.

    Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Query duration: продолжительность выполнения текущего или последнего запроса обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Heap size: размер таблицы, для которой выполняется очистка.

  • Total size: общий размер таблицы, для которой выполняется очистка, включая индексы.

  • Scanned, %: процент отсканированных данных таблицы, для которой выполняется очистка. Этот столбец содержит дополнительную информацию:

    • Size: размер отсканированных данных таблицы.
  • Vacuumed, %: процент очищенных данных таблицы. Этот столбец содержит дополнительную информацию:

    • Size: размер очищенных данных таблицы.
  • Index vacuum: количество очищенных индексов в таблице.

  • Memory usage, %: объем использования памяти, предназначенной для хранения указателей на устаревшие версии строк таблицы. За подробной информацией обратитесь к официальной документации Postgres Pro по параметрам autovacuum_work_mem и maintenance_work_mem.

  • Действия: действия, которые можно выполнить с процессом очистки. За подробной информацией о действиях с процессами очистки обратитесь к другим инструкциям в этом разделе.

С таблицей процессов очистки можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы отключить или включить автоматическое обновление таблицы, в правом верхнем углу страницы нажмите на значок запуска icon-start или на значок остановки icon-stop-autoupdate.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update. Это действие доступно, только если вы отключили автоматическое обновление таблицы.
  • Чтобы сбросить все фильтры, в левом верхнем углу таблицы нажмите Сбросить фильтры.
Отмена процесса очистки

При отмене процесса очистки не завершается пользовательский сеанс.

Чтобы отменить процесс очистки, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку ОЧИСТКА, после чего в правом верхнем углу страницы выберите базу данных, в которой запущен процесс очистки.

  5. Нажмите Прервать текущий запрос icon-cancel-request рядом с процессом очистки, который необходимо отменить.

    Откроется окно подтверждения.

  6. Нажмите ВЫПОЛНИТЬ.

Завершение пользовательского сеанса для процесса очистки

При завершении пользовательского сеанса автоматически отменяется процесс очистки.

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку ОЧИСТКА, после чего в правом верхнем углу страницы выберите базу данных, в которой запущен процесс очистки.

  5. Нажмите Завершить сессию icon-cancel-session рядом с процессом очистки, для которого необходимо завершить пользовательский сеанс.

    Откроется окно подтверждения.

  6. Нажмите ВЫПОЛНИТЬ.

Процессы сбора статистики

Вы можете просмотреть информацию о процессах сбора статистики для планировщика (ANALYZE). Информация основана на представлении pg_stat_progress_analyze.

В этом разделе описано, как управлять процессами сбора статистики, и приведены следующие инструкции:

Просмотров процессов сбора статистики

Чтобы просмотреть процессы сбора статистики, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку СБОР СТАТИСТИКИ, после чего в правом верхнем углу страницы выберите базу данных, в которой необходимо просмотреть процессы сбора статистики.

Отобразится таблица процессов сбора статистики со следующими столбцами:

  • PID: идентификатор обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • State: состояние обслуживающего процесса. За подробной информацией о возможных значениях обратитесь к официальной документации Postgres Pro по модулю pg_stat_activity (см. столбец state).

    Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Wait event: тип и имя события, которое ожидает обслуживающий процесс. За подробной информацией обратитесь к официальной документации Postgres Pro по модулю pg_stat_activity (см. столбцы wait_event_type и wait_event). Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Phase: фаза выполнения сбора статистики. За подробной информацией о возможных значениях обратитесь к официальной документации Postgres Pro.

  • Database: имя базы данных, в которой выполняется сбор статистики. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • User: имя пользователя СУБД, от имени которого выполняется сбор статистики. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Table: имя или идентификатор таблицы, для которой выполняется сбор статистики.

  • Query: текст текущего или последнего запроса обслуживающего процесса. Текст запроса можно скопировать. Для этого нажмите на значок восклицательного знака icon-exclamation рядом с текстом запроса, после чего в открывшемся окне нажмите Скопировать icon-copy.

    Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Query duration: продолжительность текущего или последнего запроса обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Current child table: имя дочерней таблицы, для которой в текущий момент выполняется сбор статистики.

  • Child tables done: количество дочерних таблиц, для которых был выполнен сбор статистики.

  • Child tables total: общее количество дочерних таблиц, для которых необходимо выполнить сбор статистики.

  • Scanned, %: процент отсканированных данных таблиц, для которых выполняется сбор статистики.

  • Sample size: размер выборки, которая используется для сбора статистики.

  • Stat total: общее количество объектов расширенной статистики.

  • Stat computed: количество вычисленных объектов расширенной статистики.

  • Действия: действия, которые можно выполнить с процессом сбора статистики. За подробной информацией о действиях с процессами сбора статистики обратитесь к другим инструкциям в этом разделе.

С таблицей процессов сбора статистики можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы отключить или включить автоматическое обновление таблицы, в правом верхнем углу страницы нажмите на значок запуска icon-start или на значок остановки icon-stop-autoupdate.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update. Это действие доступно, только если вы отключили автоматическое обновление таблицы.
  • Чтобы сбросить все фильтры, в левом верхнем углу таблицы нажмите Сбросить фильтры.
Отмена процесса сбора статистики

При отмене процесса сбора статистики не завершается пользовательский сеанс.

Чтобы отменить выполнение процесса сбора статистики, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку СБОР СТАТИСТИКИ, после чего в правом верхнем углу страницы выберите базу данных, в которой запущен процесс сбора статистики.

  5. Нажмите Прервать текущий запрос icon-cancel-request рядом с процессом сбора статистики, который необходимо отменить.

    Откроется окно подтверждения.

  6. Нажмите ВЫПОЛНИТЬ.

Завершение пользовательского сеанса для процесса сбора статистики

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

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку СБОР СТАТИСТИКИ, после чего в правом верхнем углу страницы выберите базу данных, в которой запущен процесс сбора статистики.

  5. Нажмите Завершить сессию icon-cancel-session рядом с процессом сбора статистики, для которого необходимо завершить пользовательский сеанс.

    Откроется окно подтверждения.

  6. Нажмите ВЫПОЛНИТЬ.

Процессы кластеризации

Вы можете просмотреть информацию о процессах кластеризации — перестроения таблиц по индексу (CLUSTER), а также о процессах полной очистки (VACUUM FULL). Информация основана на представлении pg_stat_progress_cluster.

В этом разделе описано, как управлять процессами кластеризации, и приведены следующие инструкции:

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

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку КЛАСТЕРИЗАЦИЯ, после чего в правом верхнем углу страницы выберите базу данных, в которой необходимо просмотреть процессы кластеризации.

Отобразится таблица процессов кластеризации со следующими столбцами:

  • PID: идентификатор обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • State: состояние обслуживающего процесса. За подробной информацией о возможных значениях обратитесь к официальной документации Postgres Pro по модулю pg_stat_activity (см. столбец state).

    Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Wait event: тип и имя события, которое ожидает обслуживающий процесс. За подробной информацией обратитесь к официальной документации Postgres Pro по модулю pg_stat_activity (см. столбцы wait_event_type и wait_event). Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Phase: фаза выполнения кластеризации. За подробной информацией о возможных значениях обратитесь к официальной документации Postgres Pro.

  • Database: имя базы данных, в которой выполняется кластеризация. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • User: имя пользователя СУБД, от имени которого выполняется кластеризация. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Table: имя или идентификатор таблицы, для которой выполняется кластеризация.

  • Query: текст текущего или последнего запроса обслуживающего процесса. Текст запроса можно скопировать. Для этого нажмите на значок восклицательного знака icon-exclamation рядом с текстом запроса, после чего в открывшемся окне нажмите Скопировать icon-copy.

    Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Query duration: продолжительность текущего или последнего запроса обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Blocked totals: количество пользовательских сеансов, заблокированных процессом кластеризации.

  • Heap scanned, %: процент отсканированных данных таблицы, для которой выполняется кластеризация.

  • Heap total: общий размер таблицы, для которой выполняется кластеризация.

  • Scanned: размер отсканированных данных таблицы, для которой выполняется кластеризация.

  • Tuples scanned: количество отсканированных строк таблицы, для которой выполняется кластеризация.

  • Tuples written: количество записанных строк таблицы, для которой выполняется кластеризация.

  • Действия: действия, которые можно выполнить с процессом кластеризации. За подробной информацией о действиях с процессами кластеризации обратитесь к другим инструкциям в этом разделе.

С таблицей процессов кластеризации можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы отключить или включить автоматическое обновление таблицы, в правом верхнем углу страницы нажмите на значок запуска icon-start или на значок остановки icon-stop-autoupdate.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update. Это действие доступно, только если вы отключили автоматическое обновление таблицы.
  • Чтобы сбросить все фильтры, в левом верхнем углу таблицы нажмите Сбросить фильтры.
Отмена процесса кластеризации

При отмене процесса кластеризации не завершается пользовательский сеанс.

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку КЛАСТЕРИЗАЦИЯ, после чего в правом верхнем углу страницы выберите базу данных, в которой запущен процесс кластеризации.

  5. Нажмите Прервать текущий запрос icon-cancel-request рядом с процессом кластеризации, который необходимо отменить.

    Откроется окно подтверждения.

  6. Нажмите ВЫПОЛНИТЬ.

Завершение пользовательского сеанса для процесса кластеризации

При завершении пользовательского сеанса автоматически отменяется процесс кластеризации.

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку КЛАСТЕРИЗАЦИЯ, после чего в правом верхнем углу страницы выберите базу данных, в которой запущен процесс кластеризации.

  5. Нажмите Завершить сессию icon-cancel-session рядом с процессом кластеризации, для которого необходимо завершить пользовательский сеанс.

    Откроется окно подтверждения.

  6. Нажмите ВЫПОЛНИТЬ.

Процессы переиндексации или создания индекса

Вы можете просмотреть информацию о процессах переиндексации (REINDEX) или создания индекса (CREATE INDEX). Информация основана на представлении pg_stat_progress_create_index.

В этом разделе описано, как управлять процессами переиндексации или создания индекса, и приведены следующие инструкции:

Просмотр процессов переиндексации или создания индекса

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку ИНДЕКСАЦИЯ, после чего в правом верхнем углу страницы выберите базу данных, в которой необходимо просмотреть процессы переиндексации или создания индекса.

Отобразится таблица процессов переиндексации или создания индекса со следующими столбцами:

  • PID: идентификатор обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • State: состояние обслуживающего процесса. За подробной информацией о возможных значениях обратитесь к официальной документации Postgres Pro по модулю pg_stat_activity (см. столбец state).

    Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Wait event: тип и имя события, которое ожидает обслуживающий процесс. За подробной информацией обратитесь к официальной документации Postgres Pro по модулю pg_stat_activity (см. столбцы wait_event_type и wait_event). Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Phase: фаза выполнения переиндексации или создания индекса. За подробной информацией о возможных значениях обратитесь к официальной документации Postgres Pro.

  • Database: имя базы данных, в которой выполняется переиндексация или создание индекса. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • User: имя пользователя СУБД, от имени которого выполняется переиндексация или создание индекса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Table: имя или идентификатор таблицы, для которой выполняется переиндексация или создание индекса.

  • Index: имя или идентификатор переиндексируемого или создаваемого индекса.

  • Query: текст текущего или последнего запроса обслуживающего процесса. Текст запроса можно скопировать. Для этого нажмите на значок восклицательного знака icon-exclamation рядом с текстом запроса, после чего в открывшемся окне нажмите Скопировать icon-copy.

    Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Query duration: продолжительность выполнения текущего или последнего запроса обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Done, %: процент обработанных данных таблицы в текущей фазе переиндексации или создания индекса. Этот столбец содержит дополнительную информацию:

    • Total size: общий размер данных таблицы, которые необходимо обработать.
    • Done size: размер обработанных данных таблицы.
  • Tuples done, %: процент обработанных строк таблицы в текущей фазе переиндексации или создания индекса. Этот столбец содержит дополнительную информацию:

    • Total size: общее количество строк таблицы, которые необходимо обработать.
    • Done size: количество обработанных строк таблицы.
  • Lockers: заблокированные процессы при выполнении переиндексации или создания индекса. Этот столбец содержит дополнительную информацию:

    • Done: количество заблокированных процессов, ожидание которых завершено.
    • Total: общее количество заблокированных процессов.
    • PID: идентификатор процесса, заблокированного в текущий момент.
  • Partitions done, %: процент обработанных секционированных таблиц при выполнении переиндексации или создания индекса. Этот столбец содержит дополнительную информацию:

    • Total: общее количество секционированных таблиц, которые необходимо обработать.
    • Done: количество обработанных секционированных таблиц.
  • Действия: действия, которые можно выполнить с процессом переиндексации или создания индекса. За подробной информацией о действиях с процессами переиндексации или создания индекса обратитесь к другим инструкциям в этом разделе.

С таблицей процессов переиндексации или создания индекса можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы отключить или включить автоматическое обновление таблицы, в правом верхнем углу страницы нажмите на значок запуска icon-start или на значок остановки icon-stop-autoupdate.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update. Это действие доступно, только если вы отключили автоматическое обновление таблицы.
  • Чтобы сбросить все фильтры, в левом верхнем углу таблицы нажмите Сбросить фильтры.
Отмена процесса переиндексации или создания индекса

При отмене процесса переиндексации или создания индекса не завершается пользовательский сеанс.

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку ИНДЕКСАЦИЯ, после чего в правом верхнем углу страницы выберите базу данных, в которой запущен процесс переиндексации или создания индекса.

  5. Нажмите Прервать текущий запрос icon-cancel-request рядом с процессом переиндексации или создания индекса, который необходимо отменить.

    Откроется окно подтверждения.

  6. Нажмите ВЫПОЛНИТЬ.

Завершение пользовательского сеанса для процесса переиндексации или создания индекса

При завершении пользовательского сеанса автоматически отменяется процесс переиндексации или создания индекса.

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку ИНДЕКСАЦИЯ, после чего в правом верхнем углу страницы выберите базу данных, в которой запущен процесс переиндексации или создания индекса.

  5. Нажмите Завершить сессию icon-cancel-session рядом с процессом переиндексации или создания индекса, для которого необходимо завершить пользовательский сеанс.

    Откроется окно подтверждения.

  6. Нажмите ВЫПОЛНИТЬ.

Процессы базового копирования

Вы можете просмотреть информацию о процессах базового копирования (как правило, это процессы резервного копирования). Информация основана на представлении pg_stat_progress_basebackup.

В этом разделе описано, как управлять процессами базового копирования, и приведены следующие инструкции:

Просмотр процессов базового копирования

Чтобы просмотреть процессы базового копирования, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку БАЗОВОЕ КОПИРОВАНИЕ, после чего в правом верхнем углу страницы выберите базу данных, в которой необходимо просмотреть процессы базового копирования.

Отобразится таблица процессов базового копирования со следующими столбцами:

  • PID: идентификатор обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • State: состояние обслуживающего процесса. За подробной информацией о возможных значениях обратитесь к официальной документации Postgres Pro по модулю pg_stat_activity (см. столбец state).

    Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Wait event: тип и имя события, которое ожидает обслуживающий процесс. За подробной информацией обратитесь к официальной документации Postgres Pro по модулю pg_stat_activity (см. столбцы wait_event_type и wait_event). Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Phase: фаза выполнения базового копирования. За подробной информацией о возможных значениях обратитесь к официальной документации Postgres Pro.

  • Client address: сетевой адрес клиента, который инициировал базовое копирование.

  • Backend duration: продолжительность выполнения обслуживающего процесса (продолжительность выполнения базового копирования). Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Started time: дата и время запуска обслуживающего процесса (дата и время начала базового копирования).

  • Sent, %: процент данных, отправленных клиенту при выполнении базового копирования. Этот столбец содержит дополнительную информацию:

    • Total size: общий размер данных, которые необходимо отправить клиенту.
    • Sent size: размер отправленных клиенту данных.
  • Tablespace total: общее количество табличных пространств, которые необходимо обработать при выполнении базового копирования.

  • Tablespaces streamed: количество обработанных табличных пространств при выполнении базового копирования.

  • Действия: действия, которые можно выполнить с процессом базового копирования. За подробной информацией о действиях с процессами базового копирования обратитесь к другим инструкциям в этом разделе.

С таблицей процессов базового копирования можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы отключить или включить автоматическое обновление таблицы, в правом верхнем углу страницы нажмите на значок запуска icon-start или на значок остановки icon-stop-autoupdate.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update. Это действие доступно, только если вы отключили автоматическое обновление таблицы.
  • Чтобы сбросить все фильтры, в левом верхнем углу таблицы нажмите Сбросить фильтры.
Отмена процесса базового копирования

При отмене процесса базового копирования не завершается пользовательский сеанс.

Чтобы отменить процесс базового копирования, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку БАЗОВОЕ КОПИРОВАНИЕ, после чего в правом верхнем углу страницы выберите базу данных, в которой запущен процесс базового копирования.

  5. Нажмите Прервать текущий запрос icon-cancel-request рядом с процессом базового копирования, который необходимо отменить.

    Откроется окно подтверждения.

  6. Нажмите ВЫПОЛНИТЬ.

Завершение пользовательского сеанса для процесса базового копирования

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

Чтобы завершить пользовательский сеанс для процесса базового копирования, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку БАЗОВОЕ КОПИРОВАНИЕ, после чего в правом верхнем углу страницы выберите базу данных, в которой запущен процесс базового копирования.

  5. Нажмите Завершить сессию icon-cancel-session рядом с процессом базового копирования, для которого необходимо завершить пользовательский сеанс.

    Откроется окно подтверждения.

  6. Нажмите ВЫПОЛНИТЬ.

Процессы копирования

Вы можете просмотреть информацию о процессах копирования (COPY). Информация основана на представлении pg_stat_progress_copy.

В этом разделе описано, как управлять процессами копирования, и приведены следующие инструкции:

Просмотр процессов копирования

Чтобы просмотреть процессы копирования, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку КОПИРОВАНИЕ, после чего в правом верхнем углу страницы выберите базу данных, в которой необходимо просмотреть процессы копирования.

Отобразится таблица процессов копирования со следующими столбцами:

  • PID: идентификатор обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • State: состояние обслуживающего процесса. За подробной информацией о возможных значениях обратитесь к официальной документации Postgres Pro по модулю pg_stat_activity (см. столбец state).

    Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Wait event: тип и имя события, которое ожидает обслуживающий процесс. За подробной информацией обратитесь к официальной документации Postgres Pro по модулю pg_stat_activity (см. столбцы wait_event_type и wait_event). Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Database: имя базы данных, в которой выполняется копирование. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • User: имя пользователя СУБД, от имени которого выполняется копирование. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Table: имя или идентификатор таблицы, для которой выполняется копирование.

  • Query: текст текущего или последнего запроса обслуживающего процесса. Текст запроса можно скопировать. Для этого нажмите на значок восклицательного знака icon-exclamation рядом с текстом запроса, после чего в открывшемся окне нажмите Скопировать icon-copy.

    Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Query duration: продолжительность выполнения текущего или последнего запроса обслуживающего процесса. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Table size: размер таблицы, для которой выполняется копирование.

  • Table tuples total: строки таблицы, для которой выполняется копирование. Этот столбец содержит дополнительную информацию:

    • Tuples processed: количество обработанных строк таблицы.
    • Tuples excluded: количество пропущенных строк таблицы.
  • Source file size: размер файла, для которого выполняется копирование.

  • Done, %: процент выполнения копирования. Этот столбец содержит дополнительную информацию:

    • Processed: размер обработанных данных.
  • Command: текст команды копирования.

  • Command type: тип команды копирования.

  • Действия: действия, которые можно выполнить с процессом копирования. За подробной информацией о действиях с процессами копирования обратитесь к другим инструкциям в этом разделе.

Отмена процесса копирования

При отмене процесса копирования не завершается пользовательский сеанс.

Чтобы отменить процесс копирования, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку КОПИРОВАНИЕ, после чего в правом верхнем углу страницы выберите базу данных, в которой запущен процесс копирования.

  5. Нажмите Прервать текущий запрос icon-cancel-request рядом с процессом копирования, который необходимо отменить.

    Откроется окно подтверждения.

  6. Нажмите ВЫПОЛНИТЬ.

Завершение пользовательского сеанса для процесса копирования

При завершении пользовательского сеанса автоматически отменяется процесс копирования.

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Активность.

    Отобразится таблица пользовательских сеансов.

  4. Выберите вкладку КОПИРОВАНИЕ, после чего в правом верхнем углу страницы выберите базу данных, в которой запущен процесс копирования.

  5. Нажмите Завершить сессию icon-cancel-session рядом с процессом копирования, для которого необходимо завершить пользовательский сеанс.

    Откроется окно подтверждения.

  6. Нажмите ВЫПОЛНИТЬ.

SQL-статистика

PPEM позволяет просматривать статистику выполнения SQL-операторов на основе данных расширений pg_stat_statements и pgpro_stats. Для корректной работы сбора SQL-статистики в экземпляре СУБД должно быть установлено и настроено одно из этих расширений.

Чтобы просмотреть SQL-статистику, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, в котором необходимо просмотреть SQL-статистику.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу SQL статистика.

Отобразится таблица со следующими столбцами:

  • ID оператора: неуникальный хеш-код оператора. Может совпадать с другими операторами, выполняющимися в других базах данных или от имени других пользователей. Столбец содержит дополнительную информацию:

    • ID плана: неуникальный хеш-код плана. Может совпадать с хеш-кодами других планов по операторам, которые выполнялись в других базах данных или от имени других пользователей. ID плана доступен только для редакции Postgres Pro Enterprise.

    • Оператор верх. уровня: указывает на уровень выполнения оператора. Для отображения этой информации необходимо задать значение top для параметров pg_stat_statements.track или pgpro_stats.track. Возможные значения:

    • true: оператор выполнялся на верхнем уровне.

    • false: оператор был вложен в процедуру или функцию.

    ПРИМЕЧАНИЕ

    В столбце ID оператора можно просмотреть код запроса и плана оператора. Для этого нажмите Раскрыть icon-chevron-down-grey. Чтобы скрыть всплывающее окно, нажмите Свернуть icon-chevron-up-grey. Код плана оператора отображается только для редакции Postgres Pro Enterprise.

    Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • База данных: база данных экземпляра, в которой выполнялся оператор. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Пользователь: имя пользователя, выполнявшего оператор. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Выполнения, шт.: общее количество выполнений оператора. Столбец содержит дополнительную информацию:

    • Строки, шт.: общее количество строк, полученных или затронутых оператором.

    Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Время выполнения, мс: общее время, затраченное на выполнение оператора (в миллисекундах). Столбец содержит дополнительную информацию:

    • Макс.: максимальное время, затраченное на выполнение оператора.
    • Мин.: минимальное время, затраченное на выполнение оператора.
    • Среднее: среднее время, затраченное на выполнение оператора.
    • Откл.: стандартное отклонение времени, затраченного на выполнение оператора.

    Значения в этом столбце можно сортировать с помощью соответствующих значков.

  • Время планирования, мс: общее время, затраченное на планирование оператора (в миллисекундах). Для отображения этой информации необходимо задать значение on для параметров pg_stat_statements.track_planning или pgpro_stats.track_planning. В противном случае отобразится значение 0. Столбец содержит дополнительную информацию:

    • Макс.: максимальное время, затраченное на планирование оператора.
    • Мин.: минимальное время, затраченное на планирование оператора.
    • Среднее: среднее время, затраченное на планирование оператора.
    • Откл.: стандартное отклонение времени, затраченного на планирование оператора.

    Значения в этом столбце можно сортировать с помощью соответствующих значков.

  • Запись и чтение блоков, мс: общее время, затраченное оператором на чтение и запись блоков файлов данных (в миллисекундах). Для отображения этой информации необходимо включить параметр track_io_timing. В противном случае отобразится значение 0. Столбец содержит дополнительную информацию:

    • Запись: время, затраченное на запись.
    • Чтение: время, затраченное на чтение.

    Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Временные блоки, шт.: общее число блоков, затронутых оператором при работе с временными файлами. Столбец содержит дополнительную информацию:

    • Записаны: количество записанных блоков.
    • Прочитаны: количество прочитанных блоков.

    Значения в этом столбце можно сортировать с помощью соответствующих значков.

  • Объём WAL, Б: общий объём WAL в байтах, сгенерированный при выполнении оператора. Столбец содержит дополнительную информацию:

    • Записи, шт.: общее число записей WAL, сгенерированных при выполнении оператора.
    • Образы, шт.: общее число образов полных страниц в WAL, сгенерированных при выполнении оператора.

    Значения в этом столбце можно сортировать с помощью соответствующих значков.

  • Блоки в общем кеше, шт.: общее число попаданий в кеш разделяемых блоков для оператора. Столбец содержит дополнительную информацию:

    • Прочитаны: общее число разделяемых блоков, прочитанных оператором.
    • Загрязнены: общее число разделяемых блоков, «загрязнённых» оператором.
    • Записаны: общее число разделяемых блоков, записанных оператором.

    Значения в этом столбце можно сортировать с помощью соответствующих значков.

  • Блоки в локальных кешах, шт.: общее число попаданий в кеш локальных блоков для оператора. Столбец содержит дополнительную информацию:

    • Прочитаны: общее число локальных блоков, прочитанных оператором.
    • Загрязнены: общее число локальных блоков, «загрязнённых» оператором.
    • Записаны: общее число локальных блоков, записанных оператором.

    Значения в этом столбце можно сортировать с помощью соответствующих значков.

Чтобы чтобы просмотреть информацию о конкретном операторе, нажмите Подробнее icon-view рядом с ним.

По умолчанию отображаемая статистика отсортирована по общему времени выполнения оператора. На одной странице отображается 50 строк.

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

  • Сетевой связности между менеджером и агентом PPEM, который работает с экземпляром.
  • Объёма передаваемых данных, который может также косвенно влиять на производительность экземпляра.

Учитывая накопительную природу статистики, полученный снимок статистики может со временем отличаться от фактической статистики экземпляра.

С таблицей можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.

Параметры экземпляра

PPEM позволяет просматривать и изменять параметры экземпляра СУБД.

Просмотр параметров

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, параметры которого необходимо просмотреть.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Параметры.

Отобразятся параметры, сгруппированные в таблицы по разным смысловым категориям. Таблицы содержат следующие столбцы:

  • Параметр: имя параметра с кратким описанием. Если параметр определён в конкретном файле конфигурации, то рядом будет указан путь к этому файлу и номер строки. Здесь также отображается статус применения параметра и ошибки, если они произошли. Слева от имени параметра может появляться подсказка icon-exclamation о том, что для применения параметра необходимо перезапустить экземпляр. Чтобы открыть полное описание параметра в официальной документации Postgres Pro, нажмите на его имя.

  • Значение: значение параметра. Доступны два типа значений:

    • Переключатель, который активирует или деактивирует параметр. При активации переключателя справа от него появляется значок восстановления сохранённого значения icon-replay.
    • Поле, в котором можно указать конкретное значение параметра. При вводе значения справа от поля появляется значок восстановления сохранённого значения icon-replay.
  • Дефолтное значение: значение параметра по умолчанию.

  • Источник: источник, из которого взят параметр. Возможные значения:

    • default: значение по умолчанию.
    • configuration file: значение задано в конфигурационном файле.
    • override: значение переопределено на этапе инициализации экземпляра.

Для удобства поиска на странице параметров доступны фильтрация по категориям, поиск параметров по названию, а также возможность отображать все параметры или только параметры не по умолчанию, источником для которых указано значение default:

  • Чтобы отобразить параметры определённой категории, выберите категорию в выпадающем списке в левом верхнем углу страницы.
  • Чтобы выполнить поиск параметров по имени, начните вводить название параметра в поисковой строке в правом верхнем углу страницы.
  • Чтобы отобразить только параметры не по умолчанию, в правом верхнем углу страницы под поисковой строкой установите переключатель в положение Показать не дефолтные. Чтобы отобразить все параметры, верните переключатель в положение по умолчанию Показать все.

Изменение параметров

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, параметры которого необходимо изменить.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Параметры.

    Отобразятся параметры, сгруппированные в таблицы по разным смысловым категориям.

  4. В разделе Значение измените одно из двух типов значений параметра:

    • Переключатель, который активирует или деактивирует параметр. При активации переключателя справа от него появляется значок восстановления сохранённого значения icon-replay.
    • Поле, в котором можно указать конкретное значение параметра. При вводе значения справа от поля появляется значок восстановления сохранённого значения icon-replay.
  5. (Необязательно) Нажмите СБРОСИТЬ в правом нижнем углу страницы, если хотите сбросить все изменённые, но ещё не сохранённые параметры. На кнопке сброса отобразится количество изменённых параметров.

  6. Нажмите СОХРАНИТЬ в правом нижнем углу страницы. На кнопке сохранения отобразится количество изменённых параметров.

    Откроется окно выбора действия, если были изменены параметры, требующие перезапуска экземпляра.

  7. В окне выберите одно из действий:

    • Применить изменения и перезапустить экземпляр: изменения параметров будут применены, экземпляр перезапустится автоматически.
    • Применить изменения, но перезапустить экземпляр позже вручную: изменения параметров будут применены, но экземпляр необходимо будет перезапустить вручную.
  8. Нажмите ПРИМЕНИТЬ.

  9. Подтвердите перезапуск экземпляра.

Изменения параметров вступят в силу.

ПРЕДУПРЕЖДЕНИЕ

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

Детали реализации

Для управления параметрами конфигурации используется команда ALTER SYSTEM, которая изменяет файл postgresql.auto.conf. Если параметр был задан в основном файле конфигурации, например postgresql.conf, но затем изменён через PPEM и отправлен в postgresql.auto.conf, интерфейс PPEM отобразит этот параметр в обоих файлах. Это нормально — значения из postgresql.auto.conf имеют приоритет над другими конфигурационными файлами.

Для применения параметров без перезапуска экземпляра PPEM использует функцию pg_reload_conf().

Расширения

В этом разделе описано, как управлять расширениями экземпяров, и приведены следующие инструкции:

Установка расширений

Чтобы установить расширение, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, в котором необходимо установить расширение.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Расширения.

    Отобразится таблица расширений.

  4. В правом верхнем углу страницы нажмите УСТАНОВИТЬ РАСШИРЕНИЕ.

    Откроется окно установки расширения.

  5. Укажите подробную информацию о новом расширении (помеченные звёздочкой параметры являются обязательными):

    • База данных: база данных, для которой будет установлено расширение.
    • Расширение: расширение, которое будет установлено.
    • Версия: версия расширения.
    • Схема: схема, в которую будут установлены объекты расширения. Если схема не указана, будет использована текущая схема.
    • Установить расширения, от которых зависит выбранное: указывает, следует ли установить все расширения, от которых зависит выбранное, если они ещё не установлены.
  6. Нажмите УСТАНОВИТЬ.

Расширение будет установлено и появится в таблице расширений.

Редактирование расширения

Вы можете изменить версию установленного расширения и схему, в которой оно установлено.

Чтобы отредактировать расширение, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, в котором установлено расширение.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Расширения.

    Отобразится таблица расширений.

  4. Нажмите Редактировать icon-pencil рядом с расширением, которое необходимо отредактировать.

    Откроется окно редактирования расширения.

  5. Измените параметры расширения.

  6. Нажмите СОХРАНИТЬ.

Удаление расширения

ПРЕДУПРЕЖДЕНИЕ

После удаления расширения нельзя восстановить.

Чтобы удалить расширение, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, в котором установлено расширение.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Расширения.

    Отобразится таблица расширений.

  4. Нажмите Удалить icon-delete рядом с расширением, которое необходимо удалить.

    Откроется окно удаления расширения.

  5. (Необязательно) Чтобы удалить все связанные расширения, установите флажок Удалить все связанные расширения.

  6. Нажмите УДАЛИТЬ.

Расширение будет удалено и перестанет отображаться в таблице расширений.

Профилировщик

Профилировщик — это интерфейс модуля pgpro_pwr. Он позволяет строить детализированные отчёты о нагрузке баз данных. Отчёты основаны на выборках данных и покрывают конкретные периоды времени.

Чтобы построить отчёт, необходимо получить как минимум две выборки. Выборки помещаются в каталог сервера профилировщика. Перед получением выборок необходимо подготовить серверы профилировщика и создать их в веб-приложении.

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

В этом разделе приведены следующие подразделы, описывающие, как управлять профилировщиком:

Серверы профилировщика

В этом разделе описано, как управлять серверами профилировщика, и приведены следующие инструкции:

Создание сервера профилировщика

Перед выполнением этой процедуры нужно сделать следующее:

Чтобы создать сервер профилировщика, выполните следующие действия:

  1. Перейдите к серверам профилировщика одним из следующих способов:

    • Через раздел мониторинга:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерСерверы.
      2. Выберите экземпляр, в котором необходимо создать сервер профилировщика, из выпадающего списка Экземпляр.
    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, в котором необходимо создать сервер профилировщика.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерСерверы.

  2. В правом верхнем углу страницы нажмите СОЗДАТЬ СЕРВЕР.

    Откроется окно создания сервера профилировщика.

  3. Укажите подробную информацию о новом сервере профилировщика (помеченные звёздочкой параметры являются обязательными):

    • База данных: база данных, для которой сервер профилировщика будет получать выборки.

    • Имя сервера: уникальное имя сервера профилировщика.

    • Описание: краткое описание сервера профилировщика.

    • Строка подключения: строка подключения к серверу профилировщика.

    • Включен: указывает, включен ли сервер профилировщика. Возможные значения:

      • да
      • нет
    • Срок хранения (дней): количество суток, в течение которого выборки могут храниться на сервере профилировщика. Выборки, хранящиеся дольше указанного количества дней, будут удалены.

  4. Нажмите СОХРАНИТЬ.

Сервер профилировщика будет создан и появится в таблице серверов профилировщика.

Просмотр серверов профилировщика

Чтобы просмотреть серверы профилировщика, выполните следующие действия:

  1. Перейдите к серверам профилировщика одним из следующих способов:

    • Через раздел мониторинга:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерСерверы.
      2. Выберите экземпляр, в котором необходимо просмотреть серверы профилировщика, из выпадающего списка Экземпляр.
    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, в котором необходимо просмотреть серверы профилировщика.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерСерверы.

  2. Выберите базу данных, для которой серверы профилировщика получают выборки, из выпадающего списка БД.

  3. Нажмите ВЫБРАТЬ.

Отобразится таблица серверов профилировщика со следующими столбцами:

  • Название: уникальное имя сервера профилировщика. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Описание: краткое описание сервера профилировщика.

  • Строка подключения: строка подключения к серверу профилировщика.

  • Включен: указывает, включен ли сервер профилировщика. Возможные значения:

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

  • Действия: действия, которые можно выполнить с сервером профилировщика. За подробной информацией о действиях с серверами профилировщика обратитесь к другим инструкциям в этом разделе.

С таблицей серверов профилировщика можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.
Редактирование сервера профилировщика

Чтобы отредактировать сервер профилировщика, выполните следующие действия:

  1. Перейдите к серверам профилировщика одним из следующих способов:

    • Через раздел мониторинга:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерСерверы.
      2. Выберите экземпляр, в котором создан сервер профилировщика, из выпадающего списка Экземпляр.
    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, в котором создан сервер профилировщика.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерСерверы.

  2. Выберите базу данных, для которой сервер профилировщика получает выборки, из выпадающего списка БД.

  3. Нажмите ВЫБРАТЬ.

    Отобразится таблица серверов профилировщика.

  4. Нажмите Редактировать icon-pencil рядом с сервером профилировщика, который необходимо отредактировать.

    Откроется окно редактирования сервера профилировщика.

  5. Измените параметры сервера профилировщика.

  6. Нажмите СОХРАНИТЬ.

Сервер профилировщика будет отредактирован, изменения отобразятся в таблице серверов профилировщика.

Удаление сервера профилировщика

ПРЕДУПРЕЖДЕНИЕ

После удаления серверы профилировщика нельзя восстановить.

При удалении сервера профилировщика вместе с ним удаляются полученные выборки, а также прекращают работать расписания получения выборок, в рамках которых выборки помещаются в каталог этого сервера.

Чтобы удалить сервер профилировщика, выполните следующие действия:

  1. Перейдите к серверам профилировщика одним из следующих способов:

    • Через раздел мониторинга:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерСерверы.
      2. Выберите экземпляр, в котором создан сервер профилировщика, из выпадающего списка Экземпляр.
    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, в котором создан сервер профилировщика.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерСерверы.

  2. Выберите базу данных, для которой сервер профилировщика получает выборки, из выпадающего списка БД.

  3. Нажмите ВЫБРАТЬ.

    Отобразится таблица серверов профилировщика.

  4. Нажмите Удалить icon-delete рядом с сервером профилировщика, который необходимо удалить.

    Откроется окно удаления сервера профилировщика.

  5. Нажмите УДАЛИТЬ.

Сервер профилировщика будет удалён и перестанет отображаться в таблице серверов профилировщика.

Выборки

В этом разделе описано, как получать и просматривать выборки.

Получение выборки

Перед выполнением этой процедуры нужно сделать следующее:

Чтобы получить выборку, выполните следующие действия:

  1. Перейдите к выборкам одним из следующих способов:

    • Через раздел мониторинга:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерСнимки статистики.
      2. Выберите экземпляр, в котором необходимо получить выборку, из выпадающего списка Экземпляр.
    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, в котором необходимо получить выборку.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерСнимки статистики.

  2. В правом верхнем углу страницы нажмите СДЕЛАТЬ СНИМОК.

    Откроется окно получения выборки.

  3. Укажите подробную информацию о новой выборке (помеченные звёздочкой параметры являются обязательными):

    • База данных: база данных, для которой будет получена выборка.

    • Сервер: сервер профилировщика, в каталог которого будет помещена выборка.

    • skip_sizes: указывает, следует ли пропустить сбор размеров отношений при получении выборки. Возможные значения:

      • true: сбор размеров отношений будет пропущен при получении выборки.
      • false: сбор размеров отношений не будет пропущен при получении выборки.
  4. Нажмите СОХРАНИТЬ.

Выборка будет получена и появится в таблице выборок.

Просмотр выборок

Чтобы просмотреть выборки, выполните следующие действия:

  1. Перейдите к выборкам одним из следующих способов:

    • Через раздел мониторинга:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерСнимки статистики.
      2. Выберите экземпляр, в котором необходимо просмотреть выборки, из выпадающего списка Экземпляр.
    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, в котором необходимо просмотреть выборки.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерСнимки статистики.

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

  3. Выберите сервер профилировщика, в каталог которого помещены выборки, из выпадающего списка Сервер.

  4. Нажмите ВЫБРАТЬ.

Отобразится таблица выборок со следующими столбцами:

  • ID: уникальный идентификатор (порядковый номер) выборки.

  • Time: дата и время получения выборки.

  • Sizes were collected: указывает, были собраны размеры отношений при получении выборки. Возможные значения:

    • Да
    • Нет
  • Database stat reset: указывает, была ли сброшена статистика базы данных при получении выборки. Возможные значения:

    • Да
    • Нет
  • Bgwriter stat reset: указывает, была ли сброшена статистика bgwriter при получении выборки. Возможные значения:

    • Да
    • Нет
  • Archiver stat reset: указывает, была ли сброшена статистика архиватора при получении выборки. Возможные значения:

    • Да
    • Нет

С таблицей выборок можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.

Просмотр графиков профилировщика

Перед выполнением этой процедуры нужно сделать следующее:

Чтобы просмотреть графики профилировщика, выполните следующие действия:

  1. Перейдите к графикам профилировщика одним из следующих способов:

    • Через раздел мониторинга:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлер.
      2. Выберите экземпляр, в котором необходимо просмотреть графики профилировщика, из выпадающего списка Экземпляр.
    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, в котором необходимо просмотреть графики профилировщика.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Профайлер.

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

  3. Выберите сервер профилировщика, в каталог которого помещены выборки, из выпадающего списка Сервер.

  4. (Необязательно) В поле Период укажите период времени, за который необходимо отобразить графики профилировщика. Если вы не указываете значение, графики профилировщика отображаются за всё время.

  5. Нажмите ВЫБРАТЬ.

Отобразятся следующие графики профилировщика:

  • PostgreSql Instance: tuples: операции со строками за секунду в базе данных. Доступные метрики:

    • Tuples returned: количество «живых» строк, выбранных при последовательном сканировании, и записей индекса, выбранных при сканировании индексов. Эта метрика соответствует столбцу tup_returned представления pg_stat_database.
    • Tuples fetched: количество «живых» строк, выбранных при сканировании индексов. Эта метрика соответствует столбцу tup_fetched представления pg_stat_database.
    • Tuples inserted: количество строк, вставленных запросами. Эта метрика соответствует столбцу tup_inserted представления pg_stat_database.
    • Tuples updated: количество запросов, изменённых запросами. Эта метрика соответствует столбцу tup_updated представления pg_stat_database.
    • Tuples deleted: количество строк, удалённых запросами. Эта метрика соответствует столбцу tup_deleted представления pg_stat_database.

    За подробной информацией об этих метриках обратитесь к официальной документации Postgres Pro по представлению pg_stat_database.

  • PostgreSql bgwriter buffers: операции с буферами за секунду в базе данных. Доступные метрики:

    • Checkpoints buffers written: количество буферов, записанных при выполнении контрольных точек и точек перезапуска. Эта метрика соответствует столбцу buffers_written представления pg_stat_checkpointer.
    • Background buffers written: количество буферов, записанных фоновым процессом записи. Эта метрика соответствует столбцу buffers_clean представления pg_stat_bgwriter.
    • Backend buffers written: количество буферов, записанных напрямую обслуживающим процессом. В Postgres Pro 16 эта метрика соответствует столбцу buffers_backend представления pg_stat_bgwriter. В Postgres Pro 17 эта метрика собирается представлением pg_stat_io.
    • Number of buffers allocated: количество выделенных буферов. Эта метрика соответствует столбцу buffers_alloc представления pg_stat_bgwriter.

    За подробной информацией об этих метриках обратитесь к официальной документации Postgres Pro по pg_stat_bgwriter, pg_stat_io и pg_stat_checkpointer.

  • PostgreSql bgwriter write/sync: операции синхронизации и записи буферов за секунду в базе данных. Доступные метрики:

    • Bgwriter interrupts: количество раз, когда обслуживающему процессу пришлось прервать сброс грязных страниц на диск из-за того, что он записал слишком много буферов. Эта метрика соответствует столбцу maxwritten_clean представления pg_stat_bgwriter.
    • Backend fsync count: количество раз, когда обслуживающему процессу пришлось самостоятельно выполнить вызов fsync. Обычно эти вызовы выполняются фоновым процессом записи, даже когда обслуживающий процесс самостоятельно выполняет запись. В Postgres Pro 16 и ниже эта метрика соответствует столбцу buffers_backend_fsync представления pg_stat_bgwriter. В Postgres Pro 17 эта метрика собирается представлением pg_stat_io.

    За подробной информацией об этих метриках обратитесь к официальной документации Postgres Pro по pg_stat_bgwriter и pg_stat_io.

  • PostgreSql checkpoints count: операции с контрольными точками за секунду в базе данных. Доступные метрики:

    • Scheduled checkpoints: количество запланированных контрольных точек, выполненных из-за таймаута. Запланированные контрольные точки могут пропускаться при бездействии сервера с момента последней контрольной точки. Учитываются как выполненные, так и пропущенные контрольные точки. Эта метрика соответствует столбцу num_timed представления pg_stat_checkpointer.
    • Requested checkpoints: количество запрошенных контрольных точек, которые были выполнены. Эта метрика соответствует столбцу num_requested представления pg_stat_checkpointer.

    За подробной информацией об этих метриках обратитесь к официальной документации Postgres Pro по представлению pg_stat_checkpointer.

  • PostgreSql checkpoints write/sync: время за секунду, в течение которого файлы записывались и синхронизировались при выполнении контрольных точек в базе данных. Доступные метрики:

    • Checkpoint write time (s): время в секундах, затраченное на запись файлов на диск при выполнении контрольных точек и точек перезапуска. Эта метрика соответствует столбцу write_time представления pg_stat_checkpointer.
    • Checkpoint sync time (s): время в секундах, затраченное на синхронизацию файлов с диском при выполнении контрольных точек и точек перезапуска. Эта метрика соответствует столбцу sync_time представления pg_stat_checkpointer.

    За подробной информацией об этих метриках обратитесь к официальной документации Postgres Pro по представлению pg_stat_checkpointer.

  • PostgreSql Instance: events: операции с событиями за секунду в базе данных. Доступные метрики:

    • Conflicts: количество запросов, отменённых из-за конфликта с восстановлением. Конфликты могут происходить только на резервных серверах. Эта метрика соответствует столбцу conflicts представления pg_stat_database. За подробной информацией о конфликтах обратитесь к официальной документации Postgres Pro по представлению pg_stat_database_conflicts.
    • Deadlocks: количество взаимных блокировок. Эта метрика соответствует столбцу deadlocks представления pg_stat_database.
    • Rollbacks: количество транзакций, для которых был выполнен откат. Эта метрика соответствует столбцу xact_rollback представления pg_stat_database.
    • Commits: количество зафиксированных транзакций. Эта метрика соответствует столбцу xact_commit представления pg_stat_database.

    За подробной информацией об этих метриках обратитесь к официальной документации Postgres Pro по представлению pg_stat_database.

  • PostgreSql: cache hit ratio: этот график отображает метрику Cache hit ratio, которая показывает процент данных, полученных из кеша буфера за секунду в базе данных. Эта метрика основана на столбцах blks_hit и blks_read представления pg_stat_database и вычисляется следующим образом:

    blks_hit / (blks_hit + blks_read)

    За подробной информацией о столбцах blks_hit и blks_read обратитесь к официальной документации Postgres Pro по представлению pg_stat_database.

  • PostgreSql temp: bytes written: этот график отображает метрику Bytes written, которая показывает объём данных, записанных во временные файлы запросами за секунду в базе данных. Учитываются все временные файлы, вне зависимости от причины их создания и значения параметра log_temp_files. Эта метрика соответствует столбцу temp_bytes представления pg_stat_database.

    За подробной информацией об этой метрике обратитесь к официальной документации Postgres Pro по представлению pg_stat_database.

  • PostgreSql temp: files created: этот график отображает метрику Number of files, которая показывает количество временных файлов, созданных запросами за секунду в базе данных. Учитываются все временные файлы, вне зависимости от причины их создания (сортировка, хеширование) и значения параметра log_temp_files. Эта метрика соответствует столбцу temp_files представления pg_stat_database.

    За подробной информацией об этой метрике обратитесь к официальной документации Postgres Pro по представлению pg_stat_database.

  • PostgreSql archive command: операции архивирования файлов WAL за секунду в базе данных. Доступные метрики:

    • WAL segments archived: количество архивированных файлов WAL. Эта метрика соответствует столбцу archived_count представления pg_stat_archiver.
    • WAL segments archive failed: количество неудачных попыток архивирования файлов WAL. Эта метрика соответствует столбцу failed_count представления pg_stat_archiver.

    За подробной информацией об этих метриках обратитесь к официальной документации Postgres Pro по представлению pg_stat_archiver.

  • PostgreSQL WAL write speed: этот график отображает метрику WAL generated, которая показывает объём WAL в байтах, сгенерированного за секунду в базе данных. Эта метрика соответствует столбцу wal_bytes представления pg_stat_wal.

    За подробной информацией об этой метрике обратитесь к официальной документации Postgres Pro по представлению pg_stat_wal.

Вы можете выполнить следующие действия с помощью значков в правом верхнем углу графиков планировщика:

  • Чтобы построить отчёт с помощью графика, нажмите Выбрать период для отчета. За подробной информацией о построении отчёта обратитесь к разделу Отчёты.
  • Чтобы сбросить выбор периода времени при построении отчёта, в правом верхнем углу графика нажмите Сбросить.
  • Чтобы скачать график в формате PNG, в правом верхнем углу графика нажмите Save as Image.

Расписания получения выборок

В этом разделе описано, как управлять расписаниями получения выборок, и приведены следующие инструкции:

Создание расписания получения выборок

Перед выполнением этой процедуры нужно сделать следующее:

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

  1. Перейдите к расписаниям получения выборок одним из следующих способов:

    • Через раздел мониторинга:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерРасписание.
      2. Выберите экземпляр, в котором необходимо создать расписание получения выборок, из выпадающего списка Экземпляр.
    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, в котором необходимо создать расписание получения выборок.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерРасписание.

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

  2. В правом верхнем углу страницы нажмите СОЗДАТЬ ЗАДАЧУ.

    Откроется окно создания расписания получения выборок.

  3. Укажите подробную информацию о новом расписании получения выборок (помеченные звёздочкой параметры являются обязательными):

    • Название: уникальное имя расписания получения выборок.

    • Задать выполнение cron-строкой: позволяет описать интервал времени для получения выборок в формате crontab. По умолчанию этот переключатель деактивирован. Если он активирован, в поле Выполнение введите строку в формате crontab.

    • Планирование задачи: тип расписания получения выборок. Этот параметр доступен, только если вы деактивировали переключатель Задать выполнение cron-строкой. Возможные значения:

      • Отложенное по времени: будет получена одна выборка в конкретную дату и время. Для этого значения в поле Время укажите дату и время.

      • По расписанию: получение выборок будет происходить с конкретным интервалом времени. Для этого значения укажите следующие параметры:

        • Интервал: единицы измерения интервала времени. Возможные значения:

          • Минуты. Это значение по умолчанию.
          • Часы.
          • Дни.
        • Повторять каждые: интервал времени для получения выборок по минутам и часам. Этот параметр доступен, только если выбрали Минуты или Часы из выпадающего списка По расписанию.

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

    • Начать и Повторять до: дата и время начала и окончания получения выборок по расписанию. Эти параметры доступны, только если вы активировали переключатель Задать выполнение cron-строкой или выбрали По расписанию для параметра Планирование задачи.

    • Итоговая строка крон: Строка в формате crontab, описывающая интервал времени для получения выборок. Значение подставляется автоматически. Этот параметр доступен, только если вы выбрали По расписанию для параметра Планирование задачи.

    • База данных: база данных, для которой будет получена выборка.

    • Сервер: сервер профилировщика, в каталог которого будет помещена выборка.

    • skip_sizes: указывает, следует ли пропустить сбор размеров отношений при получении выборки. Возможные значения:

      • true: сбор размеров отношений будет пропущен при получении выборки.
      • false: сбор размеров отношений не будет пропущен при получении выборки.
  4. Нажмите СОХРАНИТЬ.

Расписание получения выборок будет создано и появится в таблице расписаний выборок.

Просмотр расписаний получения выборок

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

  1. Перейдите к расписаниям получения выборок одним из следующих способов:

    • Через раздел мониторинга:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерРасписание.
      2. Выберите экземпляр, в котором необходимо просмотреть расписания получения выборок, из выпадающего списка Экземпляр.
    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, в котором необходимо просмотреть расписания получения выборок.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерРасписание.

Отобразится таблица расписаний получения выборок со следующими столбцами:

  • Задача: уникальное имя расписания получения выборок. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.
  • Экземпляр: экземпляр, в котором создано расписание получения выборок.
  • База данных: база данных, для которой получаются выборки. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.
  • Расписание: строка в формате crontab, описывающая интервал времени для получения выборок.
  • Пользователь: пользователь, который создал расписание получения выборок. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.
  • Действия: действия, которые можно выполнить с расписанием получения выборок. За подробной информацией о действиях с расписаниями получения выборок обратитесь к другим инструкциям в этом разделе.

С таблицей расписаний получения выборок можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.
Редактирование расписания получения выборок

Чтобы отредактировать расписание получения выборок, выполните следующие действия:

  1. Перейдите к расписаниям получения выборок одним из следующих способов:

    • Через раздел мониторинга:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерРасписание.
      2. Выберите экземпляр, в котором создано расписание получения выборок, из выпадающего списка Экземпляр.
    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

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

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерРасписание.

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

  2. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsРедактировать рядом с расписанием получения выборок, которое необходимо отредактировать.

    Откроется окно редактирования расписания получения выборок.

  3. Измените параметры расписания получения выборок.

  4. Нажмите СОХРАНИТЬ.

Расписание получения выборок будет отредактировано, изменения отобразятся в таблице расписаний получения выборок.

Выполнение расписания получения выборок

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

Чтобы выполнить расписание получения выборок, выполните следующие действия:

  1. Перейдите к расписаниям получения выборок одним из следующих способов:

    • Через раздел мониторинга:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерРасписание.
      2. Выберите экземпляр, в котором создано расписание получения выборок, из выпадающего списка Экземпляр.
    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

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

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерРасписание.

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

  2. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsВыполнить рядом с расписанием получения выборок, которое необходимо выполнить.

Начнётся выполнение расписания получения выборок. Выборка будет получена и появится в таблице выборок.

Деактивация и активация расписания получения выборок

Расписание получения выборок можно деактивировать, чтобы временно приостановить получение выборок. По умолчанию расписания получения выборок активированы.

Чтобы деактивировать или активировать расписание получения выборок, выполните следующие действия:

  1. Перейдите к расписаниям получения выборок одним из следующих способов::

    • Через раздел мониторинга:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерРасписание.
      2. Выберите экземпляр, в котором создано расписание получения выборок, из выпадающего списка Экземпляр.
    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

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

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерРасписание.

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

  2. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsДеактивировать или Активировать рядом с расписанием получения выборок, которое необходимо деактивировать или активировать.

Удаление расписания получения выборок

ПРЕДУПРЕЖДЕНИЕ

После удаления расписания получения выборок нельзя восстановить.

При удалении расписания получения выборок не удаляются полученные по этому расписанию выборки.

Чтобы удалить расписание получения выборок, выполните следующие действия:

  1. Перейдите к расписаниям получения выборок одним из следующих способов:

    • Через раздел мониторинга:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерРасписание.
      2. Выберите экземпляр, в котором создано расписание получения выборок, из выпадающего списка Экземпляр.
    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

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

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерРасписание.

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

  2. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsУдалить рядом с расписанием получения выборок, которое необходимо удалить.

    Откроется окно удаления расписания получения выборок.

  3. Нажмите УДАЛИТЬ.

Расписание получения выборок будет удалено и перестанет отображаться в таблице.

Отчёты

В этом разделе описано, как управлять отчётами, и приведены следующие инструкции:

Рекомендуется предварительно ознакомиться с доступными графиками профилировщика.

Построение отчёта

Перед выполнением этой процедуры нужно сделать следующее:

Чтобы построить отчёт, выполните следующие действия:

  1. Перейдите к построению отчёта одним из следующих способов:

    • Через раздел мониторинга:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерПостроение отчета.
      2. Выберите экземпляр, в котором необходимо построить отчёт, из выпадающего списка Экземпляр.
    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, в котором необходимо построить отчёт.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерПостроение отчета.

  2. Укажите подробную информацию о новом отчёте (помеченные звёздочкой параметры являются обязательными):

    • База данных: база данных, для которой будет построен отчёт.

    • Сервер: сервер профилировщика, в каталог которого помещены выборки.

    • Отчет: формат периода времени, который будет покрывать отчёт. Возможные значения:

      • По снимкам: отчёт будет покрывать период времени между двумя выборками. Это значение по умолчанию.
      • По времени: отчёт будет покрывать период времени между двумя датами.
    • Тип: тип отчёта. Возможные значения:

      • Стандартный: предоставляет статистику по нагрузке базы данных за указанный период времени. Это значение по умолчанию.
      • Дифференциальный: предоставляет сравнительную статистику по нагрузке базы данных за два указанных периода времени.
    • Интервал или Интервал 1 и Интервал 2: период времени, который будет покрывать отчёт. Формат периода времени зависит от значения, которое вы выбрали в разделе Отчет:

      • Если вы выбрали По снимкам, укажите начальную и конечную выборки.
      • Если вы выбрали По времени, укажите начальную и конечную дату и время.
  3. Нажмите СФОРМИРОВАТЬ ОТЧЁТ.

Отчёт будет построен и появится в таблице отчётов.

Построение отчёта с помощью графика профилировщика

Отчёт также можно построить при просмотре графиков профилировщика. Обратите внимание, что в этом случае в качестве периода времени, который будет покрывать отчёт, невозможно использовать период времени между двумя выборками.

Перед выполнением этой процедуры нужно сделать следующее:

Чтобы построить отчёт с помощью графика профилировщика, выполните следующие действия:

  1. Перейдите к графикам планировщика одним из следующих способов:

    • Через раздел мониторинга:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлер.
      2. Выберите экземпляр, в котором необходимо построить отчёт, из выпадающего списка Экземпляр.
    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, в котором необходимо построить отчёт.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Профайлер.

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

  3. Выберите сервер профилировщика, в каталог которого помещены выборки, из выпадающего списка Сервер.

  4. (Необязательно) В поле Период укажите период времени, за который необходимо отобразить графики профилировщика. Если вы не указываете значение, графики профилировщика отображаются за всё время.

  5. Нажмите ВЫБРАТЬ.

    Отобразятся графики профилировщика.

  6. В правом верхнем углу графика профилировщика нажмите Выбрать период для отчета.

  7. Удерживайте кнопку мыши, после чего выберите на графике профилировщика период времени, который будет покрывать отчёт.

    Откроется окно построения отчёта.

  8. (Необязательно) Чтобы отчёт предоставлял сравнительную статистику по нагрузке базы данных за два указанных периода времени, нажмите ВЫБРАТЬ ЕЩЕ ПЕРИОД и повторите шаг 7.

  9. Нажмите СФОРМИРОВАТЬ ОТЧЕТ.

Отчёт будет построен и появится в таблице отчётов.

Просмотр всех построенных отчётов

Чтобы просмотреть все построенные отчёты, выполните следующие действия:

  1. Перейдите к отчётам одним из следующих способов:

    • Через раздел мониторинга:

      В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерОтчеты.

    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, в котором необходимо просмотреть все построенные отчёты.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерОтчеты.

Отобразится таблица отчётов со следующими столбцами:

  • Экземпляр: экземпляр, в котором построен отчёт.

  • Сервер: сервер профилировщика, в каталог которого помещены выборки. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • БД: база данных, для которой построен отчёт.

  • Статус: статус отчёта. Возможные значения:

    • done: отчёт построен.
    • pending: происходит построение отчёта.
    • error: при построении отчёта произошла ошибка.

    Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Период: период времени, который покрывает отчёт.

  • Начало выполнения и Окончание выполнения: дата и время начала и окончания построения отчёта. Значения в этих столбцах можно сортировать с помощью соответствующих значков.

  • Пользователь: пользователь, который построил отчёт. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Действия: действия, которые можно выполнить с отчётом. За подробной информацией о действиях с отчётами обратитесь к другим инструкциям в этом разделе.

С таблицей отчётов можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
Просмотр и скачивание конкретного отчёта

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

  1. Перейдите к отчётам одним из следующих способов:

    • Через раздел мониторинга:

      В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерОтчеты.

    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, в котором построен отчёт.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерОтчеты.

    Отобразится таблица отчётов.

  2. Выполните одно из следующих действий:

    • Чтобы просмотреть отчёт, нажмите Просмотреть icon-view-report рядом с ним.

      Отобразится страница с отчётом. За подробной информацией о содержимом отчёта обратитесь к официальной документации Postgres Pro.

    • Чтобы скачать отчёт, в правом верхнем углу страницы нажмите СКАЧАТЬ ОТЧЁТ.

      Отчёт в формате HTML скачается на локальное устройство.

Удаление отчёта

ПРЕДУПРЕЖДЕНИЕ

После удаления отчёты нельзя восстановить.

Чтобы удалить отчёт, выполните следующие действия:

  1. Перейдите к отчётам одним из следующих способов:

    • Через раздел мониторинга:

      В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингПрофайлерОтчеты.

    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, в котором построен отчёт.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу ПрофайлерОтчеты.

    Отобразится таблица отчётов.

  2. Нажмите Удалить icon-delete рядом с отчётом, который необходимо удалить.

    Откроется окно удаления отчёта.

  3. Нажмите УДАЛИТЬ.

Отчёт будет удалён и перестанет отображаться в таблице отчётов.

Аутентификация

PPEM позволяет просматривать правила аутентификации по имени узла (host-based authentication; HBA) экземпляра и редактировать их. Правила задаются в файле конфигурации pg_hba.conf.

Просмотр правил аутентификации

Чтобы просмотреть правила аутентификации, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Аутентификация.

Отобразится таблица с информацией из файла конфигурации pg_hba.conf со следующими столбцами:

  • Тип: тип подключения. Возможные значения:

    • local
    • host
    • hostssl
    • hostnossl
    • hostgssenc
    • hostnogssenc
  • База данных: список имён баз данных, к которым применяется правило аутентификации. Значение all означает, что правило применяется ко всем базам данных.

  • Пользователь: список имён пользователей и групп, к которым применяется правило аутентификации. Значение all означает, что правило применяется ко всем пользователям.

  • Адрес: сетевой адрес (или адреса) клиентской машины, к которой применяется правило аутентификации. Это поле может содержать имя компьютера, диапазон IP-адресов или одно из ключевых слов. Значение all означает, что правило применяется к любым IP-адресам. Для правил аутентификации с типом local этот столбец не используется.

  • IP-маска: маска IP-адреса. Отображается, если в столбце Адрес указан только IP-адрес. Способ указания маски в отдельном столбце является альтернативой записи <IP-адрес/длина-маски>. Для правил типа local этот столбец не используется.

  • Метод: метод аутентификации. Возможные значения:

    • trust
    • reject
    • scram-sha-256
    • md5
    • password

    Полный список возможных методов аутентификации можно найти в разделе Методы аутентификации официальной документации Postgres Pro.

  • Опции: параметры, задаваемые для метода аутентификации в формате <имя>=<значение>. Подробное описание параметров, доступных для различных методов аутентификации, можно найти в разделе Методы аутентификации официальной документации Postgres Pro.

Правила в таблице сформированы в том порядке, в котором они следуют в основном файле конфигурации pg_hba.conf. Если в файле используются директивы include, include_if_exists, include_dir, то правила в этих файлах не выводятся.

Чтобы просмотреть весь файл конфигурации pg_hba.conf, в правом верхнем углу страницы нажмите СМОТРЕТЬ ВЕСЬ ФАЙЛ.

Редактирование правил аутентификации

Отредактировать правила аутентификации можно двумя способами:

Добавление строки в файл конфигурации

Чтобы добавить строку в файл конфигурации pg_hba.conf, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Аутентификация.

    Отобразится таблица с информацией из файла конфигурации pg_hba.conf.

  4. В правом верхнем углу страницы нажмите ДОБАВИТЬ СТРОКУ.

    Откроется окно добавления строки.

  5. Укажите подробную информацию о новой строке файла конфигурации pg_hba.conf (помеченные звёздочкой столбцы являются обязательными):

    • Тип: тип подключения.
    • Пользователи (поиск): имена пользователей и групп, к которым применяется добавляемое правило аутентификации. Здесь пользователей можно выбрать из выпадающего списка.
    • Пользователи (будет сохранено в файл): имена пользователей и групп, к которым применяется добавляемое правило аутентификации. Здесь пользователей можно указать вручную через запятую.
    • Базы данных (поиск): имена баз данных, к которым применяется добавляемое правило аутентификации. Здесь базы данных можно выбрать из выпадающего списка.
    • Базы данных (будет сохранено в файл): имена баз данных, к которым применяется добавляемое правило аутентификации. Здесь базы данных можно указать вручную через запятую.
    • Адрес: сетевой адрес (или адреса) клиентской машины, к которой применяется добавляемое правило аутентификации. Этот параметр отображается при выборе в поле Тип любого значения, кроме local.
    • IP-маска: маска IP-адреса. Этот параметр отображается при выборе в поле Тип любого значения, кроме local.
    • Метод: метод аутентификации.
    • Опции: параметры, задаваемые для метода аутентификации в формате <имя=значение>.
  6. Нажмите ДОБАВИТЬ СТРОКУ.

    Строка будет добавлена и появится в таблице файла конфигурации pg_hba.conf.

  7. (Необязательно) Нажмите СБРОСИТЬ в правом нижнем углу страницы, если хотите сбросить все добавленные, но ещё не сохранённые строки. На кнопке сброса отобразится количество добавляемых строк.

  8. В правом нижнем углу страницы нажмите СОХРАНИТЬ. На кнопке сохранения отобразится количество добавляемых строк.

Строка будет добавлена в конец файла конфигурации pg_hba.conf, изменения отобразятся в таблице.

Режим редактирования файла конфигурации

Чтобы отредактировать файл конфигурации с помощью режима редактирования, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Аутентификация.

    Отобразится таблица с информацией из файла конфигурации pg_hba.conf.

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

    Отобразится содержимое файла конфигурации pg_hba.conf.

  5. Выполните одно из следующих действий со строкой:

    • Чтобы переместить строку вверх на одну позицию, нажмите Переместить вверх icon-chevron-up-blue рядом со строкой.
    • Чтобы переместить строку вниз на одну позицию, нажмите Переместить вниз icon-chevron-down-blue рядом со строкой.
    • Чтобы удалить строку, нажмите Удалить icon-delete рядом со строкой.
  6. (Необязательно) Нажмите СБРОСИТЬ в правом нижнем углу страницы, если хотите сбросить все изменённые, но ещё не сохранённые строки. На кнопке сброса отобразится количество изменённых строк.

  7. В правом нижнем углу страницы нажмите СОХРАНИТЬ. На кнопке сохранения отобразится количество изменённых строк.

Файл конфигурации pg_hba.conf будет отредактирован, изменения отобразятся в таблице.

ПРИМЕЧАНИЕ

При сохранении правил экземпляру отправляется сигнал о перезагрузке конфигурации. В этом случае все файлы конфигурации экземпляра перечитываются.

Роли

Чтобы просмотреть активные роли, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, в котором необходимо просмотреть роли.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Роли.

    Отобразится таблица ролей.

  4. (Необязательно) Активируйте переключатель Показывать системные роли, чтобы отобразить в том числе системные роли. По умолчанию этот переключатель деактивирован.

Таблица ролей содержит следующие столбцы:

  • Роль: уникальное имя роли.
  • Superuser: указывает, есть ли у роли право SUPERUSER.
  • Create role: указывает, есть ли у роли право CREATEROLE.
  • Create DB: указывает, есть ли у роли право CREATEDB.
  • Login: указывает, есть ли у роли право LOGIN.

Значения во всех столбцах можно фильтровать с помощью соответствующего значка.

С таблицей ролей можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.

Журнал сообщений

В PPEM ведётся журналирование экземпляров СУБД. Для обеспечения журналирования необходимо предварительно установить и настроить средства журналирования.

Чтобы просмотреть журнал сообщений, выполните одно из следующих действий

  • Чтобы просмотреть журнал сообщений всех экземпляров, в разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингЖурнал сообщений.

  • Чтобы просмотреть журнал сообщений конкретного экземпляра, выполните следующие действия:

    1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

      Отобразится таблица экземпляров.

    2. Нажмите на имя экземпляра, журнал сообщений которого необходимо просмотреть.

      Отобразится страница Обзор.

    3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Журнал сообщений.

Отобразится таблица сообщений со следующими столбцами:

  • Дата, время: дата и время создания сообщения.

  • Экземпляр: экземпляр, к которому относится сообщение.

  • Сеанс: идентификатор пользовательского сеанса, в рамках которого было создано сообщение.

  • Приложение: приложение, которое является источником сообщения.

  • Пользователь: пользователь, от имени которого был установлен сеанс.

  • База данных: база данных, с которой был установлен пользовательский сеанс. Значения в этом столбце можно фильтровать с помощью соответствующего значка.

  • Тип: тип сообщения. Возможные значения:

    • DEBUG1
    • DEBUG2
    • DEBUG3
    • DEBUG4
    • DEBUG5
    • INFO
    • NOTICE
    • WARNING
    • ERROR
    • LOG
    • FATAL
    • PANIC

    За подробной информацией о типах сообщений обратитесь к официальной документации Postgres Pro.

    Значения в этом столбце можно фильтровать с помощью соответствующего значка.

  • Код SQLSTATE: код SQLSTATE сообщения.

  • Сообщение: текст сообщения.

  • Детали: подробный текст сообщения.

  • Подсказка: подсказка к ошибке. В этом столбце отображаются значения только для сообщений с типами ERROR, FATAL и PANIC.

  • Идентификатор запроса: идентификатор запроса, к которому относится сообщение. С помощью этого идентификатора можно найти статистику в представлениях pg_stat_activity, pg_stat_statements и pgpro_stats.

  • Запрос: текст запроса, к которому относится сообщение. Отображение текста запроса ограничено по длине. Запросы можно развернуть или свернуть одним из следующих способов:

    • Чтобы развернуть или свернуть отдельный запрос, нажмите Раскрыть icon-chevron-down-grey или Свернуть icon-chevron-up-grey рядом с ним.
    • Чтобы развернуть или свернуть все запросы, в левом верхнем углу таблицы сообщений нажмите Раскрыть все icon-expand-all или Свернуть все icon-collapse-all.

С таблицей сообщений можно выполнить следующие действия:

  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы найти сообщения по ключевым словам, в поле поиска в правом верхнем углу введите ключевые слова.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.

Консоль заданий

Пользователь или менеджер PPEM могут инициировать выполнение заданий на стороне агентов и экземпляров, а также создавать расписания для таких заданий.

Просмотр заданий

Чтобы просмотреть задания, в разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Консоль заданий.

Отобразится таблица заданий со следующими столбцами:

  • Название: уникальное имя задания с кратким описанием. Значения в этом столбце можно фильтровать с помощью соответствующего значка.

  • Агент: агент, назначенный для выполнения задания. Этот столбец содержит дополнительную информацию:

    • Экземпляр: экземпляр, в котором было выполнено задание.

    Значения в этом столбце можно фильтровать с помощью соответствующих значков.

  • Статус: статус выполнения задания. Возможные значения:

    • COMPLETED: задание выполнено.
    • FAILED: при выполнении задания произошла ошибка.

    Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Начало выполнения и Окончание выполнения: время запуска и окончания задания. Значения в этих столбцах можно фильтровать и сортировать с помощью соответствующих значков.

  • Действия: в этом столбце можно нажать Показать журнал icon-journal, чтобы просмотреть подробную информацию о задании. В этом случае откроется окно со следующими параметрами:

    • Статус: статус выполнения задания.
    • ID: идентификатор задания.
    • Экземпляр: экземпляр, в котором было выполнено задание.
    • Начало и Окончание: время запуска задания.
    • Журнал: запись о задании из журнала. Эта информация доступна при статусе задания COMPLETED.
    • Ошибки: ошибки, произошедшие во время выполнения задания. Эта информация доступна при статусе задания FAILED.

Управление расписаниями

В этом разделе описано, как управлять расписаниями, и приведены следующие инструкции:

Просмотр расписаний

Чтобы просмотреть расписания, в разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Консоль заданийРасписание.

Отобразится таблица расписаний со следующими столбцами:

  • Задача: уникальное имя задания с кратким описанием. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

    Чтобы узнать статус выполнения задания, наведите курсор на её имя. Возможные значения:

    • Активна: задание активировано.
    • Деактивирована: задание деактивировано.
  • Экземпляры: экземпляр, в котором создано расписание. Значения в этом столбце можно фильтровать с помощью соответствующего значка.

  • Пользователь: пользователь, от имени которого создано задание.

  • Расписание: строка в формате crontab, которая описывает расписание.

  • Параметры: параметры выполнения задания.

  • Действия: действия, которые можно выполнить с заданием. За подробной информацией о действиях с заданиями обратитесь к другим инструкциям в этом разделе.

С таблицей расписаний можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.

Деактивация и активация задания

Задание можно деактивировать или активировать, чтобы прекратить или продолжить его выполнение.

Чтобы деактивировать или активировать задание, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Консоль заданийРасписание.

    Отобразится таблица расписаний.

  2. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsДеактивировать или Активировать рядом с заданием, которое необходимо деактивировать или активировать.

Удаление задания

ПРЕДУПРЕЖДЕНИЕ

После удаления задания нельзя восстановить.

Чтобы удалить задание, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Консоль заданийРасписание.

    Отобразится таблица расписаний.

  2. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsУдалить рядом с заданием, которое необходимо удалить.

    Откроется окно удаления задания.

  3. Нажмите УДАЛИТЬ.

Задание будет удалено и перестанет отображаться в таблице расписаний.

Резервное копирование

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

Перед созданием резервных копий необходимо создать хранилища, в которые резервные копии будут помещаться. Можно создавать локальные или S3-хранилища.

ПРИМЕЧАНИЕ

Локальные хранилища предназначены для ознакомления c PPEM. В эксплуатационной среде с большим количеством экземпляров и создаваемых резервных копий рекомендуется использовать S3-хранилища.

Вы можете создавать расписания резервного копирования, в соответствии с которыми резервные копии экземпляра будут создаваться автоматически с указанным интервалом времени. Расписание резервного копирования также позволяет запланировать создание одной резервной копии на указанную дату и время.

В этом разделе описано, как управлять хранилищами, резервными копиями и расписаниями резервного копирования.

Хранилища

В этом разделе описано, как управлять хранилищами, и приведены следующие инструкции:

Создание хранилища

Вы можете создавать локальные хранилища и S3-хранилища.

Создание локального хранилища

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копированиеХранилища РК.

    Отобразится таблица хранилищ.

  2. В правом верхнем углу страницы нажмите СОЗДАТЬ ХРАНИЛИЩЕ РК.

    Откроется окно создания хранилища.

  3. На этапе Выберите тип выберите Локальное хранилище и нажмите ДАЛЕЕ.

  4. На этапе Укажите параметры укажите подробную информацию о новом локальном хранилище (помеченные звёздочкой параметры являются обязательными):

    • Название хранилища: уникальное имя локального хранилища.

    • Каталог копий: путь к каталогу локального хранилища, в который будут помещаться резервные копии. Необходимо указать путь к пустому каталогу.

    • Экземпляр: экземпляр, в котором будет размещён каталог локального хранилища.

    • Системный пользователь: пользователь операционной системы, которому будет принадлежать каталог локального хранилища. Рекомендуется указать пользователя, от имени которого установлен экземпляр, так как этот пользователь должен иметь право на чтение и запись в каталог локального хранилища.

    • Параметры хранения: параметры хранения резервных копий. Доступные параметры:

      • Retention redundancy (избыточность): максимальное количество полных резервных копий в хранилище. Например, если вы указываете 3, в хранилище могут быть не более трёх полных резервных копий.

        Чтобы отключить это ограничение, укажите 0. В этом случае максимальное количество полных резервных копий в хранилище не ограничено.

      • Retention window (окно): количество суток, покрываемое резервными копиями в хранилище. Например, если вы указываете 7, в хранилище всегда должны быть резервные копии, необходимые для восстановления данных за последние семь дней, включая текущий день.

        Чтобы отключить это ограничение, укажите 0. В этом случае резервные копии могут быть удалены из хранилища в любой момент.

      • WAL depth (глубина WAL): минимальное количество резервных копий на каждой линии времени в хранилище. Резервные копии на каждой линии времени необходимы для обеспечения восстановления на определённый момент времени (PITR). Например, если вы указываете 3, в хранилище всегда должны быть как минимум три резервные копии на каждой линии времени.

        Чтобы отключить это ограничение, укажите 0. В этом случае восстановление на определённый момент времени невозможно.

      • Просроченные копии: политика управления устаревшими резервными копиями. Возможные значения:

        • Объединять: при возможности объединять устаревшие резервные копии с новыми.
        • Удалять: удалять устаревшие резервные копии из хранилища.

        Все флажки можно установить одновременно.

      Параметры Retention redundancy, Retention window и WAL depth применяются, только если для параметра Просроченные копии вы установили флажок Объединять и/или Удалять.

      При удалении устаревших резервных копий из хранилища значения параметров Retention redundancy и Retention window учитываются одновременно. Например, если в поле Retention redundancy вы ввели 3, а в поле Retention window7, будут сохранены не более трёх полных резервных копий, а также все резервные копии, необходимые для восстановления данных за последние семь дней, включая текущий день.

      Параметры хранения дополнительно можно настроить для экземпляра, а также для резервной копии при создании резервной копии. Применяется следующий приоритет:

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

      Обратите внимание, что приоритет относится к каждому отдельному параметру хранения, а не ко всем параметрам одновременно. Например, может возникнуть ситуация, при которой используется параметр Retention window, указанный для экземпляра, и параметр WAL depth, указанный для хранилища.

      За более подробной информацией о параметрах хранения обратитесь к официальной документации Postgres Pro по pg_probackup.

  5. Нажмите СОХРАНИТЬ.

Локальное хранилище будет создано и появится в таблице хранилищ.

Создание S3-хранилища

Чтобы создать S3-хранилище, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копированиеХранилища РК, после чего выберите вкладку S3 ХРАНИЛИЩА.

    Отобразится таблица хранилищ.

  2. В правом верхнем углу страницы нажмите СОЗДАТЬ ХРАНИЛИЩЕ РК.

    Откроется окно создания хранилища.

  3. На этапе Выберите тип выберите S3 хранилище и нажмите ДАЛЕЕ.

  4. На этапе Укажите параметры укажите подробную информацию о новом S3-хранилище (помеченные звёздочкой параметры являются обязательными):

    • Название хранилища: уникальное имя S3-хранилища.

    • Тип: поставщик S3-хранилища. Возможные значения:

      • AWS
      • Minio
      • VK
    • Хост: сервер, с которого будут выполняться команды для взаимодействия между менеджером и S3-хранилищем.

    • Имя сервера: сетевой адрес сервера S3-хранилища.

    • Протокол https: указывает, следует ли использовать протокол HTTPS при взаимодействии между менеджером и S3-хранилищем. По умолчанию этот переключатель деактивирован.

    • Порт: номер порта для подключения менеджера к S3-хранилищу.

    • Access Key ID: ключ доступа для подключения менеджера к S3-хранилищу.

    • Bucket: имя корзины (bucket) на сервере S3-хранилища, в которую будут помещаться резервные копии.

    • Region: регион, в котором находится сервер S3-хранилища.

    • Каталог копий: путь к каталогу внутри корзины, в который будут помещаться резервные копии.

    • Параметры хранения: параметры хранения резервных копий. Доступные параметры:

      • Retention redundancy (избыточность): максимальное количество полных резервных копий в хранилище. Например, если вы указываете 3, в хранилище могут быть не более трёх полных резервных копий.

        Чтобы отключить это ограничение, укажите 0. В этом случае максимальное количество полных резервных копий в хранилище не ограничено.

      • Retention window (окно): количество суток, покрываемое резервными копиями в хранилище. Например, если вы указываете 7, в хранилище всегда должны быть резервные копии, необходимые для восстановления данных за последние семь дней, включая текущий день.

        Чтобы отключить это ограничение, укажите 0. В этом случае резервные копии могут быть удалены из хранилища в любой момент.

      • WAL depth (глубина WAL): минимальное количество резервных копий на каждой линии времени в хранилище. Резервные копии на каждой линии времени необходимы для обеспечения восстановления на определённый момент времени (PITR). Например, если вы указываете 3, в хранилище всегда должны быть как минимум три резервные копии на каждой линии времени.

        Чтобы отключить это ограничение, укажите 0. В этом случае восстановление на определённый момент времени невозможно.

      • Просроченные копии: политика управления устаревшими резервными копиями. Возможные значения:

        • Объединять: при возможности объединять устаревшие резервные копии с новыми.
        • Удалять: удалять устаревшие резервные копии из хранилища.

        Все флажки можно установить одновременно.

      Параметры Retention redundancy, Retention window и WAL depth применяются, только если для параметра Просроченные копии вы установили флажок Объединять и/или Удалять.

      При удалении устаревших резервных копий из хранилища значения параметров Retention redundancy и Retention window учитываются одновременно. Например, если в поле Retention redundancy вы ввели 3, а в поле Retention window7, будут сохранены не более трёх полных резервных копий, а также все резервные копии, необходимые для восстановления данных за последние семь дней, включая текущий день.

      Параметры хранения дополнительно можно настроить для экземпляра, а также для резервной копии при создании резервной копии. Применяется следующий приоритет:

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

      Обратите внимание, что приоритет относится к каждому отдельному параметру хранения, а не ко всем параметрам одновременно. Например, может возникнуть ситуация, при которой используется параметр Retention window, указанный для экземпляра, и параметр WAL depth, указанный для хранилища.

      За более подробной информацией о параметрах хранения обратитесь к официальной документации Postgres Pro по pg_probackup.

  5. Нажмите СОХРАНИТЬ.

S3-хранилище будет создано и появится в таблице хранилищ.

Просмотр хранилищ

Чтобы просмотреть хранилища, в разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копированиеХранилища РК. Чтобы просмотреть S3-хранилища, выберите вкладку S3 ХРАНИЛИЩА.

Отобразится таблица хранилищ со следующими столбцами:

  • Название: уникальное имя хранилища.

  • Экземпляр: экземпляр, в котором размещён каталог локального хранилища. Этот столбец отображается только на вкладке ЛОКАЛЬНЫЕ.

  • Каталог: путь к каталогу локального хранилища, в который помещаются резервные копии. Этот столбец отображается только на вкладке ЛОКАЛЬНЫЕ.

  • Параметры:

    • Тип: поставщик S3-хранилища. Возможные значения:

      • AWS
      • Minio
      • VK
    • Хост: сервер, с которого выполняются команды для взаимодействия между менеджером и S3-хранилищем.

    • Порт: номер порта для подключения менеджера к S3-хранилищу.

    • Bucket: имя корзины (bucket) на сервере S3-хранилища, в которую помещаются резервные копии.

    • Region: регион, в котором находится сервер S3-хранилища.

    Этот столбец отображается только на вкладке S3 ХРАНИЛИЩА.

  • Retention redundancy, шт. (избыточность): максимальное количество полных резервных копий в хранилище.

  • Retention window, дни (окно): количество суток, покрываемое резервными копиями в хранилище.

  • WAL depth, шт. (глубина WAL): минимальное количество резервных копий на каждой линии времени в хранилище. Резервные копии на каждой линии времени необходимы для обеспечения восстановления на определённый момент времени (PITR).

  • Просроченные копии: политика управления устаревшими резервными копиями. Возможные значения:

    • Выключено: не выполнять никаких действий с устаревшими резервными копиями.
    • Объединять: при возможности объединять устаревшие резервные копии с новыми.
    • Удалять: удалять устаревшие резервные копии из хранилища.

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

Чтобы обновить таблицу хранилищ, в правом верхнем углу страницы нажмите Обновить данные icon-update.

Редактирование хранилища

Чтобы отредактировать хранилище, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копированиеХранилища РК. Чтобы отредактировать S3-хранилище, выберите вкладку S3 ХРАНИЛИЩА.

    Отобразится таблица хранилищ.

  2. Нажмите Редактировать icon-pencil рядом с хранилищем, которое необходимо отредактировать.

    Откроется окно редактирования хранилища.

  3. Измените параметры хранилища.

  4. Нажмите СОХРАНИТЬ.

Хранилище будет отредактировано, изменения отобразятся в таблице хранилищ.

Удаление хранилища

ПРЕДУПРЕЖДЕНИЕ

После удаления хранилища нельзя восстановить.

Чтобы удалить хранилище, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копированиеХранилища РК. Чтобы удалить S3-хранилище, выберите вкладку S3 ХРАНИЛИЩА.

    Отобразится таблица хранилищ.

  2. Нажмите Удалить icon-delete рядом с хранилищем, которое необходимо удалить.

    Откроется окно удаления хранилища.

  3. Нажмите УДАЛИТЬ.

Хранилище будет удалено и перестанет отображаться в таблице хранилищ.

Резервные копии

В этом разделе описано, как управлять резервными копиями, и приведены следующие инструкции:

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

Чтобы создать резервную копию, выполните следующие действия:

  1. Перейдите к резервным копиям одним из следующих способов:

    • Через раздел резервного копирования:

      В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копирование.

    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, для которого необходимо создать резервную копию.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Резервные копии.

    Отобразится таблица резервных копий.

  2. В правом верхнем углу страницы нажмите СОЗДАТЬ РЕЗЕРВНУЮ КОПИЮ.

    Откроется окно создания резервной копии.

  3. На этапе Общее укажите подробную информацию о новой резервной копии (помеченные звёздочкой параметры являются обязательными):

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

    • Хранилище копий: хранилище, в которое будет помещена резервная копия. Можно выбрать локальное или S3-хранилище. Локальное хранилище должно находиться на одном сервере с экземпляром, для которого вы создаёте резервную копию.

    • Пользователь и Пароль: имя и пароль пользователя СУБД, от имени которого будет выполнено резервное копирование.

    • База данных: база данных для подключения к экземпляру.

    • Режим копирования: режим резервного копирования, в котором будет создана резервная копия. Возможные значения:

      • full. Это значение по умолчанию.
      • page.
      • ptrack.
      • delta.

      За подробной информацией о режимах резервного копирования обратитесь к официальной документации Postgres Pro по pg_probackup.

    • Количество потоков: количество параллельных потоков, которые будут запущены при создании резервной копии.

    • Время ожидания (сек): таймаут в секундах для ожидания архивирования сегментов WAL и потоковой передачи. Значение по умолчанию: 300.

    • Создать автономную резервную копию: указывает, следует ли создать потоковую (stream) резервную копию с записями WAL, необходимыми для последующего восстановления экземпляра. По умолчанию этот флажок снят.

    • Слот репликации: слот репликации, который будет использован для передачи записей WAL.

    • Создать временный слот репликации: указывает, следует ли создать временный слот репликации для передачи записей WAL экземпляра, для которого вы создаёте резервную копию. По умолчанию этот флажок снят. Если он установлен, сегменты WAL остаются доступны, даже если при создании резервной копии происходит их переключение.

  4. Нажмите ДАЛЕЕ и на этапе Дополнительно при необходимости укажите дополнительную информацию:

    • Внешние каталоги: путь к каталогу экземпляра, который будет дополнительно включён в резервную копию.

    • Включить каталог log: указывает, следует ли включить в резервную копию каталог с журналами активности экземпляра. По умолчанию этот флажок снят.

    • Не проверять копию: указывает, следует ли пропустить автоматическую проверку созданной резервной копии. По умолчанию этот флажок снят. Если он установлен, резервная копия создаётся быстрее.

    • Растягивать выполнение контрольной точки: указывает, следует ли начать создание резервной копии только после выполнения запланированной контрольной точки. По умолчанию этот флажок снят.

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

    • Уровень сжатия: уровень сжатия файлов при создании резервной копии. Можно указать значение от 0 до 9, где 0 — выключить сжатие файлов, а 9 — использовать наилучшее сжатие файлов. Значение по умолчанию: 0.

    • Алгоритм сжатия: алгоритм, используемый при сжатии файлов. Этот параметр доступен, только если в поле Уровень сжатия вы ввели значение больше 0. Возможные значения:

      • zlib
      • lz4
      • zstd
      • pglz
    • Закрепление: параметры закрепления резервной копии. Возможные значения:

      • Не закреплять: не закреплять резервную копию. При выборе этого значения используются параметры, указанные в разделе Параметры хранения. Это значение по умолчанию.
      • ttl: резервную копию невозможно удалить из хранилища на протяжении конкретного количества дней после её создания. Для этого значения в поле Срок хранения, дни введите количество дней.
      • expire-time: резервную копию невозможно удалить из хранилища до конкретной даты и времени. Для этого значения в поле Срок хранения до укажите дату и время.
    • Параметры хранения: параметры хранения резервных копий. Доступные параметры:

      • Retention redundancy (избыточность): максимальное количество полных резервных копий в хранилище. Например, если вы указываете 3, в хранилище могут быть не более трёх полных резервных копий.

        Чтобы отключить это ограничение, укажите 0. В этом случае максимальное количество полных резервных копий в хранилище не ограничено.

      • Retention window (окно): количество суток, покрываемое резервными копиями в хранилище. Например, если вы указываете 7, в хранилище всегда должны быть резервные копии, необходимые для восстановления данных за последние семь дней, включая текущий день.

        Чтобы отключить это ограничение, укажите 0. В этом случае резервные копии могут быть удалены из хранилища в любой момент.

      • WAL depth (глубина WAL): минимальное количество резервных копий на каждой линии времени в хранилище. Резервные копии на каждой линии времени необходимы для обеспечения восстановления на определённый момент времени (PITR). Например, если вы указываете 3, в хранилище всегда должны быть как минимум три резервные копии на каждой линии времени.

        Чтобы отключить это ограничение, укажите 0. В этом случае восстановление на определённый момент времени невозможно.

      • Просроченные копии: политика управления устаревшими резервными копиями. Возможные значения:

        • Объединять: при возможности объединять устаревшие резервные копии с новыми.
        • Удалять: удалять устаревшие резервные копии из хранилища.
        • Удалить просроченные WAL: удалять WAL устаревших резервных копий из хранилища.

        Все флажки можно установить одновременно.

      Параметры Retention redundancy, Retention window и WAL depth применяются, только если для параметра Просроченные копии вы установили флажок Объединять и/или Удалять.

      При удалении устаревших резервных копий из хранилища значения параметров Retention redundancy и Retention window учитываются одновременно. Например, если в поле Retention redundancy вы ввели 3, а в поле Retention window7, будут сохранены не более трёх полных резервных копий, а также все резервные копии, необходимые для восстановления данных за последние семь дней, включая текущий день.

      Параметры хранения дополнительно можно настроить для экземпляра, а также для хранилища при создании и редактировании хранилища. Применяется следующий приоритет:

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

      Обратите внимание, что приоритет относится к каждому отдельному параметру хранения, а не ко всем параметрам одновременно. Например, может возникнуть ситуация, при которой используется параметр Retention window, указанный для экземпляра, и параметр WAL depth, указанный для хранилища.

      За более подробной информацией о параметрах хранения обратитесь к официальной документации Postgres Pro по pg_probackup.

  5. Нажмите ВЫПОЛНИТЬ РК.

Резервная копия будет создана и появится в таблицах резервных копий.

Просмотр резервных копий

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

  • Через раздел резервного копирования:

    В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копирование.

  • Через раздел настройки конкретного экземпляра:

    1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

      Отобразится таблица экземпляров.

    2. Нажмите на имя экземпляра, резервные копии которого необходимо просмотреть.

      Отобразится страница Обзор.

    3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Резервные копии.

Отобразится таблица резервных копий со следующими столбцами:

  • Размер: размер резервной копии. Этот столбец содержит дополнительную информацию:

    • ID: идентификатор резервной копии в pg_probackup.

    Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Режим: режим резервного копирования, в котором создана резервная копия. Возможные значения:

    • FULL
    • DELTA
    • PAGE
    • PTRACK

    За подробной информацией о режимах резервного копирования обратитесь к официальной документации Postgres Pro по pg_probackup.

    Значения в этом столбце можно фильтровать с помощью соответствующего значка.

  • Хранилище: хранилище, в которое помещена резервная копия. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Экземпляр: экземпляр, для которого создана резервная копия. Значения в этом столбце можно фильтровать и сортировать с помощью соответствующих значков.

  • Статус: статус резервной копии. Возможные значения:

    • REQUESTED: создание резервной копии было запрошено.
    • SCHEDULED: создание резервной копии было запланировано.
    • RUNNING: происходит создание резервной копии.
    • DONE: резервная копия создана.
    • DELETING_CANCEL: удаление резервной копии было отменено.
    • DELETING: происходит удаление резервной копии.
    • VALIDATING: происходит проверка целостности резервной копии.
    • VALIDATED: проверка целостности резервной копии показала, что она не была повреждена в процессе хранения.
    • MERGING: происходит объединение устаревшей резервной копии с новой.
    • MERGED: устаревшая резервная копия объединена с новой.
    • ERROR: произошла ошибка, связанная с резервным копированием. Обратите внимание, что этот статус также отображается, если проверка целостности резервной копии показала, что она была повреждена в процессе хранения.

    Значения в этом столбце можно фильтровать с помощью соответствующего значка.

  • Начало выполнения и Окончание выполнения: дата и время начала и окончания создания резервной копии. Значения в этих столбцах можно фильтровать и сортировать с помощью соответствующих значков.

  • Пользователь: пользователь, который создал резервную копию. Значения в этом столбце можно фильтровать с помощью соответствующего значка.

  • Статус валидации: статус проверки целостности резервной копии. Возможные значения:

    • validated: проверка целостности резервной копии была выполнена.
    • validating: происходит проверка целостности резервной копии.
  • Начало валидации и Окончание валидации: дата и время начала и окончания проверки целостности резервной копии.

  • Действия: действия, которые можно выполнить с резервной копией. За подробной информацией о действиях с резервными копиями обратитесь к другим инструкциям в этом разделе.

С таблицей резервных копий можно выполнить следующие действия:

  • Чтобы изменить ширину столбца, потяните его границу с помощью мыши.
  • Чтобы изменить порядок отображения столбцов, в правом верхнем углу таблицы нажмите РЕДАКТИРОВАТЬ, после чего в меню перетащите имена столбцов с помощью мыши. Столбец, имя которого отображается выше всех в меню, является первым в таблице.
  • Чтобы скрыть или показать столбцы, в правом верхнем углу страницы нажмите РЕДАКТИРОВАТЬ, после чего в меню деактивируйте или активируйте переключатели рядом с именами столбцов.
  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.

Проверка целостности резервной копии

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

Чтобы проверить целостность резервной копии, выполните следующие действия:

  1. Перейдите к резервным копиям одним из следующих способов:

    • Через раздел резервного копирования:

      В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копирование.

    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, для которого создана резервная копия.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Резервные копии.

    Отобразится таблица резервных копий.

  2. Нажмите Валидировать резервную копию icon-validate рядом с резервной копией, для которой необходимо выполнить проверку целостности.

Начнётся проверка целостности резервной копии. Результат можно просмотреть в столбце Статус таблицы резервных копий:

  • Если резервная копия была повреждена в процессе хранения, отобразится значение ERROR.
  • Если резервная копия не была повреждена в процессе хранения, отобразится значение VALIDATED.

Просмотр журнала резервной копии

Журнал резервной копии позволяет получить информацию о прогрессе её создания.

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

  1. Перейдите к резервным копиям одним из следующих способов:

    • Через раздел резервного копирования:

      В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копирование.

    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, для которого создана резервная копия.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Резервные копии.

    Отобразится таблица резервных копий.

  2. Нажмите Журнал резервной копии icon-journal рядом с резервной копией, журнал которой необходимо просмотреть.

Откроется журнал резервной копии.

Редактирование параметров закрепления резервной копии

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

  1. Перейдите к резервным копиям одним из следующих способов:

    • Через раздел резервного копирования:

      В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копирование.

    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, для которого создана резервная копия.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Резервные копии.

    Отобразится таблица резервных копий.

  2. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsРедактировать закрепление рядом с резервной копией, параметры закрепления которой необходимо отредактировать.

    Откроется окно редактирования закрепления резервной копии.

  3. Выберите одно из следующих значений:

    • Не закреплять: применить параметры хранения резервной копии. Это значение по умолчанию.
    • ttl: резервную копию невозможно удалить на протяжении конкретного количества дней после редактирования параметров её хранения. Для этого значения в поле Срок хранения, дни введите количество дней.
    • expire-time: резервную копию невозможно удалить до конкретной даты и времени. Для этого значения в поле Срок хранения до укажите дату и время.
  4. Нажмите СОХРАНИТЬ.

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

Создание экземпляра из резервной копии

Перед выполнением этой процедуры создайте резервную копию.

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

  1. Перейдите к резервным копиям одним из следующих способов:

    • Через раздел резервного копирования:

      В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копирование.

    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, для которого создана резервная копия.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Резервные копии.

    Отобразится таблица резервных копий.

  2. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsВосстановить рядом с резервной копией, из которой необходимо создать экземпляр.

    Откроется окно создания экземпляра.

  3. Укажите подробную информацию о новом экземпляре (помеченные звёздочкой параметры являются обязательными):

    • Название: уникальное имя экземпляра.

    • Сервер: сервер, на котором будет установлен экземпляр.

    • Системный пользователь: пользователь операционной системы, которому будут принадлежать файлы и каталоги экземпляра, и от имени которого будет запущена служба экземпляра. В большинстве случаев таким пользователем является posgtres. Рекомендуется убедиться, что указанный пользователь существует в операционной системе.

    • Основной каталог данных: путь к каталогу на сервере, в котором будут размещены основные каталоги и файлы экземпляра.

    • Адрес подключения и Порт подключения: сетевой адрес и номер порта, которые экземпляр будет использовать для приёма клиентских подключений. Сетевой адрес по умолчанию: localhost.

    • Теги: теги, которые будут назначены экземпляру. Назначение тега можно отменить, нажав на крестик icon-cross-grey рядом с его именем.

    • Резервная копия: резервная копия, из которой будет создан экземпляр. Значение подставляется автоматически.

    • Размер РК: размер резервной копии, из которой будет создан экземпляр. Значение подставляется автоматически.

    • Точка восстановления: состояние, которое необходимо восстановить для экземпляра. Возможные значения:

      • ---: восстановить последнее состояние экземпляра в рамках резервной копии. Это значение по умолчанию.
      • Время: восстановить состояние экземпляра на конкретную дату и время в рамках резервной копии. Для этого значения в поле Время укажите дату и время.
      • LSN: восстановить состояние экземпляра, соответствующее конкретному последовательному номеру в WAL. Для этого значения в поле LSN введите последовательный номер в WAL.
      • Транзакция: восстановить состояние экземпляра, соответствующее конкретному номеру транзакции. Для этого значения в поле Транзакция введите номер транзакции.

      Для значений Время, LSN и Транзакция дополнительно необходимо указать следующие параметры:

      • Восстановить включая указанное значение: указывает, следует ли восстановить состояние для экземпляра до указанного значения включительно. Этот флажок установлен по умолчанию.

        Например, если в поле Транзакция вы ввели 123456 и установили флажок Восстановить включая указанное значение, для экземпляра будет восстановлено состояние, соответствующее транзакции 123456. Если вы не установили этот флажок, для экземпляра будет восстановлено состояние, соответствующее транзакции 123455.

      • Действие после восстановления: указывает, какое действие следует выполнить на сервере после восстановления состояния для экземпляра. Возможные значения:

        • Приостановить восстановление (pause): приостановить создание экземпляра из резервной копии. Позволяет убедиться перед созданием экземпляра, что для него было восстановлено правильное состояние. Это значение по умолчанию.
        • Завершить восстановление (promote): создать экземпляр из резервной копии и начать принимать клиентские подключения.
        • Выключить инстанс (shutdown): создать экземпляр из резервной копии и остановить сервер.
    • Частичное восстановление: указывает, какие базы данных будут восстановлены в экземпляре, или наоборот исключены из процесса восстановления. Возможные значения:

      • Не использовать: восстановить все базы данных в экземпляре. Это значение по умолчанию.
      • Исключить некоторые БД: исключить конкретные базы данных из процесса восстановления.
      • Восстановить некоторые БД: восстановить конкретные базы данных в экземпляре.

      Для значений Исключить некоторые БД и Восстановить некоторые БД укажите уникальное имя базы данных с помощью параметра Базы данных и нажмите ДОБАВИТЬ БАЗУ ДАННЫХ. Вы можете добавить несколько имён баз данных. Имя базы данных можно удалить, нажав на значок корзины icon-delete рядом с ним.

    • Проверка доступного пространства: позволяет провести проверку свободного дискового пространства на сервере, чтобы убедиться, что дискового пространства будет достаточно для создания экземпляра из резервной копии. Чтобы запустить проверку, нажмите ПРОВЕРИТЬ.

  4. Нажмите ВЫПОЛНИТЬ.

Экземпляр будет создан из резервной копии и появится в таблице экземпляров.

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

ПРЕДУПРЕЖДЕНИЕ

После удаления резервные копии нельзя восстановить.

Чтобы удалить резервную копию, выполните следующие действия:

  1. Перейдите к резервным копиям одним из следующих способов:

    • Через раздел резервного копирования:

      В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копирование.

    • Через раздел настройки конкретного экземпляра:

      1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

        Отобразится таблица экземпляров.

      2. Нажмите на имя экземпляра, для которого создана резервная копия.

        Отобразится страница Обзор.

      3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Резервные копии.

    Отобразится таблица резервных копий.

  2. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsУдалить рядом с резервной копией, которую необходимо удалить.

    Откроется окно удаления резервной копии.

  3. Нажмите УДАЛИТЬ.

Резервная копия будет удалена и перестанет отображаться в таблице резервных копий.

Расписания резервного копирования

В этом разделе описано, как управлять расписаниями резервного копирования, и приведены следующие инструкции:

Создание расписания резервного копирования

Чтобы создать расписание резервного копирования, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копированиеРасписание.

    Отобразится таблица расписаний резервного копирования.

  2. В правом верхнем углу страницы нажмите на кнопку СОЗДАТЬ ЗАДАЧУ.

    Откроется окно создания расписания резервного копирования.

  3. На этапе Общее укажите подробную информацию о новом расписании резервного копирования (помеченные звёздочкой параметры являются обязательными):

    • Название: уникальное имя расписания резервного копирования.

    • Задать выполнение cron-строкой: позволяет описать интервал времени для создания резервных копий в формате crontab. По умолчанию этот переключатель деактивирован. Если он активирован, в поле Выполнение введите строку в формате crontab.

    • Планирование задачи: тип расписания резервного копирования. Этот параметр доступен, только если вы деактивировали переключатель Задать выполнение cron-строкой. Возможные значения:

      • Отложенное по времени: будет создана одна резервная копия в конкретную дату и время. Для этого значения в поле Время укажите дату и время.

      • По расписанию: резервные копии будут создаваться с конкретным интервалом времени. Для этого значения укажите следующие параметры:

        • Интервал: единицы измерения интервала времени. Возможные значения:

          • Минуты. Это значение по умолчанию.
          • Часы.
          • Дни.
        • Повторять каждые: интервал времени для создания резервных копий по минутам и часам. Этот параметр доступен, только если выбрали Минуты или Часы из выпадающего списка По расписанию.

        • Дни выполнения: указывает, по каким дням следует создавать резервные копии.

    • Начать и Повторять до: дата и время начала и окончания создания резервных копий по расписанию. Эти параметры доступны, только если вы активировали переключатель Задать выполнение cron-строкой или выбрали По расписанию в разделе Планирование задачи.

    • Итоговая строка крон: строка в формате crontab, описывающая интервал времени для создания резервных копий. Значение подставляется автоматически. Этот параметр доступен, только если вы выбрали По расписанию в разделе Планирование задачи.

    • Экземпляр: экземпляр, для которого будет создана резервная копия.

    • Хранилище копий: хранилище, в которое будет помещена резервная копия. Можно выбрать локальное или S3-хранилище. Локальное хранилище должно находиться на одном сервере с экземпляром, для которого вы создаёте резервную копию.

    • Пользователь и Пароль: имя и пароль пользователя СУБД, от имени которого будет выполнено резервное копирование.

    • База данных: база данных для подключения к экземпляру.

    • Режим копирования: режим резервного копирования, в котором будет создана резервная копия. Возможные значения:

      • full. Это значение по умолчанию.
      • page.
      • ptrack.
      • delta.

      За подробной информацией о режимах резервного копирования обратитесь к официальной документации Postgres Pro по pg_probackup.

    • Количество потоков: количество параллельных потоков, которые будут запущены при создании резервной копии.

    • Время ожидания (сек): таймаут в секундах для ожидания архивирования сегментов WAL и потоковой передачи. Значение по умолчанию: 300.

    • Создать автономную резервную копию: указывает, следует ли создать потоковую (stream) резервную копию с записями WAL, необходимыми для последующего восстановления экземпляра. По умолчанию этот флажок снят.

    • Слот репликации: слот репликации, который будет использован для передачи записей WAL.

    • Создать временный слот репликации: указывает, следует ли создать временный слот репликации для передачи записей WAL экземпляра, для которого вы создаёте резервную копию. По умолчанию этот флажок снят. Если он установлен, сегменты WAL остаются доступны, даже если при создании резервной копии происходит их переключение.

  4. Нажмите ДАЛЕЕ и на этапе Дополнительно при необходимости укажите дополнительную информацию:

    • Внешние каталоги: путь к каталогу экземпляра, который будет дополнительно включён в резервную копию.

    • Включить каталог log: указывает, следует ли включить в резервную копию каталог с журналами активности экземпляра. По умолчанию этот флажок снят.

    • Не проверять копию: указывает, следует ли пропустить автоматическую проверку созданной резервной копии. По умолчанию этот флажок снят. Если он установлен, резервная копия создаётся быстрее.

    • Растягивать выполнение контрольной точки: указывает, следует ли начать создание резервной копии только после выполнения запланированной контрольной точки. По умолчанию этот флажок снят.

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

    • Уровень сжатия: уровень сжатия файлов при создании резервной копии. Можно указать значение от 0 до 9, где 0 — выключить сжатие файлов, а 9 — использовать наилучшее сжатие файлов. Значение по умолчанию: 0.

    • Алгоритм сжатия: алгоритм, используемый при сжатии файлов. Этот параметр доступен, только если в поле Уровень сжатия вы ввели значение больше 0. Возможные значения:

      • zlib
      • lz4
      • zstd
      • pglz
    • Закрепление: параметры закрепления резервной копии. Возможные значения:

      • Не закреплять: не закреплять резервную копию. При выборе этого значения используются параметры, указанные в разделе Параметры хранения. Это значение по умолчанию.
      • ttl: резервную копию невозможно удалить на протяжении конкретного количества дней после её создания. Для этого значения в поле Срок хранения, дни введите количество дней.
      • expire-time: резервную копию невозможно удалить до конкретной даты и времени. Для этого значения в поле Срок хранения до укажите дату и время.
    • Параметры хранения: параметры хранения резервных копий. Доступные параметры:

      • Retention redundancy (избыточность): максимальное количество полных резервных копий в хранилище. Например, если вы указываете 3, в хранилище могут быть не более трёх полных резервных копий.

        Чтобы отключить это ограничение, укажите 0. В этом случае максимальное количество полных резервных копий в хранилище не ограничено.

      • Retention window (окно): количество суток, покрываемое резервными копиями в хранилище. Например, если вы указываете 7, в хранилище всегда должны быть резервные копии, необходимые для восстановления данных за последние семь дней, включая текущий день.

        Чтобы отключить это ограничение, укажите 0. В этом случае резервные копии могут быть удалены из хранилища в любой момент.

      • WAL depth (глубина WAL): минимальное количество резервных копий на каждой линии времени в хранилище. Резервные копии на каждой линии времени необходимы для обеспечения восстановления на определённый момент времени (PITR). Например, если вы указываете 3, в хранилище всегда должны быть как минимум три резервные копии на каждой линии времени.

        Чтобы отключить это ограничение, укажите 0. В этом случае восстановление на определённый момент времени невозможно.

      • Просроченные копии: политика управления устаревшими резервными копиями. Возможные значения:

        • Объединять: при возможности объединять устаревшие резервные копии с новыми.
        • Удалять: удалять устаревшие резервные копии из хранилища.
        • Удалить просроченные WAL: удалять WAL устаревших резервных копий из хранилища.

        Все флажки можно установить одновременно.

      Параметры Retention redundancy, Retention window и WAL depth применяются, только если для параметра Просроченные копии вы установили флажок Объединять и/или Удалять.

      При удалении устаревших резервных копий из хранилища значения параметров Retention redundancy и Retention window учитываются одновременно. Например, если в поле Retention redundancy вы ввели 3, а в поле Retention window7, будут сохранены не более трёх полных резервных копий, а также все резервные копии, необходимые для восстановления данных за последние семь дней, включая текущий день.

      Параметры хранения дополнительно можно настроить для экземпляра, а также для хранилища при создании и редактировании хранилища. Применяется следующий приоритет:

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

      Обратите внимание, что приоритет относится к каждому отдельному параметру хранения, а не ко всем параметрам одновременно. Например, может возникнуть ситуация, при которой используется параметр Retention window, указанный для экземпляра, и параметр WAL depth, указанный для хранилища.

      За более подробной информацией о параметрах хранения обратитесь к официальной документации Postgres Pro по pg_probackup.

  5. Нажмите СОХРАНИТЬ.

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

Просмотр расписаний резервного копирования

Чтобы просмотреть расписания резервного копирования, в разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копированиеРасписание.

Отобразится таблица расписаний резервного копирования со следующими столбцами:

  • Задача: уникальное имя расписания резервного копирования. Значения в этом столбце можно сортировать с помощью соответствующего значка.

  • Агент: агент, который создаёт резервные копии. Этот столбец содержит дополнительную информацию:

    • Экземпляр: экземпляр, для которого создаются резервные копии.

    Значения в этом столбце можно фильтровать с помощью соответствующих значков.

  • Хранилище: хранилище, в которое помещаются резервные копии. Значения в этом столбце можно фильтровать с помощью соответствующего значка.

  • Сжатие: уровень сжатия файлов при создании резервных копий. Возможные значения: от 0 до 9, где 0 — выключить сжатие файлов, а 9 — использовать наилучшее сжатие файлов.

  • Последнее выполнение: дата и время создания последней резервной копии.

  • Расписание: строка в формате crontab, описывающая интервал времени для создания резервных копий.

  • Пользователь: пользователь, который создал расписание резервного копирования. Значения в этом столбце можно фильтровать с помощью соответствующего значка.

С таблицей расписаний резервного копирования можно выполнить следующие действия:

  • Чтобы обновить таблицу, в правом верхнем углу страницы нажмите Обновить данные icon-update.
  • Чтобы сбросить все фильтры, в правом верхнем углу страницы нажмите Сбросить фильтры.

Выполнение расписания резервного копирования

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

Чтобы выполнить расписание резервного копирования, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копированиеРасписание.

    Отобразится таблица расписаний резервного копирования.

  2. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsВыполнить рядом с расписанием резервного копирования, которое необходимо выполнить.

Начнётся выполнение задания резервного копирования. Резервная копия будет создана и появится в таблицах резервных копий.

Деактивация и активация расписания резервного копирования

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

Чтобы деактивировать или активировать расписание резервного копирования, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копированиеРасписание.

    Отобразится таблица расписаний резервного копирования.

  2. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsДеактивировать или Активировать рядом с расписанием резервного копирования, которое необходимо деактивировать или активировать.

Удаление расписания резервного копирования

ПРЕДУПРЕЖДЕНИЕ

После удаления расписания резервного копирования нельзя восстановить.

При удалении расписания резервного копирования не удаляются созданные по этому расписанию резервные копии.

Чтобы удалить расписание резервного копирования, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу Резервное копированиеРасписание.

    Отобразится таблица расписаний резервного копирования.

  2. Нажмите на значок трёх вертикальных точек icon-three-vertical-dotsУдалить рядом с расписанием резервного копирования, которое необходимо удалить.

    Откроется окно удаления расписания резервного копирования.

  3. Нажмите УДАЛИТЬ.

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

Настройка параметров хранения резервных копий для экземпляра

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

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу ИнфраструктураЭкземпляры.

    Отобразится таблица экземпляров.

  2. Нажмите на имя экземпляра, для которого необходимо настроить параметры хранения резервных копий.

    Отобразится страница Обзор.

  3. В разделе ДЕТАЛИ ЭКЗЕМПЛЯРА навигационной панели перейдите на страницу Резервные копииНастройки.

    Отобразятся параметры хранения резервных копий.

  4. В правом верхнем углу страницы выберите хранилище из выпадающего списка.

  5. Укажите параметры хранения резервных копий:

    • retention_redundancy (избыточность): максимальное количество полных резервных копий в хранилище. Например, если вы указываете 3, в хранилище могут быть не более трёх полных резервных копий.

      Чтобы отключить это ограничение, укажите 0. В этом случае максимальное количество полных резервных копий в хранилище не ограничено.

    • retention_window (окно): количество суток, покрываемое резервными копиями в хранилище. Например, если вы указываете 7, в хранилище всегда должны быть резервные копии, необходимые для восстановления данных за последние семь дней, включая текущий день.

      Чтобы отключить это ограничение, укажите 0. В этом случае резервные копии могут быть удалены из хранилища в любой момент.

    • delete_expired: политика управления устаревшими резервными копиями. Возможные значения:

      • Объединять: при возможности объединять устаревшие резервные копии с новыми.
      • Удалять: удалять устаревшие резервные копии из хранилища.
      • Удалить просроченные WAL: удалять WAL устаревших резервных копий из хранилища.

      Все флажки можно установить одновременно.

    • wal_depth: (глубина WAL): минимальное количество резервных копий на каждой линии времени в хранилище. Резервные копии на каждой линии времени необходимы для обеспечения восстановления на определённый момент времени (PITR). Например, если вы указываете 3, в хранилище всегда должны быть как минимум три резервные копии на каждой линии времени.

      Чтобы отключить это ограничение, укажите 0. В этом случае восстановление на определённый момент времени невозможно.

    Параметры retention_redundancy, retention_window и wal_depth применяются, только если для параметра delete_expired вы установили флажок Объединять и/или Удалять.

    При удалении устаревших резервных копий из хранилища значения параметров retention_redundancy и retention_window учитываются одновременно. Например, если для параметра retention_redundancy вы указали 3, а для параметра retention_window7, будут сохранены не более трёх полных резервных копий, а также все резервные копии, необходимые для восстановления данных за последние семь дней, включая текущий день.

    Параметры хранения дополнительно можно настроить для резервной копии при создании резервной копии, а также для хранилища при создании и редактировании хранилища. Применяется следующий приоритет:

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

    Обратите внимание, что приоритет относится к каждому отдельному параметру хранения, а не ко всем параметрам одновременно. Например, может возникнуть ситуация, при которой используется параметр retention_window, указанный для экземпляра, и параметр wal_depth, указанный для хранилища.

    За более подробной информацией о параметрах хранения обратитесь к официальной документации Postgres Pro по pg_probackup.

  6. Нажмите ПРИМЕНИТЬ.

Визуализация плана запроса

PPEM поддерживает визуализацию планов запросов, которые можно получить с помощью команды EXPLAIN. За более подробной информацией о команде EXPLAIN обратитесь к официальной документации Postgres Pro.

Визуализация содержит дерево узлов плана запроса и позволяет перемещаться между узлами. Каждый узел имеет уникальное имя и соответствует конкретной стадии выполнения запроса. При нажатии на имя узла отображается расширенная информация об этом узле.

В этом разделе описано, как управлять визуализациями планов запросов, и приведены следующие инструкции:

Создание визуализации плана запроса

Перед выполнением этой процедуры нужно сделать следующее:

  1. Получите план запроса:

    EXPLAIN (ANALYZE, COSTS, VERBOSE, BUFFERS, FORMAT JSON)
  2. Скопируйте полученный план запроса и сохраните его.

Чтобы создать визуализацию плана запроса, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингВизуализация.

    Отобразятся параметры визуализации плана запроса.

  2. Укажите подробную информацию о новой визуализации плана запроса (помеченные звёздочкой параметры являются обязательными):

    • Название: уникальное имя визуализации плана запроса. Если вы не указываете имя, оно генерируется автоматически.
    • План запроса: план запроса, который будет визуализирован.
    • Запрос: текст запроса, план которого будет визуализирован. Если вы указываете текст запроса, он добавляется в визуализацию плана запроса.

    Вы можете создать визуализацию на основе примера плана запроса. Для этого в правом верхнем углу страницы в блоке Примеры нажмите на значок карандаша icon-pencil-in-box рядом с примером. В этом случае значения параметров визуализации плана запроса будут подставлены автоматически.

    Значения параметров визуализации плана запроса можно очистить, нажав ОЧИСТИТЬ.

  3. Нажмите ВИЗУАЛИЗИРОВАТЬ.

Визуализация плана запроса будет создана, отобразится на странице и появится в блоке Сохраненные планы.

Просмотр визуализации плана запроса

Чтобы просмотреть визуализацию плана запроса, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингВизуализация.

    Отобразятся параметры визуализации плана запроса.

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

Визуализация плана запроса отобразится на странице.

Редактирование визуализации плана запроса

Чтобы отредактировать визуализацию плана запроса, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингВизуализация.

    Отобразятся параметры визуализации плана запроса.

  2. В блоке Сохраненные планы нажмите значок карандаша icon-pencil-in-box рядом с визуализацией плана запроса, которую необходимо отредактировать.

  3. Измените параметры визуализации плана запроса.

  4. Нажмите ВИЗУАЛИЗИРОВАТЬ.

Визуализация плана запроса будет отредактирована и отобразится на странице.

Удаление визуализации плана запроса

ПРЕДУПРЕЖДЕНИЕ

После удаления визуализации планов запросов нельзя восстановить.

Чтобы удалить визуализацию плана запроса, выполните следующие действия:

  1. В разделе УПРАВЛЕНИЕ навигационной панели перейдите на страницу МониторингВизуализация.

    Отобразятся параметры визуализации плана запроса.

  2. В блоке Сохраненные планы нажмите на значок корзины icon-bin рядом с визуализацией плана запроса, которую необходимо удалить.

Визуализация плана запроса будет удалена и перестанет отображаться в блоке Сохраненные планы.

Обновление и миграция

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

Информация об обновлениях версий PPEM доступна в разделе Что нового.

Подробнее читайте в руководствах по обновлению:

Обновление на версию PPEM 2.1

Рекомендуемый порядок обновления на версию 2.1:

Обновление менеджера

ВАЖНО!

Перед обновлением менеджера рекомендуется дождаться завершения всех регламентных заданий, запущенных в PPEM (см. активные задания в Консоли заданий).

Обновление менеджера осуществляется в следующем порядке:

  1. Обновите метаданные репозитория PPEM и пакетного менеджера.

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

  2. Остановите службу менеджера версии 2.0 с помощью команды systemctl stop ppem.

  3. Установите менеджер версии 2.1.

    Процедура установки выполняется с помощью пакетного менеджера.

  4. Обновите файлы конфигурации.

    Конфигурационные файлы размещаются в каталоге /etc. При необходимости настройки должны быть перенесены в новый файл конфигурации.

  5. Запустите службу менеджера версии 2.1 с помощью команды systemctl start ppem.

  6. Убедитесь, что служба менеджера успешно запустилась и доступна с помощью команды systemctl status ppem.

Обновление агентов

Обновление агентов осуществляется в следующем порядке:

  1. Обновите метаданные репозитория PPEM и пакетного менеджера.

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

  2. Остановите службу агента версии 2.0 с помощью команды systemctl stop ppem-agent.

  3. Установите агента версии 2.1.

    Процедура установки выполняется с помощью пакетного менеджера.

  4. Обновите файлы конфигурации.

    Конфигурационные файлы размещаются в каталоге /etc, при необходимости настройки должны быть перенесены в новый файл конфигурации.

  5. Запустите службу агента версии 2.1 с помощью команды systemctl start ppem-agent.

  6. Убедитесь, что служба агента успешно запустилась и доступна с помощью команды systemctl status ppem-agent.

Обновление на версию PPEM 2.0

В этом разделе содержатся рекомендации и инструкция по миграции на версию PPEM 2.0.

ПРИМЕЧАНИЕ

Версия 2.0 обратно несовместима с версией 1.0. Инструментов для плавной миграции данных в настоящее время не предоставляется.

Рекомендации по миграции

При миграции на версию PPEM 2.0 необходимо учесть следующие изменения, реализованные в PPEM 2.0:

  • Компоненты менеджера и агента переписаны на языке Golang и реализуют новую версию API. По этой причине некоторые компоненты PPEM версии 2.0 несовместимы с компонентами версии 1.0:

    • менеджер версии 2.0 несовместим с агентами версии 1.0 и наоборот;
    • веб-приложение версии 2.0 несовместимо с менеджером версии 1.0 и наоборот;
    • файлы конфигурации менеджера версии 1.0 несовместимы с файлами конфигурации менеджера версии 2.0 и наоборот;
    • файлы конфигурации агентов версии 1.0 несовместимы с файлами конфигурации агентов версии 2.0 и наоборот.
  • Агенты версии 2.0 теперь не осуществляют регулярный сбор метрик и журналов экземпляров СУБД. Для работы с метриками и журналами PPEM теперь использует pgpro-otel-collector.

В связи с этим предлагаются следующие рекомендации по миграции на PPEM 2.0:

  • Развёртывание PPEM 2.0 рекомендуется выполнять на оборудовании, отдельном от PPEM 1.0. Рекомендуется сначала выполнить полное выключение PPEM 1.0, включая агенты и менеджер, затем установку и запуск менеджера и агентов PPEM 2.0.

    ВАЖНО!

    Попытки одновременного выполнения одних и тех же операций над одними и теми же экземплярами СУБД в двух версиях PPEM могут привести к непредсказуемым последствиям. Избегайте ситуаций одновременной работы в двух версиях PPEM. Одновременная работа двух версий не тестировалась и не гарантирована.

  • Для использования расширенных функций отслеживания работоспособности экземпляров СУБД в PPEM рекомендуется установить и настроить pgpro-otel-collector. Подробнее читайте в официальной документации pgpro-otel-collector и разделе Интеграция с PPEM.

Порядок миграции

Рекомендуемый порядок миграции на версию 2.0:

  1. Полностью выключите все компоненты PPEM 1.0.

  2. На отдельном сервере установите менеджер версии 2.0.

    База репозитория для менеджера версии 2.0 может быть размещена в том же экземпляре СУБД, где размещена база репозитория менеджера версии 1.0.

    ВАЖНО!

    Не используйте одну и ту же базу репозитория для обеих версий, в противном случае менеджер версии 2.0 не сможет запуститься.

  3. Чтобы убедиться в успешности установки менеджера версии 2.0, авторизуйтесь в веб-приложении и получите API-ключ для настройки агента.

  4. Установите агент версии 2.0.

  5. На всех серверах экземпляров СУБД удалите сначала агенты, а затем менеджер версии 1.0.

Поиск и устранение неисправностей

В этом разделе описаны способы поиска и устранения проблем.

Проверка состояния служб

Сервисы менеджера и агента управляются системным менеджером systemd:

  • ppem — служба менеджера.
  • ppem-agent — служба агента.

Для просмотра состояния служб воспользуйтесь утилитой systemctl:

# systemctl status ppem
● ppem.service - PostgresPro Enterprise Manager
     Loaded: loaded (/lib/systemd/system/ppem.service; enabled; preset: enabled)
     Active: active (running) since Sat 2024-11-16 15:43:01 MSK; 48min ago
   Main PID: 53582 (ppem-manager)
      Tasks: 7 (limit: 3512)
     Memory: 226.9M
        CPU: 8.445s
     CGroup: /system.slice/ppem.service
             └─53582 /usr/sbin/ppem-manager -config /etc/ppem-manager.yml

Вывод статуса содержит:

  • ppem.service — имя и описание сервиса. Индикатор точки ("●") использует цветовую индикацию для подсветки общего состояния сервиса.

    Белый цвет — нейтральное состояние "inactive" или "deactivating".

    Красный цвет — состояние ошибки "failed" или "error".

    Зеленый цвет — нормальное состояние "active", "reloading" или "activating".

  • Loaded — статус конфигурации сервиса, означающий, что конфигурация загружена в память и это нормальное состояние.

  • Active — статус выполнения сервиса, означающий, что сервис успешно запущен и активен в данный момент. Также рядом отображается время запуска и продолжительность выполнения.

  • Main PID — идентификатор и название главного процесса в списке процессов операционной системы.

  • Tasks — общее количество процессов и потоков, порожденных главным процессом.

  • Memory и CPU — использование системных ресурсов, памяти и процессорного времени.

  • CGroup — контрольная группа, в которую помещены процессы сервиса.

  • Дополнительно после основной секции будут отображаться последние записи служебных сообщений.

В нормальном состоянии сервисы менеджера и агентов должны быть в состоянии Active.

Проверка журналов сообщений

Службы менеджера и агента в процессе работы могут отправлять служебные сообщения. По умолчанию и менеджер и агент используют стандартный вывод (stdout) для отправки служебных журналов и сообщений. Сообщения перехватываются средствами systemd и могут быть просмотрены с помощью journalctl:

# journalctl -u ppem
...

Для вывода поступающих новых сообщений доступна опция -f:

# journalctl -fu ppem
...

Настройка уровня детализации журналирования

Журналирование имеет несколько уровней детализации:

  • error — журналирование только ошибок.
  • warning — журналирование ошибок и предупреждений.
  • info — журналирование ошибок, предупреждений и информативных сообщений. Этот уровень используется по умолчанию.
  • debug — журналирование ошибок, предупреждений, информативных сообщений и отладочных сообщений.

Настройка журналирования выполняется в файлах конфигурации /etc/ppem-manager.yml и /etc/ppem-agent.yml в параметре log.level. Изменения настроек журналирования вступают в силу после перезапуска службы.

Термины и сокращения

Общие термины

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

Менеджер (англ. manager) — компонент системы PPEM, который координирует работу агентов и обслуживает запросы пользователей PPEM.

Агент (англ. agent) — сервисный компонент системы PPEM, который принимает команды от менеджера и занимается управлением экземпляров СУБД.

Ресурсы и объекты

Сервер (англ. host) — физический сервер (или виртуальная машина), на котором установлена операционная система. На серверах могут размещаться агенты, экземпляры СУБД и некоторые типы источников данных.

Экземпляр СУБД (англ. instance) — СУБД PostgreSQL, работающая на сервере или виртуальной машине.

Объекты экземпляра (англ. instance objects) — отдельные объекты внутри СУБД, такие как табличные пространства, базы данных, схемы, таблицы, индексы и т.п.

Настройки экземпляра (англ. instance settings) — параметры настройки экземпляра СУБД, обычно приводятся в основном файле конфигурации postgresql.conf.

Сервис экземпляра (англ. instance service) — способ запуска экземпляра СУБД, обычно systemd, но может быть и pg_ctl (является устаревшим способом и не рекомендуется).

Источник данных (datasource, #arch, #top-level-objects) — подключаемый источник для хранения ресурсов определенного типа. PPEM различает источники данных по типу размещения, например внутренние и внешние, и по типу хранимых ресурсов, например источники метрик, журналов и резервных копий.

Управление доступом

Привилегия (англ. privilege) — право доступа на выполнение действия относительно ресурса в системе PPEM.

Роль PPEM (англ. role) — группа привилегий в системе PPEM.

Пользователь PPEM (англ. user) — учетная запись в системе PPEM, ассоциированная с пользователем в системе PPEM.

Группа (англ. group) — группа пользователей в системе PPEM.