Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Expand
titleОбновление на версию 2.0

Для обновления на версию ExeMES необходимо выполнить последовательно следующие шаги.


Expand
titleОбновить БД MESDB
Warning

Процесс обновления БД MESDB до версии 2.0 возможен, начиная с версии 1.3. Для обновления до версии 1.3 см. пункт Обновление на версию 1.3

Для обновления необходимо использовать

Expand
titleФункционал автоматического обновления БД MESDB.
Warning

Выполните бэкап БД MESDB перед обновлением

Для обновления БД MESDB из приложения ExeMES Client необходимо пройти стандартную процедуру авторизации в приложении Keycloak.

Далее в правом верхнем углу экрана нужно нажать на имя пользователя. Затем нужно нажать на информацию о версии ExeMES Client.

В появившемся окне находится кнопка проверки актуальности БД MESDB.


Image Added

После нажатия на кнопку открывается страница обновлления БД.

Image Added

После нажатия на кнопку проверки актуальности БД MESDB в окне появится информация о необходимости обновления БД MESDB.

В случае актуальной версии MESDB сообщение будет следующим

Image Added

В случае необходимости обновления в окне появится кнопка Обновить версию БД и детальная информация о вносимых изменениях.

Image Added

Для обновления необходимо нажать на кнопку обновить версию БД и подтвердить выбор во всплывающем окне.

Image Added

После завершения обновления появится соответствущее сообщение и лог обновления.

Image Added

Обновление версии БД MESDB успешно завершено

titleОбновить БД MESDB
Для обновления необходимо использовать функционал автоматического обновления БД MESDB

.


Expand
titleМодифицировать существующий реалм Keycloak
  1. Зайдите в приложение Keycloak под администратором реалма и выберите в выпадающем списке реалм exemes
  2. В левом боковом меню выберите пункт Clients
  3. В центральной части экрана нажмите на кнопку Import Client
  4. Ниже в центральной части экрана нажмите Browse...
  5. Выберите файл exemesruntime-client.json из папки upd, которая находится в составе дистрибутива exemes 2.0.
    1. После завершения загрузки файла, переместитесь в конец страницы и нажмите кнопку Save.
    2. Image AddedАналогичные действия необходимо произвести со вторым файлом в папке upd: exesched.json.
    Image Removed
  6. После завершения импорта конфигурации убедитесь что новая конфигурация появилась в списке клиентов
  7. Создайте новые роли для импортированных клиентов, для этого выберите в списке exemesruntime-client.
    1. В центральной части экрана перейдите на вкладку Roles и нажмите на кнопку Create roleImage Modified
    2. Ниже заполните поля Role name и Description, в завершении нажмите кнопку SaveImage Modified
    3. Таким образом, необходимо создать 4 роли с описаниями:
      • Role name = Inventory,  Description = Доступ к экрану управления складскими остатками;
      • Role name = Operator, Description = Доступ к панели оператора;
      • Role name = Quality, Description = Доступ к экрану управления качеством;
      • Role name = Utilization, Description = Доступ к экрану управления событиями оборудования.
  8. Вернитесь к списку клиентов и выберите exesched.
    1. Для exesched необходимо создать 1 роль:
      • Role name = Scheduler, Description = Планировщик.
  9. Назначьте новые роли соответствующим группам пользователей, в зависимости от Вашей конфигурации. Подробно об Управлении доступом к ExeMESк ExeMES.
  10. Добавьте новые роли для возможности настройки механизма разграничения прав доступа по объектам.
    1. Выберите в левом меню вкладку Clients далее выберите пункт mesmiddleware,
    добавьте новые роли для возможности настройки разграничения прав доступа по объектам
    1. Image Modified
    2. В центральной части экрана выберите вкладку Roles и нажмите кнопку Create RoleImage Modified
    3. В новом окне заполните поля Role name и Description. Таким образом для клиента mesmiddleware должно быть создано 2 роли:
      • Role name = VAccess,  Description = View Access Management;
      • Role name = EAccess,  Description = Edit Access Management.
    4.  Назначьте новые роли группам пользователей, в зависимости от конфигурации Вашей системы. Подробно об Управлении доступом к ExeMES.
  11. Добавьте существующие роли реалма для корректной работы механизма разграничения доступа к объектам.
      Роль
      1. Добавьте роль view-users (существующая);
      Роль
      1. Image AddedДобавьте роль manage-authorization (существующая).
      Image Removed
      1. Image Modified
    1. Добавьте роль realm-management/view-clients для сервисного аккаунта клиента mesmiddleware.
      1. Для этого перейдите в левом меню на вкладку Clients
      , затем выберите
      1. ;
      2. Выберите пункт mesmiddleware
      , в
      1. ;
      2. В центральной части экрана перейдите на вкладку Service Account Roles и нажмите на кнопку Assign role
      .
      1. ;
      2. В появившемся окне выберите фильтр Filter by clients
      , введите
      1. ;
      2. Введите в поле фильтра view-clients
      , выберитероль
      1. ;
      2. Выберите роль view-clients и нажмите кнопку Assign.



