| Warning |
|---|
Актуальная версия ExeMES - 2. |
...
...
| Expand |
|---|
| title | Обновление на версию 2. |
|---|
|
...
|
Для обновления на версию ExeMES 2.3 необходимо выполнить последовательно следующие шаги |
...
...
| Warning |
|---|
Процесс обновления БД MESDB до версии 2.0 возможен, начиная с версии 1.3. Для обновления до версии 1.3 см. пункт Обновление на версию 1.3 |
Для обновления необходимо использовать
...
| title | Функционал автоматического обновления БД MESDB. |
|---|
| Warning |
|---|
Выполните бэкап БД MESDB перед обновлением |
Для обновления БД MESDB из приложения ExeMES Client необходимо пройти стандартную процедуру авторизации в приложении Keycloak.
Далее в правом верхнем углу экрана нужно нажать на имя пользователя. Затем нужно нажать на информацию о версии ExeMES Client.
В появившемся окне находится кнопка проверки актуальности БД MESDB.
Image RemovedКнопка перехода на страницу обновления
После нажатия на кнопку открывается страница обновлления БД.
Image RemovedКнопка проверки актуальности БД
После нажатия на кнопку проверки актуальности БД MESDB в окне появится информация о необходимости обновления БД MESDB.
В случае актуальной версии MESDB сообщение будет следующим
Image RemovedВерсия БД актуальна
В случае необходимости обновления в окне появится кнопка Обновить версию БД и детальная информация о вносимых изменениях.
Image RemovedНеобходимо обновление
Для обновления необходимо нажать на кнопку обновить версию БД и подтвердить выбор во всплывающем окне.
Image RemovedПодтверждение обновления версии БД
После завершения обновления появится соответствущее сообщение и лог обновления.
Image RemovedСообщение об успешном обновлении и лог процесса обновления
Обновление версии БД MESDB успешно завершено.
...
| title | Модифицировать существующий реалм Keycloak |
|---|
- Зайдите в приложение Keycloak под администратором реалма и выберите в выпадающем списке реалм exemes
Image RemovedВыбор реалма - В левом боковом меню выберите пункт Clients
Image RemovedПункт Clients - В центральной части экрана нажмите на кнопку Import Client
Image RemovedИмпорт клиента - Ниже в центральной части экрана нажмите Browse...
Image RemovedВыбор файла для импорта - Выберите файл exemesruntime-client.json из папки upd, которая находится в составе дистрибутива exemes 2.0.
- После завершения загрузки файла, переместитесь в конец страницы и нажмите кнопку Save.
Image RemovedСохранение конфигурации - Аналогичные действия необходимо произвести со вторым файлом в папке upd: exesched.json.
- После завершения импорта конфигурации убедитесь что новая конфигурация появилась в списке клиентов
Image RemovedПроверка списка импортированных клиентов - Создайте новые роли для импортированных клиентов, для этого выберите в списке exemesruntime-client.
- В центральной части экрана перейдите на вкладку Roles и нажмите на кнопку Create role
Image RemovedСоздание роли для exemesruntime-client - Ниже заполните поля Role name и Description, в завершении нажмите кнопку Save
Image RemovedСохранение роли для exemesruntime-client - Таким образом, необходимо создать 4 роли с описаниями:
- Role name = Inventory, Description = Доступ к экрану управления складскими остатками;
- Role name = Operator, Description = Доступ к панели оператора;
- Role name = Quality, Description = Доступ к экрану управления качеством;
- Role name = Utilization, Description = Доступ к экрану управления событиями оборудования.
- Вернитесь к списку клиентов и выберите exesched.
- Для exesched необходимо создать 1 роль:
- Role name = Scheduler, Description = Планировщик.
- Назначьте новые роли соответствующим группам пользователей, в зависимости от Вашей конфигурации. Подробно об Управлении доступом к ExeMES.
- Добавьте новые роли для возможности настройки механизма разграничения прав доступа по объектам.
- Выберите в левом меню вкладку Clients далее выберите пункт mesmiddleware,
Image RemovedВыбор клиента mesmiddleware - В центральной части экрана выберите вкладку Roles и нажмите кнопку Create Role
Image RemovedСоздание роли для mesmiddleware - В новом окне заполните поля Role name и Description. Таким образом для клиента mesmiddleware должно быть создано 2 роли:
- Role name = VAccess, Description = View Access Management;
- Role name = EAccess, Description = Edit Access Management.
- Назначьте новые роли группам пользователей, в зависимости от конфигурации Вашей системы. Подробно об Управлении доступом к ExeMES.
- Добавьте существующие роли реалма для корректной работы механизма разграничения доступа к объектам.
- Добавьте роль view-users (существующая);
Image RemovedДобавление роли view-users - Добавьте роль manage-authorization (существующая).
Image RemovedДобавление роли manage-authorization
- Добавьте роль realm-management/view-clients для сервисного аккаунта клиента mesmiddleware.
- Для этого перейдите в левом меню на вкладку Clients;
- Выберите пункт mesmiddleware;
- В центральной части экрана перейдите на вкладку Service Account Roles и нажмите на кнопку Assign role;
- В появившемся окне выберите фильтр Filter by clients;
- Введите в поле фильтра view-clients;
- Выберите роль view-clients и нажмите кнопку Assign.
Image RemovedДобавление роли для сервисного аккаунта клиента mesmiddleware
...
| title | Обновить версии приложений Middleware и MesClient, добавить конфигурацию запуска приложений EXERuntimeClient и EXESched |
|---|
Отредактируйте файл docker-compose, который содержит конфигурацию запуска контейнеров ExeMES (по умолчанию root/dev).
- Укажите новый образ для Middleware:
- image: "git.exeplant.ru:5050/mes-develop/exemesmiddleware:2.0"
- Сконфигурируйте новую переменную окружения для Middleware:
- EntityAccessProtection: "Enabled"
- Укажите новый образ для MESClient:
| Info |
|---|
Переменная EntityAccessProtection активирует функционал разделения прав доступа по объектам. Если Вы не планируете использовать этот функционал, можете не указывать эту переменную, либо сконфигурируйте её, указав: EntityAccessProtection: "Disabled" Подробнее о настройке переменных окружения. |
| Note |
|---|
Образы обновляемых приложений должны быть предварительно добавлены в docker. Образы приложений располагаются в дистрибутиве в папке images. Для добавления образов в docker используйте команду docker load -i [путь к файлу образа] |
Добавьте конфигурации запуска новых приложений ExeRuntimeClient и ExeSched, для этого выполните выполните следующие действия:
- Скопируйте папки data/exeruntimeclient и data/exesched в папку с установленным ПО ExeMES (по умолчанию root/dev/);
- Отредактируйте файл docker-compose, который содержит конфигурацию запуска контейнеров ExeMES (по умолчанию root/dev);
a. Приложение ExeRuntimeClient
...
| title | Приложение ExeRuntimeClient |
|---|
...
| версии приложений ExeMES Server (Middleware), ExeMES Client, ExeMES RuntimeClirent и ExeSched |
| - Добавьте образы новых приложений в docker. Для этого находясь в папке /images/ дистрибутива ExeMES 2.2 выполните следующие команды:
| Code Block |
|---|
docker load -i ./exemesmiddleware2.3.tar
docker load -i ./exemesclient2.3.tar
docker load -i ./exeruntimeclient2.3.tar
docker load -i ./exesched2.3.tar |
- Укажите новый образ для ExeMES Server (Middleware):
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/exemesmiddleware:2.3" |
- Укажите новый образ для ExeMES Client:
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/exemesclient:2.3" |
- Укажите новый образ для ExeMES RuntimeClient:
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/exeruntimeclient:2.3" |
- Укажите новый образ для ExeSched:
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/exesched:2.3" |
|
| Expand |
|---|
| title | Обновить версию БД MESDB |
|---|
| | Warning |
|---|
Процесс обновления БД MESDB до версии 2.3 возможен, начиная с версии 1.3. Для обновления до версии 1.3 см. пункт Обновление на версию 1.3. Перед обновлением выполните процедуру резервного копирования БД MESDB. |
| Warning |
|---|
Если вы не обновите версию БД сразу после обновления версии приложений ExeMES, то при открытии любой страницы ExeMES Client будет появляться предупреждение: Image Added
|
|
| Warning |
|---|
Если вы обновляетесь с версии младше 2.1 перед началом обновления модифицируйте существующий realm Keycloak, как это указано в инструкции для обновления на версию 2.1 |
|
| Expand |
|---|
| title | Обновление на версию 2.2 |
|---|
|
Для обновления на версию ExeMES 2.2 необходимо выполнить последовательно следующие шаги: | Expand |
|---|
| title | Обновить версии приложений ExeMES Server (Middleware), ExeMES Client, ExeMES RuntimeClirent и ExeSched |
|---|
| - Добавьте образы новых приложений в docker. Для этого находясь в папке /images/ дистрибутива ExeMES 2.2 выполните следующие команды:
| Code Block |
|---|
docker load -i ./exemesmiddleware2.2.tar
docker load -i ./exemesclient2.2.tar
docker load -i ./exeruntimeclient2.2.tar
docker load -i ./exesched2.2.tar |
- Укажите новый образ для ExeMES Server (Middleware):
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/exemesmiddleware:2.2" |
- Укажите новый образ для ExeMES Client:
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/exemesclient:2.2" |
- Укажите новый образ для ExeMES RuntimeClient:
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/exeruntimeclient:2.2" |
- Укажите новый образ для ExeSched:
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/exesched:2.2" |
|
| Expand |
|---|
| title | Обновить версию БД MESDB |
|---|
| | Warning |
|---|
Процесс обновления БД MESDB до версии 2.2 возможен, начиная с версии 1.3. Для обновления до версии 1.3 см. пункт Обновление на версию 1.3. Перед обновлением выполните процедуру резервного копирования БД MESDB. |
|
| Warning |
|---|
Если вы обновляетесь с версии младше 2.1 перед началом обновления модифицируйте существующий realm Keycloak, как это указано в инструкции для обновления на версию 2.1 |
|
| Expand |
|---|
| title | Обновление на версию 2.1 |
|---|
|
Для обновления на версию ExeMES 2.1 необходимо выполнить последовательно следующие шаги: | Expand |
|---|
| title | Обновить версии приложений ExeMES Server (Middleware), ExeMES Client, ExeMES RuntimeClirent и ExeSched |
|---|
| - Добавьте образы новых приложений в docker. Для этого находясь в папке /images/ дистрибутива ExeMES 2.1 выполните следующие команды:
| Code Block |
|---|
docker load -i ./exemesmiddleware2.1.tar
docker load -i ./exemesclient2.1.tar
docker load -i ./exeruntimeclient2.1.tar
docker load -i ./exesched2.1.tar |
- Укажите новый образ для ExeMES Server (Middleware):
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/ |
|
|
...
...
- Укажите новый образ для ExeMES Client:
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/exemesclient:2.1" |
- Укажите новый образ для ExeMES RuntimeClient:
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/exeruntimeclient:2.1" |
- Укажите новый образ для ExeSched:
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/exesched:2.1" |
|
| Expand |
|---|
| title | Обновить версию БД MESDB |
|---|
| | Warning |
|---|
Процесс обновления БД MESDB до версии 2.1 возможен, начиная с версии 1.3. Для обновления до версии 1.3 см. пункт Обновление на версию 1.3. Перед обновлением выполните процедуру резервного копирования БД MESDB. |
|
| Warning |
|---|
Если вы обновляетесь с версии младше 2.0 перед началом обновления модифицируйте существующий realm Keycloak и добавьте конфигурацию запуска приложений ExeMES RuntimeClient и ExeSched, как это указано в инструкции для обновления на версию 2.0 |
|
| Expand |
|---|
| title | Обновление на версию 2.0 |
|---|
|
Для обновления на версию ExeMES 2.0 необходимо выполнить последовательно следующие шаги: | Expand |
|---|
| title | Модифицировать существующий реалм Keycloak |
|---|
| Для возможности работы с новыми приложениями ExeMES RuntimeClient и ExeSched необходимо импортировать конфигурацию новых клиентов в существующий реалм Keycloak. Для этого выполните следующие шаги: - Зайдите в приложение Keycloak под администратором реалма и выберите в выпадающем списке реалм «exemes»
Image AddedВыбор реалма - В левом боковом меню выберите пункт «Clients»
Image AddedПункт Clients - В центральной части экрана нажмите на кнопку «Import Client»
Image AddedИмпорт клиента - Ниже в центральной части экрана нажмите «Browse...»
Image AddedВыбор файла для импорта - Выберите файл exemesruntime-client.json из папки upd, которая находится в составе дистрибутива exemes 2.0 и нажмите кнопку «Открыть»
Image AddedВыбор файла exemesruntime-client.json - После завершения загрузки файла, переместитесь в конец страницы и нажмите кнопку «Save»
Image AddedСохранение конфигурации - Аналогичные действия необходимо произвести со вторым файлом в папке upd: exesched.json
- После завершения импорта конфигурации убедитесь что новая конфигурация появилась в списке клиентов
Image AddedПроверка списка импортированных клиентов
Для корректной работы новых приложений ExeMES RuntimeClient и ExeSched необходимо создать и настроить роли в импортированных клиентах: - Выберите в списке клиентов «exemesruntime-client».
- В центральной части экрана перейдите на вкладку «Roles» и нажмите на кнопку «Create role»
Image AddedСоздание роли для exemesruntime-client - Ниже заполните поля Role name и Description, в завершении нажмите кнопку «Save»
Image AddedСохранение роли для exemesruntime-client - Таким образом, создайте 4 роли с описаниями:
- Role name = Inventory, Description = Доступ к экрану управления складскими остатками;
- Role name = Operator, Description = Доступ к панели оператора;
- Role name = Quality, Description = Доступ к экрану управления качеством;
- Role name = Utilization, Description = Доступ к экрану управления событиями оборудования.
- Вернитесь к списку клиентов и выберите «exesched»
- Для exesched создайте 1 роль:
- Role name = Scheduler, Description = Планировщик.
- Назначьте новые роли соответствующим группам пользователей, в зависимости от Вашей конфигурации. Подробно об Управлении доступом к ExeMES.
Для корректной работы механизма разграничения прав доступа по объектам выполните следующие шаги: - Добавьте новые роли соответствующим группам пользователей, в зависимости от Вашей конфигурации.
- Выберите в левом меню вкладку «Clients» далее выберите пункт «mesmiddleware»
Image AddedВыбор клиента mesmiddleware - В центральной части экрана выберите вкладку «Roles» и нажмите кнопку «Create Role»
Image AddedСоздание роли для mesmiddleware - В новом окне заполните поля Role name и Description. Таким образом для клиента mesmiddleware должно быть создано 2 роли:
- Role name = VAccess, Description = View Access Management;
- Role name = EAccess, Description = Edit Access Management.
- Назначьте новые роли группам пользователей, в зависимости от конфигурации Вашей системы. Подробно об Управлении доступом к ExeMES.
- Добавьте существующие роли реалма группам пользователей, отвечающим за настройку доступа к объектам.
- Добавьте роль view-users (существующая);
Image AddedДобавление роли view-users - Добавьте роль manage-authorization (существующая).
Image AddedДобавление роли manage-authorization
- Добавьте роль realm-management/view-clients для сервисного аккаунта клиента mesmiddleware.
- Перейдите в левом меню на вкладку «Clients»;
- Выберите пункт «mesmiddleware»;
- В центральной части экрана перейдите на вкладку «Service Account Roles» и нажмите на кнопку «Assign role»;
Image AddedДобавление роли для сервисного аккаунта клиента mesmiddleware - В появившемся окне выберите фильтр «Filter by clients»;
- Введите в поле фильтра «view-clients»;
- Выберите роль «view-clients» и нажмите кнопку «Assign».
Image AddedДобавление роли для сервисного аккаунта клиента mesmiddleware
|
| Expand |
|---|
| title | Обновить версии приложений ExeMES Server (Middleware) и ExeMES Client |
|---|
| - Добавьте образы новых приложений в docker. Для этого находясь в папке /images/ дистрибутива ExeMES 2.0 выполните следующие команды:
| Code Block |
|---|
docker load -i ./exemesmiddleware2.0.tar
docker load -i ./exemesclient2.0.tar
docker load -i ./exeruntimeclient1.0.tar
docker load -i ./exesched1.0.tar |
- Укажите новый образ для ExeMES Server (Middleware):
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/exemesmiddleware:2.0" |
- Сконфигурируйте новую переменную окружения для ExeMES Server (Middleware):
| Code Block |
|---|
EntityAccessProtection: "Enabled" |
- Укажите новый образ для ExeMES Client:
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/exemesclient:2.0" |
|
| Expand |
|---|
| title | Добавить конфигурацию запуска приложений ExeMES RuntimeClient и ExeSched |
|---|
| - Скопируйте папки data/exeruntimeclient и data/exesched в папку с установленным ПО ExeMES (по умолчанию root/dev/);
- Добавьте в файл docker-compose (по умолчанию root/dev/) конфигурацию приложения ExeMES RuntimeClient и ExeSched;
| Code Block |
|---|
| 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=some-postgres; User Id=postgres; Database=exesched; Port=5432; Password=postgres; SSLMode=Prefer"
ports:
- "8135:443"
volumes:
- |
|
|
b. Приложение ExeSched
| Code Block |
|---|
|
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=some-postgres; User Id=postgres; Database=exesched; Port=5432; Password=postgres; 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]" |
...
Параметры подключения к контейнеру БД Postgre указаны в конфигурации приложений по умолчанию. Для альтернативной БД сконфигурируйте соответствующие переменные окружения.
Подробнее о настройке переменных окружения.
Обратите внимание, что новые приложения используют уже существующие сертификаты, проверьте правильность указания пути к файлам сертификатов (используйте аналогию с Middleware).
...
| title | Конфигурация использования сертификатов |
|---|
...
type: bind
source: /root/dev/ |
|
|
...
...
...
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]" |
| Code Block |
|---|
| title | Приложение ExeMES RuntimeClient |
|---|
| 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]" |
| Tip |
|---|
Обратите внимание, что новые приложения используют уже существующие сертификаты, проверьте правильность указания пути к файлам сертификатов (используйте аналогию с ExeMES Server (Middleware)). | Code Block |
|---|
| title | Конфигурация использования сертификатов |
|---|
| - 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 |
|
| Tip |
|---|
Параметры [license_server_ip] и [host_ip] должны быть скорректированы под Вашу конфигурацию (используйте аналогию с конфигурацией Вашего приложения ExeMES Server (Middleware)). |
| Tip |
|---|
Параметры подключения к контейнеру БД Postgre указаны в конфигурации приложений по умолчанию. Для альтернативной БД сконфигурируйте соответствующие переменные окружения. |
- После завершения редактирования файла docker compose выполните перезапуск измененных и запуск добавленных контейнеров, выполнив команду:
| Code Block |
|---|
docker compose up -d |
|
| Expand |
|---|
| title | Обновить версию БД MESDB |
|---|
| | Warning |
|---|
Процесс обновления БД MESDB до версии 2.0 возможен, начиная с версии 1.3. Для обновления до версии 1.3 см. пункт Обновление на версию 1.3. Перед обновлением выполните процедуру резервного копирования БД MESDB. |
|
| Warning |
|---|
Если вы обновляетесь с версии младше 1.3 перед началом обновления модифицируйте существующий realm Keycloak и подготовьте БД MESDB к обновлению, как это указано в инструкции для обновления на версию 1.3 |
|
| Expand |
|---|
| title | Обновление на версию 1.3 |
|---|
|
| Warning |
|---|
Процесс обновления БД MESDB до версии 1.3 возможен только с версии 1.2. Для обновления до версии 1.2 см. пункт Обновление на версию 1.2 |
ExeMES Client Для корректной работы функционала обновления необходимо предварительно выполнить следующие действия: | Expand |
|---|
| title | Подготовить БД MESDB версии 1.2 к обновлению |
|---|
| Для корректной работы механизма обновления БД MESDB необходимо подключиться к БД MESDB любым клиентом СУБД, поддерживающим работу с Postgre версии 15.4 и выполнить следующий скрипт: | Code Block |
|---|
CREATE TABLE public."__EFMigrationsHistory" (
"MigrationId" varchar(150) NOT NULL,
"ProductVersion" varchar(32) NOT NULL,
CONSTRAINT "PK___EFMigrationsHistory" PRIMARY KEY ("MigrationId")
);
INSERT INTO public."__EFMigrationsHistory"
("MigrationId", "ProductVersion")
values
('20240312123332_MESDB_V0', '8.0.8'),
('20240708154420_MESDB_V1.2.0', '8.0.8'); |
|
| Expand |
|---|
| title | Обновить версии приложений ExeMES Server (Middleware) и ExeMES Client |
|---|
| Для обновления версий необходимо скорректировать файл docker-compose, указав: - для ExeMES Server (Middleware)
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/exemesmiddleware:1.3.0" |
- для ExeMES Client
| Code Block |
|---|
image: "git.exeplant.ru:5050/mes-develop/exemesclient:1.3.0" |
| Note |
|---|
Указанные образы обновляемых приложений должны быть предварительно добавлены в docker. Образы приложений располагаются в дистрибутиве в папке images. Для добавления образов в docker используйте команду docker load -i [путь к файлу образа] |
Далее для обновления необходимо использовать функционал автоматического обновления БД MESDB. |
| Expand |
|---|
| title | Опциональное обновление |
|---|
| Кроме обязательных действий по обновлению БД MESDB мы предлагаем обновить описания статусов производственных заданий. Это обновление носит рекомендательный характер и никак не влияет на функционал ExeMES. Для обновления необходимо выполнить следующий скрипт в любом клиенте СУБД подключенном к MESDB | Code Block |
|---|
update job_state set state_desc = 'НОВОЕ' where state_cd = 1;
update job_state set state_desc = 'В РАБОТУ' where state_cd = 2;
update job_state set state_desc = 'ВЫПОЛНЯЕТСЯ' where state_cd = 3;
update job_state set state_desc = 'ЗАВЕРШЕНО' where state_cd = 4;
update job_state set state_desc = 'ПРИОСТАНОВЛЕНО' where state_cd = 5;
update job_state set state_desc = 'ЗАМОРОЖЕНО' where state_cd = 6;
update job_state set state_desc = 'ОТМЕНЕНО' where state_cd = 7;
update job_state set state_desc = 'ПРОПУЩЕНО' where state_cd = 8;
update job_state set state_desc = 'ЗАМЕНЕНО' where state_cd = 9; |
|
|
3. После завершения редактирования файла docker compose выполните перезапуск измененных и запуск добавленных контейнеров, выполнив команду: docker compose up -d .
...
| title | Обновление на версию 1.3 |
|---|
| Warning |
|---|
Процесс обновления БД MESDB до версии 1.3 возможен только с версии 1.2. Для обновления до версии 1.2 см. пункт Обновление на версию 1.2 |
Для обновления ПО ExeMES 1.3 используется встроенный в Middleware функционал. Для корректной работы функционала обновления необходимо предварительно выполнить следующие действия:
| Expand |
|---|
| title | Модифицировать существующий реалм Keycloak |
|---|
|
Необходимо добавить в существующий реалм Keycloak новые роли и назначить эти роли требуемой группе пользователей, для этого: Нужно зайти в приложение Keycloak под администратором реалма и выбрать в выпадающем списке реалм exemes Image RemovedВыбор реалма
Далее в левом боковом меню выбрать пункт Clients Image RemovedПункт Clients
В центральной части экрана выбрать клиент Middleware Image RemovedВыбор клиента mesmiddleware
Далее необходимо перейти на вкладку Roles и нажать кнопку Create Role Image RemovedСоздание роли
В открывшемся окне в поле Role Name необходимо ввести название новой роли EAdm в поле Description нужно ввести Edit (manage) Admin Tools Image RemovedСохранение роли
После заполнения полей необходимо нажать кнопку Save. Аналогично роли EAdm необходимо добавить еще одну роль с именем VAdm и описанием View Admin Tools. После заполнения полей необходимо нажать кнопку Save. Для назначения новых ролей определенной группе пользователей необходимо переключиться в левом меню на пункт Groups, затем необходимо выбрать группу пользователей, которой будут доступна роль разрешающая просмотр информации о версии БД MESDB (VAdm) и роль разрешающая производить обновление версии БД MESDB (EAdm). В примере ниже роль VAdm будет добавлена группе EXEMES_Admins. После выбора группы пользователей необходимо перейти на вкладку Role mapping в центральной части экрана и нажать на кнопку Assign role Image RemovedПривязка роли
Во всплывающем окне необходимо выбрать фильтр Filter by clients, правее фильтра в строке поиске указать имя роли VAdm и нажать стрелку для поиска. После необходимо поставить галку напротив группы VAdm и нажать кнопку Assign Image RemovedПривязка роли
Теперь все пользователи группы EXEMES_Admins будут иметь возможность проверять актуальность версии БД MESDB. Аналогично для разрешения обновления версии БД MESDB группе пользователей необходимо назначить роль EAdm. |
...
| title | Подготовить БД MESDB версии 1.2 к обновлению |
|---|
Для того чтобы приложение Middleware корректно обновила БД MESDB необходимо подключиться к БД MESDB любым клиентом СУБД, поддерживающим работу с Postgre версии 15.4 и выполнить следующий скрипт:
| Code Block |
|---|
CREATE TABLE public."__EFMigrationsHistory" (
"MigrationId" varchar(150) NOT NULL,
"ProductVersion" varchar(32) NOT NULL,
CONSTRAINT "PK___EFMigrationsHistory" PRIMARY KEY ("MigrationId")
);
INSERT INTO public."__EFMigrationsHistory"
("MigrationId", "ProductVersion")
values
('20240312123332_MESDB_V0', '8.0.8'),
('20240708154420_MESDB_V1.2.0', '8.0.8'); |
| Expand |
|---|
| title | Обновить версии приложений Middleware и MESClient |
|---|
|
Для обновления версий необходимо скорректировать файл docker-compose, указав для Middleware image: "git.exeplant.ru:5050/mes-develop/exemesmiddleware:1.3.0" для MESClient image: "git.exeplant.ru:5050/mes-develop/exemesclient:1.3.0" | Note |
|---|
Указанные образы обновляемых приложений должны быть предварительно добавлены в docker. Образы приложений располагаются в дистрибутиве в папке images. Для добавления образов в docker используйте команду docker load -i [путь к файлу образа] |
Далее для обновления необходимо использовать функционал автоматического обновления БД MESDB. |
| Expand |
|---|
| title | Опциональное обновление |
|---|
|
Кроме обязательных действий по обновлению БД MESDB мы предлагаем обновить описания статусов производственных заданий. Это обновление носит рекомендательный характер и никак не влияет на функционал ExeMES. Для обновления необходимо выполнить следующий скрипт в любом клиенте СУБД подключенном к MESDB update job_state set state_desc = 'НОВОЕ' where state_cd = 1; update job_state set state_desc = 'В РАБОТУ' where state_cd = 2; update job_state set state_desc = 'ВЫПОЛНЯЕТСЯ' where state_cd = 3; update job_state set state_desc = 'ЗАВЕРШЕНО' where state_cd = 4; update job_state set state_desc = 'ПРИОСТАНОВЛЕНО' where state_cd = 5; update job_state set state_desc = 'ЗАМОРОЖЕНО' where state_cd = 6; update job_state set state_desc = 'ОТМЕНЕНО' where state_cd = 7; update job_state set state_desc = 'ПРОПУЩЕНО' where state_cd = 8; update job_state set state_desc = 'ЗАМЕНЕНО' where state_cd = 9; |
...
| title | Обновление на версию 1.2 |
|---|
Для обновления ПО ExeMES до версии 1.2 необходимо:
...
...
| Warning |
|---|
Перед обновлением БД MESDB необходимо создать резервную копию БД. При обновлении версии БД MESDB существующая конфигурация производственной модели и накопленные производственные данные будут сохранены. Обновление БД MESDB затрагивает только схему public, в том числе будут обновлены функции и хранимые процедуры. |
Для обновления версии БД MESDB потребуется любой клиент СУБД, поддерживающий подключение к СУБД Postgres. В клиенте СУБД необходимо выполнить подключение к БД MESDB, параметры подключения можно получить из docker-compose файла, который использовался при запуске существующей версии ExeMES. Далее необходимо выполнить скрипты sql, который располагаются в папке db_updates в дистрибутиве ExeMES 1.2:
- Для обновления с версии 1.0:
- 0.0_to_V1.0.1.sql
- 0.1_to_V1.0.2.sql
- 0.2_to_V1.0.3.sql
- 0.3_to_V1.0.4.sql
- 0.4_to_V1.0.5.sql
- 0.5_to_V1.1.0.sql
- Для обновления с версии 1.1
- 1.0_to_V1.2.0.sql
По умолчанию при установке ExeMES для хранилища СУБД Postgre используется директория /root/dev/db/. Если при установке ExeMES было задано альтернативное размещение хранилища СУБД Postgre, то необходимо изменить путь подключения к нему.
Для этого перед развертыванием новых контейнеров ExeMES в Docker необходимо скорректировать файл docker-compose в части конфигурации контейнера Postgres, а именно добавить:
volumes:
- [путь к папке с существующему хранилищу СУБД Postgre]:/var/lib/postgresql/data/
Для запуска контейнеров ExeMES версии 1.2, необходимо предварительно остановить и удалить существующие контейнеры ExeMES
- Postgres;
- Keycloak;
- Exemiddleware;
- Exemesclient.
| Tip |
|---|
Т.к. Keycloak хранит конфигурацию в БД, при удалении контейнера конфигурация не будет потеряна, внесенные настройки сохранены в БД и будут использованы новой версией контейнера |
| Tip |
|---|
Если вы планируете изменить сертификаты безопасности не забудьте их сгенерировать и указать для использования приложениям как указано в инструкции |
Затем необходимо установить новую версию ExeMES согласно инструкции ниже
...
| Expand |
|---|
| title | Обновление на версию 1. |
|---|
|
...
|
Для обновления ПО ExeMES до версии 1. |
...
...
- Установить ПО Guardant (при обновлении с версии 1.0);
| Expand |
|---|
| | Include Page |
|---|
| Установка Guardant Control Center и Guardant SLK |
|---|
| Установка Guardant Control Center и Guardant SLK |
|---|
|
|
|
...
...
...
| Warning |
|---|
Перед обновлением БД MESDB необходимо создать резервную копию БД. При обновлении версии БД MESDB существующая конфигурация производственной модели и накопленные производственные данные будут сохранены. Обновление БД MESDB затрагивает только схему public, в том числе будут обновлены функции и хранимые процедуры. | Для обновления версии БД MESDB потребуется любой клиент СУБД, поддерживающий подключение к СУБД Postgres. В клиенте СУБД необходимо выполнить подключение к БД MESDB, параметры подключения можно получить из docker-compose файла, который использовался при запуске существующей версии ExeMES. Далее необходимо выполнить скрипты sql, который располагаются в папке db_updates в дистрибутиве ExeMES 1.2:- Для обновления с версии 1
|
...
- .0 до версии 1.1:
- UPD_from_V1.0.0_to_V1.0.1.sql
- UPD_from_V1.0.1_to_V1.0.2.sql
- UPD_from_V1.0.2_to_V1.0.3.sql
- UPD_from_V1.0.3_to_V1.0.4.sql
- UPD_from_V1.0.4_to_V1.0.5.sql
- UPD_from_V1
|
...
- .0.5_to_V1.1.0.sql
- Для обновления с версии 1.1 до версии 1.2:
- V1.1.0
|
...
...
- Скорректировать путь для доступа контейнеров к существующему хранилищу СУБД Postgre;
По умолчанию при установке ExeMES для хранилища СУБД Postgre используется директория /root/dev/db/. Если при установке ExeMES было задано альтернативное размещение хранилища СУБД Postgre, то необходимо изменить путь подключения к нему. Для этого перед развертыванием новых контейнеров ExeMES в Docker необходимо скорректировать файл docker-compose в части конфигурации контейнера Postgres, а именно добавить:
|
...
...
с существующим хранилищем БД Postgre]:/var/lib/postgresql/data/ |
- Удалить старые и запустить новые контейнеры ExeMES.
- Для запуска контейнеров ExeMES версии 1.1, необходимо предварительно остановить и удалить существующие контейнеры ExeMES:
- Postgres;
- Keycloak;
- Exemiddleware;
- Exemesclient.
| Tip |
|---|
Т.к. Keycloak хранит конфигурацию в БД, при удалении контейнера конфигурация не будет потеряна, внесенные настройки сохранены в БД и будут использованы новой версией контейнера |
| Tip |
|---|
Если вы планируете изменить сертификаты безопасности не забудьте их сгенерировать и указать для использования приложениям как указано в инструкции |
Затем необходимо установить новую версию ExeMES согласно инструкции ниже | Excerpt Include |
|---|
| Инструкция по установке ExeMES |
|---|
| Инструкция по установке ExeMES |
|---|
| nopanel | true |
|---|
|
|