Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comboversions
Links98901;48005219;19562597
ProductExeReport
VerNamesот 2.1;1.4-2.0;1.2

ExeReport поставляется в формате контейнеризированного приложения, которое может быть запущено как в Docker, так и в кластере Kubernetes.

На данной странице представлена инструкция для инсталляции ПО ExeReport в Docker. По вопросам установки ПО ExeReport в кластере Kubernetes необходимо обращаться на портал технической поддержки.

Table of Contents

Expand
titleМинимальные системные требования

Параметр

Значение

Процессор

Не менее 4 vCPU.

Частота – не ниже 2,6 ГГц.

Поддерживает работу с 64-разрядными приложениями на аппаратном уровне.

ОЗУ

Минимум 4 GB RAM

Свободное пространство на жестком диске

Объем – не менее 50 Гб.

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

Подготовка к установке

  1. Установка Docker
    Expand
    titleИнструкция по установке

    Include Page
    Установка Docker
    Установка Docker

  2. Для хоста, на котором установлен Docker обязательно должен быть сконфигурирован ip адрес отличный от "127.0.0.1". Данный ip адрес должен быть использован в качестве [host_ip] при выполнении дальнейших пунктов инструкции.

  3. Подготовка сертификатов 

    Expand
    titleИнструкция

    Include Page
    Подготовка сертификатов
    Подготовка сертификатов

    Tip

    В инсталляционном пакете в папке crt поставляются самоподписанные сертификаты для домена mycompany.local. Если вы разворачиваете ПО ExeMES в демонстрационных, тестовых или обучающих целях (не на продуктивной среде) и не планируете использовать другой домен для работы приложения, то вы можете пропустить данный шаг инструкции и воспользоваться готовыми сертификатами.

  4. Настройка DNS
    Expand
    titleИнструкция

    Include Page
    Настройка DNS
    Настройка DNS

  5. Установка Guardant Control Center и Guardant SLK

    Expand
    titleИнструкция

    Include Page
    Установка Guardant Control Center и Guardant SLK
    Установка Guardant Control Center и Guardant SLK

Установка ExeReport для ОС семейства Linux

Excerpt

Для установки и запуска ExeReport необходимо распаковать архив, содержащий ПО (инсталляционный пакет) и предоставленный Вендором.

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

Затем необходимо отредактировать файл docker-compose.yaml, расположенный в корневой папке каталога:

  • заменить по тексту файла параметр [host_ip] на ip адрес хоста, на котором инсталлирован Docker;
  • заменить по тексту файла параметр [license_server_ip] на ip адрес хоста, на котором установлен сервер лицензирования Guardant Control Center;
  • настроить необходимые переменные окружения.
Tip

Если вы разворачиваете ПО ExeReport в демонстрационных, тестовых или обучающих целях (не на продуктивной среде) с использованием домена mycompany.local и не планируете использовать другой домен для работы приложения, то вы можете пропустить следующие 4 шага

  • скопировать в каталог /exereport/crt сгенерированные ранее сертификаты;
  • предоставить права на сгенерированные ранее файлы сертификатов, выполнив команду:
    Code Block
    chmod -R 777 /exereport/crt/
  • отредактировать файл docker-compose.yaml: заменить по тексту файла "mycompany.local" на имя домена, для которого сгенерированы сертификаты;
  • отредактировать файлы: /exereport/data/exereport/keycloak.json: заменить в ссылках "mycompany.local" на имя домена, для которого сгенерированы сертификаты. Пример:
    Code Block
    languagejs
    title/exemes/data/exemesclient/keycloak.json
    {
      "realm": "exemes",
      "auth-server-url": "https://keycloak.[домен]:5787/",
      "ssl-required": "external",
      "resource": "exereport",
      "verify-token-audience": false,
      "credentials": {
        "secret": "********************************"
      },
      "use-resource-role-mappings": true,
      "confidential-port": 0,
      "policy-enforcer": {},
      "Logout": "https://report.[домен]:9200/"
    }

Далее необходимо открыть терминал ОС с root доступом, перейти в каталог, появившийся после распаковки архива, и выполнить команду:

Code Block
bash install-exereport.sh

при этом произойдет загрузка образов, копирование данных и запуск сервисов.

Tip

При выполнении указанного выше скрипта производится установка Portainer - средства для мониторинга работы контейнеризированных приложений. Если вам не требуется установка Portainer удалите из файла

install-exereport.sh следующий код:
Code Block
docker volume create portainer_data
docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:2.20.2
systemctl restart docker
Note

Если файл не запускается, измените права на этот файл командой:

Code Block
chmod +x install-exereport.sh

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

После завершения инсталляции необходимо открыть web-консоль администрирования Keycloak в браузере по адресу https://keycloak.[домен]:5787. Для доступа в Keycloak необходимо воспользоваться логином и паролем административной учетной записи, которые указаны в параметрах KEYCLOAK_ADMIN_USER и KEYCLOAK_ADMIN_PASSWORD настроек контейнера keycloak в docker-compose.yaml.

