| Warning |
|---|
Если вы обновляетесь с версии младше 2.1 перед началом обновления модифицируйте существующий realm Keycloak, как это указано в инструкции для обновления на версию 2.1 |
Для обновления на версию ExeMES 2.4 необходимо выполнить последовательно следующие шаги: | Expand |
|---|
| title | Обновить версии приложений ExeMES Server (Middleware), ExeMES Client, ExeMES RuntimeClirent и ExeSched |
|---|
| - Добавьте образы новых приложений в docker. Для этого находясь в папке /images/ дистрибутива ExeMES 2.4 выполните следующие команды:
| Code Block |
|---|
| docker load -i ./exemesmiddleware2.4.tar
docker load -i ./exemesclient2.4.tar
docker load -i ./exeruntimeclient2.4.tar
docker load -i ./exesched2.4.tar |
- Укажите новый образ для ExeMES Server (Middleware):
| Code Block |
|---|
| image: "git.exeplant.ru:5050/mes-develop/exemesmiddleware:2.4" |
- Укажите новый образ для ExeMES Client:
| Code Block |
|---|
| image: "git.exeplant.ru:5050/mes-develop/exemesclient:2.4" |
- Укажите новый образ для ExeMES RuntimeClient:
| Code Block |
|---|
| image: "git.exeplant.ru:5050/mes-develop/exeruntimeclient:2.4" |
- Укажите новый образ для ExeSched:
| Code Block |
|---|
| image: "git.exeplant.ru:5050/mes-develop/exesched:2.4" |
|
| Expand |
|---|
| title | Добавить конфигурацию запуска приложений ExeMedia Service и БД MinIO |
|---|
| - Скопируйте папку data/exemediaservice в папку с установленным ПО ExeMES (по умолчанию root/dev/);
- Создайте папку minio в папке с установленным ПО ExeMES (по умолчанию root/dev/);
- Предоставьте права на папку minio следующей командой:
| Code Block |
|---|
| chmod -R 777 ./minio |
- Добавьте в файл docker-compose (по умолчанию root/dev/) конфигурацию приложения ExeMedia Service и MinIO;
| Code Block |
|---|
| language | yml |
|---|
| title | Приложение ExeMedia Service |
|---|
| exemediaservice:
depends_on:
- minio
container_name: exemediaservice
image: "git.exeplant.ru:5050/mes-develop/exemediaservice:1.0"
environment:
ASPNETCORE_URLS: "https://+"
ASPNETCORE_Kestrel__Certificates__Default__Password: "1"
ASPNETCORE_Kestrel__Certificates__Default__Path: "/root/.aspnet/https/wildcard.[домен].pfx"
TZ: "Europe/Moscow"
ConnectionStrings__DefaultConnection: "Host=some-postgres;Port=5432;Database=media_service;Username=postgres;Password=postgres"
MinIO__Endpoint: "minio.[домен]:9000"
MinIO__AccessKey: "minioadmin"
MinIO__SecretKey: "minioadmin"
GCCSettings:BroadcastRemoteLicenses: "0"
GCCSettings:UseRemoteHosts: "1"
GCCSettings:Remotehosts: "[license_server_ip]"
MiddlewareApiRootUri: "https://mesmiddleware.[домен]/api"
CORS: "https://mesclient.[домен],https://mes-runtime.[домен]"
volumes:
- type: bind
source: /root/dev/data/exemediaservice/keycloak.json
target: /app/keycloak.json
- type: bind
source: /root/dev/data/exemediaservice/appsettings.json
target: /app/appsettings.json
- type: bind
source: /root/dev/crt/wildcard.[домен].pfx
target: /root/.aspnet/https/wildcard.[домен].pfx
- type: bind
source: /root/dev/crt/wildcard.[домен].crt
target: /etc/ssl/certs/wildcard.[домен].pem
ports:
- "8150:443"
extra_hosts:
- "minio.[домен] mes-runtime.[домен] middleware.[домен] keycloak.[домен]:[host_ip]" |
| Tip |
|---|
Параметры [license_server_ip], [host_ip] и [домен] должны быть скорректированы под Вашу конфигурацию (используйте аналогию с конфигурацией Вашего приложения ExeMES Server (Middleware)). |
| Tip |
|---|
Параметры подключения к контейнеру БД Postgre указаны в конфигурации приложений по умолчанию. Для альтернативной БД сконфигурируйте соответствующие переменные окружения. |
| Code Block |
|---|
| language | yml |
|---|
| title | Приложение MinIO |
|---|
| minio:
container_name: minio
restart: always
image: minio/minio
environment:
MINIO_ROOT_USER: minioadmin
MINIO_ROOT_PASSWORD: minioadmin
MINIO_TLS_CERT: /certs/public.crt
MINIO_TLS_KEY: /certs/private.key
command: "server /data --console-address :9001 --certs-dir /certs"
ports:
- "9000:9000"
- "9001:9001"
volumes:
- /root/dev/minio/:/data
- type: bind
source: /root/dev/crt/wildcard.[домен].crt
target: /certs/public.crt
- type: bind
source: /root/dev/crt/wildcard.[домен].key
target: /certs/private.key |
| Tip |
|---|
Обратите внимание, что ExeMedia Service использует уже существующие сертификаты, проверьте правильность указания пути к файлам сертификатов (используйте аналогию с ExeMES Server (Middleware)). | Code Block |
|---|
| language | yml |
|---|
| title | Конфигурация использования сертификатов |
|---|
| - type: bind
source: /root/dev/crt/wildcard.[домен].pfx
target: /root/.aspnet/https/wildcard.[домен].pfx
- type: bind
source: /root/dev/crt/wildcard.[домен].crt
target: /etc/ssl/certs/wildcard.[домен].pem |
Для работы по https приложение MinIO использует уже существующие сертификаты, проверьте правильность указания пути к файлам сертификатов, а также проверьте, что внутрь контейнера сертификат и закрытый ключ передаются с именами, как в примере ниже: | Code Block |
|---|
| language | yml |
|---|
| title | Монтирование файлов сертификатов с необходимыми именами |
|---|
| - type: bind
source: /root/dev/crt/wildcard.[домен].crt
target: /certs/public.crt
- type: bind
source: /root/dev/crt/wildcard.[домен].key
target: /certs/private.key |
|
| Note |
|---|
По умолчанию ExeMES использует защищенное подключение к БД MinIO. Если Вы хотите настроить подключение к БД MinIO без использования сертификатов, выполните действия по настройке подключения к БД MinIO без использования сертификатов. Указанные действия описаны в инструкции по установке ExeMES. |
Для возможности использования нового модуля ExeMedia, задайте новые переменные окружения MediaServiceHost в конфигурации ExeMES Client и ExeMES RuntimeClient: | Code Block |
|---|
MediaServiceHost: "https://exemedia.[домен]:8150" |
- После завершения редактирования файла docker compose выполните перезапуск измененных и запуск добавленных контейнеров, выполнив команду:
| Code Block |
|---|
| docker compose up -d |
|
| Expand |
|---|
| title | Проверить возможность обновления БД MESDB |
|---|
| | Warning |
|---|
Если описанная ниже проверка не будет пройдена – процедура обновления БД MESDB завершится некорректно |
В версии 2.4 добавлено логическое ограничение, которое может конфликтовать с существующими данными в БД MESDB. Для проверки возможности обновления подключитесь любым клиентом СУБД, который поддерживает Postgre SQL версии 15.4 к БД MESDB и выполните скрипт: | Code Block |
|---|
| select l.qm_spec_id, s.qm_spec_name, l.char_id, ch.char_name, l.normal_sample_size, l.minimum_sample_size,l.maximum_sample_size
from qm_spec_char_link l
left join qm_spec s on s.qm_spec_id = l.qm_spec_id
left join characteristic ch on ch.char_id = l.char_id
where l.normal_sample_size > l.maximum_sample_size
OR l.minimum_sample_size > l.normal_sample_size
OR l.minimum_sample_size > l.maximum_sample_size
OR l.minimum_sample_size < 1
OR l.normal_sample_size < 1
OR l.maximum_sample_size < 1 |
Если результат выполнения скрипта не вернул ни одной строки – обновление БД MESDB возможно. Если результат выполнения скрипта вернул набор данных – необходимо скорректировать конфигурацию характеристики спецификации управления качеством в части ограничений минимального, нормального и максимального количества измерений. | Tip |
|---|
Имя характеристики, имя спецификации и значения минимального, нормального и максимального количества измерений которые не соответствуют новому ограничению будут содержаться в результате выполнения скрипта: 
|
|
| Expand |
|---|
| title | Обновить версию БД MESDB |
|---|
| | Warning |
|---|
Процесс обновления БД MESDB до версии 2.4 возможен, начиная с версии 1.3. Для обновления до версии 1.3 см. пункт Обновление на версию 1.3. Перед обновлением выполните процедуру резервного копирования БД MESDB. |
| Warning |
|---|
Если вы не обновите версию БД сразу после обновления версии приложений ExeMES, то при открытии любой страницы ExeMES Client будет появляться предупреждение: 
|
|
| Expand |
|---|
| title | Импортировать демонстрационные данные |
|---|
| | Note |
|---|
| Начиная с версии 2.4 для ExeMES доступны наборы демонстрационных данных. Если вы используете ExeMES не на продуктивной среде, при необходимости, вы можете импортировать наборы демонстрационных данных для ознакомления с функциональностью ExeMES. Данный шаг является опциональным |
Для импорта демонстрационных данных воспользуйтесь инструкцией. |
|