По умолчанию PPEM использует схему public для объектов, которые хранятся в базе данных репозитория.
Если эту схему нельзя использовать, например, в соответствии с политиками безопасности вашей организации, то вы можете настроить PPEM так, чтобы использовалась другая схема. Это можно сделать как сразу после установки во время настройки менеджера (рекомендуемый вариант), так и позднее, как показано ниже.
Описанная ниже процедура не ограничивается только схемой public: она может применяться для изменения любой схемы, которая используется базой данных репозитория.
В процессе изменения схемы для базы данных репозитория PPEM станет недоступен на короткий промежуток времени. Рекомендуется запланировать период обслуживания для выполнения процедуры.
Чтобы настроить другую схему для базы данных репозитория в работающей инсталляции PPEM:
На каждом сервере, где установлен менеджер PPEM, остановите службы менеджера:
systemctl stop ppem ppem-gui
На любом сервере, где установлен менеджер PPEM, откройте файл конфигурации /etc/ppem-manager.yml и найдите раздел repo.
Раздел выглядит следующим образом:
repo: name:"имя_базы_данных_репозитория"schema:"старое_имя_схемы"user:"имя_пользователя_СУБД"password:"пароль_пользователя_СУБД"
Обратите внимание на значение параметра repo.schema: это имя схемы, которое будет изменено.
Если параметр repo.schema отсутствует, значит, используется схема public.
Подключитесь к базе данных репозитория, указанной в параметре repo.name, от имени владельца базы данных (обычно это пользователь ppem):
sudo -uвладелец_базы_данныхpsql -dимя_базы_данных
Прежде чем переходить к следующим шагам, создайте резервную копию базы данных репозитория и подтвердите целостность этой резервной копии.
Переключите схему для базы данных репозитория:
Измените текущее имя схемы на любое другое по вашему выбору:
ALTER SCHEMAстарое_имя_схемыRENAME TOновое_имя_схемы;
(Необязательно) При необходимости создайте схему со старым именем заново:
Создайте новую пустую схему:
CREATE SCHEMA старое_имя_схемы;Назначьте созданной схеме необходимые права.
Обычно вы можете назначить те же самые права, которые были назначены переименованной схеме. Чтобы посмотреть права, назначенные схеме, выполните запрос:
\dn+ новое_имя_схемыПример 33.1. Как создать заново распространённую схему public
CREATE SCHEMA public; GRANT USAGE, CREATE ON SCHEMA public TO pg_database_owner; GRANT USAGE ON SCHEMA public TO PUBLIC;
На каждом сервере, где установлен менеджер PPEM, выполните следующие действия:
Откройте файл конфигурации /etc/ppem-manager.yml и найдите раздел repo.
Измените параметр repo.schema или добавьте его, если он отсутствует:
repo: name:"имя_базы_данных_репозитория"schema:"новое_имя_схемы"user:"имя_пользователя_СУБД"password:"пароль_пользователя_СУБД"
Используйте новое имя схемы, которое было задано выше при помощи команды ALTER SCHEMA ... RENAME TO ....
Сохраните обновлённый файл конфигурации.
Запустите службы, используемые менеджером:
systemctl start ppem ppem-gui
Убедитесь, что службы успешно запущены и доступны:
systemctl status ppem ppem-gui
Войдите в веб-приложение PPEM и проверьте следующее:
Сводная информация о PPEM. Убедитесь, что информация о репозитории корректна.
Схемы, которые используются в базе данных репозитория PPEM. Убедитесь, что объекты базы данных не принадлежат схеме старое_имя_схемы.
Правила очистки для базы данных репозитория. Убедитесь, что ни одно из правил не использует схему старое_имя_схемы.
Статусы агентов PPEM . Все агенты должны быть в статусе online.