В Keycloak необходимо перейти в настройки realm exemes, создать пользователя и добавить его в группу ExeReport_Admins.

Tip

Если вы запускаете ExeReport в демонстрационных, тестовых или обучающих целях (не на продуктивной среде) с использованием домена mycompany.local, то вы можете пропустить следующие шаги

В Keycloak необходимо сконфигурировать доменные имена для клиента:

  1. В левом боковом меню выберите пункт «Clients»
  2. В центральной части экрана выберите клиент «exereport»
  3. На вкладке «Settings» скорректируйте доменные имена, укажите домен в соответствии с вашей конфигурацией:

Anchor
env
env
Настройка переменных окружения

Info

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

Пакет инсталляции ExeReport уже содержит настроенные переменные окружения и если вы не планируете менять настройки по умолчанию, то можете пропустить данный шаг.

Доступные настройки:

Expand
titleНастройка подключения к БД

Настройка переменной окружения DBConnection выполняется путем редактирования файла docker-compose.yaml. Пример:

Code Block
DBConnection: "Host=localhost;Port=5432;Database=exereport;Username=postgres;Password=postgres"
Expand
titleРазрешение CORS
Info

CORS (Cross-Origin Resource Sharing) — это механизм браузера, который позволяет определить список ресурсов, к которым страница может получить доступ.

Он необходим для обеспечения безопасности и защиты пользователей от злоумышленников при использовании HTTP-протокола.

По умолчанию сайты могут запрашивать ресурсы только со своего origin. Такое ограничение называется Same-Origin Policy. CORS расширяет Same-Origin Policy, позволяя получать доступ к ресурсам с разных доменов.

Разрешения CORS могут потребоваться, если вы вызываете методы ExeReport в сторонних приложениях: внешних пользовательских портала, таких как ELMA365 и прочие.

Для разрешения CORS необходимо передать переменную окружения AllowedCORSUrls, в которой через запятую перечислить разрешенные сайты. Настройка переменной окружения AllowedCORSUrls выполняется путем редактирования файла docker-compose.yaml. Пример:

Code Block
AllowedCORSUrls: "https://elma365.exeplant.local,https://portal.exeplant.local"
Expand
titleНастройка подключения к ExeMES
Note

Доступно начиная с версии ExeReport 1.4

Info

Для гибкой настройки параметров отчетов возможно использовать web API ExeMES.

Для подключения ExeReport к ExeMES необходимо передать переменную окружения MiddlewareApiRootUri, в которой указать ссылку на запущенное приложение ExeMES Server. Настройка переменной окружения MiddlewareApiRootUri выполняется путем редактирования файла docker-compose.yaml (по умолчанию строка закомментирована в файле в составе инсталляционного пакета). Пример:

Code Block
MiddlewareApiRootUri: "https://middleware.[домен]:7142/api"
Expand
titleНастройка управления временем жизни отчета
Note

Доступно начиная с версии ExeReport 1.4

Info

Время жизни отчета - это значение в секундах, по истечении которого отчет будет удален из внутренней памяти контейнера приложения. По-умолчанию эта настройка = 60 секундам. Минимальное возможное значение 10 секунд, максимальное - 1200 секунд.

Для настройки времени жизни отчета необходимо передать переменную окружения WebReportLifeTimeInterval, в которой указать значение в секундах. Настройка переменной окружения WebReportLifeTimeInterval выполняется путем редактирования файла docker-compose.yaml. Пример:

Code Block
WebReportLifeTimeInterval: "600"

Доустановка ExeReport к существующей инсталляции ExeMES для ОС семейства Linux

Note

Доступно начиная с версии ExeReport 2.1

Если вам необходимо установить ExeReport на хост, где уже установлен ExeMES необходимо выполнить следующие действия:

Expand
titleДобавить файлы конфигурации ExeReport
  1. Распакуйте инсталляционный пакет ExeReport на хост, где уже запущен ExeMES;
  2. Скопируйте из распакованного инсталляционного пакета каталог /data/exereport в каталог /data/ с конфигурационными файлами ExeMES
    Tip

    По умолчанию ExeMES устанавливается в каталог root/dev/

  3. Проверьте, что используемый в ExeMES сертификат crt содержит имя report.[домен]
    Tip

    По умолчанию сертификаты ExeMES расположены в каталоге root/dev/crt/

    При необходимости сгенерируйте новые сертификаты с указанием имен для ExeReport.