Expand
titleОбновить версии приложений Middleware и MesClient, добавить конфигурацию запуска приложений EXERuntimeClient и EXESched

Для обновления версий Middleware и MESClient необходимо скорректировать файл docker-compose, указав:

для Middleware

image: "git.exeplant.ru:5050/mes-develop/exemesmiddleware:2.0"

Также для Middleware необходимо сконфигурировать новую переменную окружения, указав:

EntityAccessProtection: "Enabled"

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

Если Вы не планируете использовать этот функционал, можете не указывать эту переменную, либо сконфигурируйте её, указав:

EntityAccessProtection: "Disabled"

Подробнее о настройке переменных окружения.

для MESClient

image: "git.exeplant.ru:5050/mes-develop/exemesclient:2.0"


Note

Указанные образы обновляемых приложений должны быть предварительно добавлены в docker.


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

  1. скопируйте папки data/exeruntimeclient и data/exesched в папку с установленным ПО ExeMES (по умолчанию root/dev/)
  2. добавьте в файл docker-compose следующие структуры:

  exeruntimeclient:
    container_name: exeruntimeclient
    image: "git.exeplant.ru:5050/mes-develop/exeruntimeclient:1.0"
    restart: always
    environment:
      MiddlewareApiRootUri: "http://exemesmiddleware/api"    
      TZ: "Europe/Moscow"
      ASPNETCORE_URLS: "https://+;http://+"
      ASPNETCORE_HTTPS_PORT: "8143"
      ASPNETCORE_Kestrel__Certificates__Default__Password: "1"
      ASPNETCORE_Kestrel__Certificates__Default__Path: "/root/.aspnet/https/EXEMESClient.pfx"
      GCCSettings:BroadcastRemoteLicenses: "0"
      GCCSettings:UseRemoteHosts: "1"
      GCCSettings:Remotehosts: "[license_server_ip]"
    ports:     
      - "8143:443"
    volumes:
      - type: bind
        source: /root/dev/data/exeruntimeclient/keycloak.json
        target: /app/keycloak.json
      - type: bind
        source: /root/dev/data/exeruntimeclient/appsettings.json
        target: /App/appsettings.json
      - type: bind
        source: /root/dev/crt/wildcard.mycompany.local.pfx
        target: /root/.aspnet/https/EXEMESClient.pfx
      - type: bind
        source: /root/dev/crt/wildcard.mycompany.local.crt
        target: /etc/ssl/certs/wildcard.mycompany.local.pem
    extra_hosts:
      - "mes-runtime.mycompany.local client.mycompany.local middleware.mycompany.local keycloak.mycompany.local:[host_ip]"

exesched:
    container_name: exesched
    image: "git.exeplant.ru:5050/mes-develop/exesched:1.0"
    restart: always
    environment:
      MiddlewareApiRootUri: "https://middleware.mycompany.local:7142/api"    
      TZ: "Europe/Moscow"
      ASPNETCORE_URLS: "https://+;http://+"
      ASPNETCORE_HTTPS_PORT: "8135"
      ASPNETCORE_Kestrel__Certificates__Default__Password: "1"
      ASPNETCORE_Kestrel__Certificates__Default__Path: "/root/.aspnet/https/EXESched.pfx"
      GCCSettings:BroadcastRemoteLicenses: "0"
      GCCSettings:UseRemoteHosts: "1"
      GCCSettings:Remotehosts: "[license_server_ip]"
      DBConnection: "Server=[host_ip]; User Id=[user]; Database=exesched; Port=5432; Password=[password]; SSLMode=Prefer"
    ports:     
      - "8135:443"
    volumes:
      - type: bind
        source: /root/dev/data/exesched/keycloak.json
        target: /App/keycloak.json
      - type: bind
        source: /root/dev/data/exesched/appsettings.json
        target: /App/appsettings.json
      - type: bind
        source: /root/dev/crt/EXESched.pfx
        target: /root/.aspnet/https/EXESched.pfx
      - type: bind
        source: /root/dev/crt/wildcard.mycompany.local.crt
        target: /etc/ssl/certs/wildcard.mycompany.local.pem 
    extra_hosts:
      - "mes-runtime.mycompany.local client.mycompany.local middleware.mycompany.local exesched.mycompany.local keycloak.mycompany.local:[host_ip]"

Tip

Поля [user], [password], [license_server_ip] и [host_ip] замените в соответствии с Вашей конфигурацией сети (используйте аналогию с Middleware).

Подробнее о настройке переменных окружения.

Обратите внимание, что новые приложения используют уже существующие сертификаты, проверьте правильность указания пути к файлам сертификатов (используйте аналогию с Middleware).


...