Глава 3. Быстрый старт

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

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

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

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

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

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 будет загружен на ваше локальное устройство.

    Путь к файлу конфигурации — /etc/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. В файле конфигурации менеджера /etc/ppem-manager.yml:

    • Укажите имя хоста для подключения с помощью параметра repo.host:

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

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

      repo:
        user: "ppem"
        password: "пароль_пользователя_СУБД"

    Примечание

    Для подключения менеджера к базе данных репозитория вместо параметров выше можно использовать URL. URL необходимо указать в параметре repo.url:

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

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

  7. (Необязательно) Чтобы разместить объекты базы данных в схеме, отличной от используемой по умолчанию схемы public, укажите имя пользовательской схемы в файле конфигурации менеджера /etc/ppem-manager.yml с помощью параметра repo.schema:

    repo:
      schema: "myschema"

    Пользовательская схема будет создана автоматически. При необходимости её также можно создать вручную:

    # sudo -u postgres psql -d ppem -c "CREATE SCHEMA myschema AUTHORIZATION ppem;"

    Обратите внимание, что параметр repo.schema можно изменить только до запуска репозитория. Если необходимо сменить схему после запуска, потребуется пересоздать базу данных репозитория. При этом существующие объекты базы данных автоматически перенесены не будут.

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

    # 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: "имя_агента"
      manager:
        url: "URL_для_подключения_к_менеджеру"
        api_key: "ключ_API_для_подключения_к_менеджеру"
      instance:
        connection_defaults:
          user: "имя_пользователя_СУБД"
          password: "пароль_пользователя_СУБД"
    http:
      server:
        address: "сетевой_адрес_для_входящих_подключений"
        port: "порт_для_входящих_подключений"

    Где:

    • 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: сетевой адрес и номер порта для входящих сетевых подключений.

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

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

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