Expand
titleНастроить существующий экземпляр Keycloak для работы с ExeReport
  1. Зайдите в существующий экземпляр keycloak под УЗ администратора. В меню слева выберите реалм exemes и перейдите в пункт меню Clients:
  2. В основной части экрана нажмите кнопку «Import client»:
  3. Ниже в центральной части экрана нажмите «Browse...»:
  4.  Выберите файл из распакованного инсталляционного пакета \upd\exereport_client.json, содержащий настройки для клиента ExeReport и нажмите кнопку Save:
  5. При успешном импорте настроек появится соответствующее сообщение:
    Warning

    При возникновении ошибок в процессе импорта обратитесь в техническую поддержку

  6. В меню слева перейдите в пункт меню Clients, выберите в списке клиент exereport:
  7. Перейдите на вкладку Settings и укажите следующие значения в соответствии с вашей конфигурацией:
    Root URL = https://report.[домен].local:9200/
    Home URL = https://report.[домен].local:9200/
    Valid redirect URIs = https://report.[домен].local:9200/*
    Valid post logout redirect URIs = https://report.[домен].local:9200/*

    Tip

    При использовании демонстрационного домена и сертификатов mycompany.local, которые входят в инсталляционный пакет ExeReport, пункты 7 и 8 можно пропустить

     

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

  1. В центральной части экрана перейдите на вкладку «Roles» и нажмите кнопку «Create role»:
  2. Создайте 2 роли со следующими параметрами:
    • Role name = MR, Description = Доступ к настройке отчетов.
    • Role name = VR, Description = Доступ к просмотру отчетов.
  3. Назначьте новые роли соответствующим группам пользователей, в зависимости от вашей конфигурации. Подробно об Управлении доступом к ExeReport.
Expand
titleУстановить лицензию ExeReport

Активируйте лицензию ExeReport на уже существующем сервере лицензирования ExeMES или установите сервер лицензирования и активируйте лицензию отдельно для ExeReport.

Expand
titleСконфигурируйте и запустите ExeReport в docker
  1. Откройте консоль под УЗ администратора ОС на хосте с установленным ExeMES;
  2. Перейдите в папку с распакованным инсталляционным пакетом ExeReport;
  3. Выполните команду:
    Code Block
    docker load -i ./images/exereport[версия ExeReport].tar
  4. Перейдите в каталог с установленным экземпляром ExeMES;
    Tip

    По умолчанию ExeMES устанавливается в каталог root/dev/

  5. Модифицируйте существующий файл docker-compose.yaml ExeMES: добавьте следующий код в файл docker-compose.yaml:
    Code Block
      exereport:
        container_name: exereport
        image: "git.exeplant.ru:5050/mes-develop/exereport:[версия ExeReport]"
        restart: always
        environment:
          ASPNETCORE_URLS: "https://+;http://+"
          ASPNETCORE_HTTPS_PORT: "9200"
          ASPNETCORE_Kestrel__Certificates__Default__Password: "[пароль сертификата pfx]"
          ASPNETCORE_Kestrel__Certificates__Default__Path: "/root/.aspnet/https/[имя сертификата ExeReport].pfx"
          TZ: "Europe/Moscow"
          DBConnection: "[строка подключения к экземпляру PG SQL, который используется ExeMES]"
          GCCSettings:BroadcastRemoteLicenses: "0"
          GCCSettings:UseRemoteHosts: "1"
          GCCSettings:Remotehosts: "[license_server_ip]"
          WebReportLifeTimeInterval: "60"
          MiddlewareApiRootUri: "https://[имя запущенного приложения ExeMES Server]:7142/api"
          
        volumes:
          - type: bind
            source: /root/dev/crt/[имя сертификата ExeReport].pfx
            target: /root/.aspnet/https/[имя сертификата ExeReport].pfx  
          - type: bind
            source: /root/dev/crt/[имя сертификата ExeReport].crt
            target: /etc/ssl/certs/[имя сертификата ExeReport].pem    
        ports:
          - "9200:443"
        extra_hosts:
          - "localhost report.[домен] middleware.[домен] keycloak.[домен]:[host_ip]"
    Tip

    Следующие параметры можно сконфигурировать по аналогии с имеющейся конфигурацией в файле docker-compose.yaml:

    • строка подключения к экземпляру PG SQL, который используется ExeMES;
    • имя запущенного приложение ExeMES Server;
    • имя сертификата pfx (если используются существующий сертификат ExeMES);
    • пароль сертификата pfx (если используются существующий сертификат ExeMES);
    • license_server_ip (если используется существующий сервер лицензирования);
    • host_ip;
    • домен.
  6. Откройте консоль и перейдите в папку с отредактированным файлом docker-compose.yaml;
  7. Выполните команду:
    Code Block
    docker compose up -d

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

Для проверки работоспособности необходимо перейти в браузере по адресу "https://report.[домен]:9200/", авторизоваться под учетной записью пользователя с правами администратора, который был создан при установке и убедиться, что стартовая страница ExeReport отображается корректно.

Tip

Если вы хотите отказаться от использования портов в адресах приложений, то необходимо использовать прокси-сервер, например Nginx

Warning

В настройках контейнеров ExeReport по умолчанию указана синхронизация времени контейнера с временем хоста, на котором он запущен. Рекомендуется синхронизировать локальное время хостов, на которых запускаются контейнеры ExeReport с корпоративным ntp сервером.