Установка, запуск, инициализация и остановка ПО
Введение
Для работы Comindware Platform требуются операционная система, сервер базы данных, веб-сервер, обратный прокси-сервер и сервер журналов.
Для быстрого развёртывания Comindware Platform в Linux компания Comindware предоставляет дистрибутив с установщиком, настраивающим необходимое программное обеспечение. См. Comindware Platform 5.0. Перечень стороннего программного обеспечения для Linux.
Здесь представлены инструкции по развёртыванию и инициализации Comindware Platform из дистрибутива в ОС Linux.
Внимание!
Если продуктовый контур Comindware Platform изолирован внешним межсетевым экраном, необходимо настроить правила фильтрации для разрешения входящего трафика HTTP/HTTPS и WS/WSS в контур Comindware Platform.
Порядок развёртывания ПО Comindware Platform
- Установите и настройте необходимое вспомогательное ПО.
- Установите ПО Comindware Platform.
- Создайте экземпляр ПО.
- Запустите экземпляр ПО.
- Инициализируйте экземпляр ПО.
Требования к внешним службам
Для работы Comindware Platform необходимо развернуть следующие внешние службы:
- сервер журналирования транзакций OpenSearch (Elasticsearch);
- сервер брокера сообщений Apache Kafka.
Установите и настройте это ПО согласно следующим инструкциям:
Установка вспомогательного ПО
Прежде чем приступать к установке вспомогательного ПО, необходимого для работы Comindware Platform, ознакомьтесь с демонстрационным роликом и инструкциями, представленными ниже.
Видеоинструкция
Порядок установки вспомогательного ПО
-
Перейдите в режим суперпользователя:
sudo -sили
su - -
Скачайте и распакуйте дистрибутив с вспомогательным ПО Comindware Platform, полученный по ссылке от компании Comindware (
X.X,<versionNumber>— номер версии ПО,<osname>— название операционной системы):tar -xf X.X-release-ru-<versionNumber>.prerequisites.<osname>.tar.gzСовет
После распаковки архив можно удалить для экономии места:
rm -f X.X-release-ru-<versionNumber>.prerequisites.<osname>.tar.gz -
Перейдите в директорию со скриптами для развёртывания вспомогательного ПО:
cd <prerequisitesDistPath>/CMW_<osname>/scriptsЗдесь:
<prerequisitesDistPath>/CMW_<osname>/— путь к распакованному дистрибутиву со вспомогательным ПО. -
Установите ПО из дистрибутива:
sh prerequisites_install.sh -pКлючи скрипта
prerequisites_install.sh:-p— установить обязательное вспомогательное ПО.-d— установить или переустановить ПО .NET (необязательный ключ).-eили-o— установить службу Elasticsearch или OpenSearch (необязательный ключ).-i— установить службу Apache Ignite (необязательный ключ).-kc— установить клиент Apache Kafka (необязательный ключ).-k— установить службу Apache Kafka (необязательный ключ).-kh=<hostname>или--kafkaHost=<hostname>— использовать указанный хост для подключения к ПО Kafka (необязательный ключ).-kp=<portNumber>или--kafkaPort=<portNumber>— использовать указанный порт для подключения к ПО Kafka (необязательный ключ).-h— вызов краткой справки по использованию скрипта (указывать только без остальных ключей).
Примечание
Скрипт
prerequisites_install.shустанавливает необходимые для Comindware Platform компоненты, включая Java, .NET, Mono, NGINX.Вызов справки для скриптов
Для ознакомления с ключами и назначением любого скрипта используйте ключ
-hбез каких-либо других ключей, например:sh prerequisites_install.sh -h -
По окончании установки скрипт выведет информацию об установленных компонентах. Удостоверьтесь, что компоненты успешно установлены (имеют статус
OK).Пример результата выполнения скрипта с ключом
-pбез установки OpenSearch (Elasticsearch) и Kafka:[Done] Creating CBAP Data Dir.-----------------------------------------Environment detailsStatus | Software | Version-----------------------------------------OK | mono | 6.12.0.200OK | dotnet | 8.0.OK | java | 17.0.7OK NGINX installed.OK NGINX started.OK CBAP version folder created.OK CBAP configs folder created.OK CBAP data folder created.OK CBAP logs folder created.OK CBAP dotnet folder created.OK Local elasticsearch server installed: NoOK Local elasticsearch server started: NoOK Local kafka server installed: NoOK Local kafka server started: NoOK Final status. -
Удостоверьтесь, что компоненты установлены:
sh prerequisites_list.sh -
При необходимости установите недостающие необходимые компоненты, запустив скрипт с соответствующими флагами.
Установка ПО Comindware Platform
Прежде чем приступать к установке ПО Comindware Platform, ознакомьтесь с видеороликом и инструкциями, представленными ниже.
Видеоинструкция
Порядок установки ПО Comindware Platform
-
Перейдите в режим суперпользователя:
sudo -sили
su - -
Скачайте и распакуйте дистрибутив ПО Comindware Platform, полученный по ссылке от компании Comindware:
tar -xf X.X-release-ru-<versionNumber>.<osname>.tar.gzСовет
После распаковки архив можно удалить для экономии места:
rm -f X.X-release-ru-<versionNumber>.<osname>.tar.gz -
Перейдите в директорию со скриптами для развёртывания ПО:
cd <distPath>/CMW_<osname>_<versionNumber>/scriptsЗдесь:
<distPath>/CMW_<osname>_<versionNumber>/— путь к распакованному дистрибутиву со ПО Comindware Platform. -
Установите ПО из дистрибутива:
sh version_install.shЕсли отобразится запрос на перезагрузку ОС
-
Выполните перезагрузку:
reboot -
После перезагрузки:
- перейдите в режим суперпользователя;
- заново запустите установку ПО из дистрибутива (шаг 3).
-
-
После успешного завершения установки подождите 3–5 минут. Этого времени обычно достаточно для автоматического запуска и инициализации установленных служб (в зависимости от конфигурации машины).
-
Удостоверьтесь, что ПО установлено, просмотрев список установленных версий ПО:
sh version_list.sh
Создание экземпляра ПО
Прежде чем приступать к установке экземпляра ПО Comindware Platform, ознакомьтесь с видеороликом и инструкциями, представленными ниже.
Видеоинструкция
Подготовка к созданию экземпляра ПО
Перед созданием экземпляра ПО проверьте конфигурацию Linux и при необходимости внесите в неё перечисленные ниже изменения.
-
Перейдите в режим суперпользователя:
sudo -sили
su - -
Откройте для редактирования файл
limits.conf:nano /etc/security/limits.conf -
Установите следующие директивы:
- Astra Linux, Ubuntu, Debian (DEB-based)
www-data soft nproc 200000www-data hard nproc 200000www-data soft nofile 200000www-data hard nofile 200000- РЕД ОС, Rocky (RPM-based)
nginx soft nproc 200000nginx hard nproc 200000nginx soft nofile 200000nginx hard nofile 200000- Альт Сервер
_nginx soft nproc 200000_nginx hard nproc 200000_nginx soft nofile 200000_nginx hard nofile 200000 -
Откройте файл
common-sessionдля редактирования:nano /etc/pam.d/common-session -
Установите следующую директиву:
session required pam_limits.so -
Откройте файл
sysctl.confдля редактирования:nano /etc/sysctl.conf -
Установите следующие директивы:
fs.file-max=2097152vm.max_map_count=262144fs.inotify.max_user_instances=524288Оптимальное значение vm.max_map_count
Значение
vm.max_map_count=262144приведено для примера.Определите оптимальное значение
vm.max_map_countсогласно инструкциям в параграфе «Настройка параметра vm.max_map_count». -
Откройте файл
user.confдля редактирования:nano /etc/systemd/user.conf -
Установите следующую директиву:
DefaultLimitNOFILE=200000 -
Откройте файл
system.confдля редактирования:nano /etc/systemd/system.conf -
Установите следующую директиву:
DefaultLimitNOFILE=200000 -
После внесения изменений перезапустите демоны:
sysctl -psystemctl daemon-reexec
Создание единственного экземпляра ПО
-
Перейдите в режим суперпользователя:
sudo -sили
su - -
Перейдите в директорию со скриптами для развёртывания ПО Comindware Platform:
cd <distPath>/CMW_<osname>_<versionNumber>/scriptsЗдесь:
<distPath>/CMW_<osname>_<versionNumber>/— путь к распакованному дистрибутиву ПО. -
Разверните экземпляр ПО:
sh instance_create.sh -n=<instanceName> -v=<versionNumber> [-p=<portNumber>]Ключи скрипта
instance_create.sh:-n=<instanceName>— имя экземпляра ПО (обязательный ключ).-v=<versionNumber>— номер версии ПО видаX.X.XXXXX.X(например: 5.0.00000.0, обязательный ключ). Версия должна быть установлена, см. «Установка Comindware Platform».-p=<portNumber>— порт для экземпляра ПО, по умолчанию: 80 (необязательный ключ).-fqdn=<hostName>или--instance-fqdn=<hostName>— имя хоста для экземпляра ПО (необязательный ключ). По умолчанию: localhost.-el=<hostName>или--elasticsearch-url=<hostName>— использовать указанный URL или IP-адрес для подключения к серверу OpenSearch (Elasticsearch).-kf=<hostName>или--kafka-url=<hostName>— использовать указанный URL или IP-адрес для подключения к серверу Apache Ignite.-h— вызов краткой справки по использованию скрипта (указывать только без остальных ключей).
-
По окончании установки скрипт выведет информацию об установленных компонентах. Удостоверьтесь, что компоненты успешно установлены (имеют статус
OK).Пример результата выполнения скрипта:
OK Instance folder created.OK Instance Web config created.OK Instance Ignite config created.OK Instance binaries linked.OK Instance config created.OK Data folder created.OK Database folder created: NoOK Streams folder created: NoOK Logs folder created: YesOK Used version: 5.0.0000.0OK Logs configured.OK Sites created.OK Sites enabled.OK API Gateway configured.OK Link to binaries is valid.OK Instance service started.OK Instance API gateway service started.OK Instance adapter host service started.OK NGINX started.OK Final status.[Done] Creating a new CBAP instance. -
Удостоверьтесь, что была создана директория с файлами конфигурации экземпляра ПО.
ls -lhF /var/www/<instanceName>/ -
По выводу команды
lsудостоверьтесь, что в путях указана корректная версия ПО, например5.0.0000.0:lrwxrwxrwx. 1 nginx nginx 36 Oct 11 17:54 bin -> /var/www/.cmw_version/5.0.0000.0/bin/lrwxrwxrwx. 1 nginx nginx 41 Oct 11 17:54 compiled -> /var/www/.cmw_version/5.0.0000.0/compiled/lrwxrwxrwx. 1 nginx nginx 37 Oct 11 17:54 data -> /var/www/.cmw_version/5.0.0000.0/data/lrwxrwxrwx. 1 nginx nginx 44 Oct 11 17:54 favicon.ico -> /var/www/.cmw_version/5.0.0000.0/favicon.icolrwxrwxrwx. 1 nginx nginx 44 Oct 11 17:54 Global.asax -> /var/www/.cmw_version/5.0.0000.0/Global.asaxlrwxrwxrwx. 1 nginx nginx 39 Oct 11 17:54 mobile -> /var/www/.cmw_version/5.0.0000.0/mobile/lrwxrwxrwx. 1 nginx nginx 46 Oct 11 17:54 redirect.aspx -> /var/www/.cmw_version/5.0.0000.0/redirect.aspxlrwxrwxrwx. 1 nginx nginx 42 Oct 11 17:54 resources -> /var/www/.cmw_version/5.0.0000.0/resources/lrwxrwxrwx. 1 nginx nginx 43 Oct 11 17:54 robots.txt -> /var/www/.cmw_version/5.0.0000.0/robots.txtlrwxrwxrwx. 1 nginx nginx 45 Oct 11 17:54 unauthorized -> /var/www/.cmw_version/5.0.0000.0/unauthorized/
Создание дополнительного экземпляра ПО
На одном сервере можно развернуть несколько экземпляров ПО Comindware Platform. Для создания второго и последующих экземпляров ПО выполните указанные ниже действия.
-
Перейдите в режим суперпользователя:
sudo -sили
su - -
Просмотрите список имеющихся экземпляров ПО Comindware Platform:
cat /usr/share/comindware/configs/instance/* | grep -E '(configPath:)' -
Просмотрите список используемых портов:
ss -tunlpТакже можно узнать, используется ли определённый порт (
<portNumber>):ss -tunlp | grep :<portNumber> -
Просмотрите список установленных версий ПО:
ls /var/www/.cmw_version/ -
Создайте новый экземпляр ПО согласно приведённым выше инструкциям, указав для него уникальные имя и порт.
-
Откройте для редактирования три службы каждого из установленных экземпляров ПО (
<instanceName>):nano /usr/lib/systemd/system/comindware<instanceName>.servicenano /usr/lib/systemd/system/apigateway<instanceName>.servicenano /usr/lib/systemd/system/adapterhost<instanceName>.service -
Если используются локальные службы Kafka и OpenSearch (Elasticsearch), откройте их для редактирования:
nano /usr/lib/systemd/system/kafka.servicenano /usr/lib/systemd/system/elasticsearch.service -
В каждом файле службы установите следующие директивы:
# Макс. количество открытых файловLimitNOFILE=200000# Макс. количество процессовLimitNPROC=8192
Запуск экземпляра ПО
-
Перейдите в режим суперпользователя:
sudo -sили
su - -
Удостоверьтесь, что основные службы установлены, запущены и имеют статус
Active (running):systemctl status apigateway<instanceName>systemctl status adapterhost<instanceName>systemctl status comindware<instanceName> -
Если какая-либо служба не работает, запустите её:
systemctl start apigateway<instanceName>systemctl start adapterhost<instanceName>systemctl start comindware<instanceName> -
Выполните инициализацию ПО.
Инициализация Comindware Platform
-
Удостоверьтесь, что корректно настроен файл конфигурации экземпляра ПО. См.:
-
Запустите веб-браузер и в адресной строке введите URL-адрес, на котором был развёрнут экземпляр ПО:
http://<instanceHost>:<portNumber> -
Дождитесь запуска и отображения веб-сайта Comindware Platform, что может занять примерно 5 минут.
-
Откроется страница создания аккаунта администратора Comindware Platform.

Страница создания аккаунта администратора -
Введите учётные данные аккаунта администратора и нажмите кнопку «Создать аккаунт».
Внимание!
- В Comindware Platform всегда должен оставаться хотя бы один аккаунт администратора. Он может потребоваться для восстановления системы.
- Аккаунт администратора, созданный при инициализации экземпляра ПО, не следует удалять, даже если впоследствии аккаунты будут синхронизироваться с Active Directory.
-
При необходимости откроется страница активации ПО. Выполните онлайновую или ручную активацию либо нажмите кнопку «Пропустить» для первоначального ознакомления с ПО без активации.
- Дождитесь открытия начальной страницы Comindware Platform.
- На этом этапе развертывание экземпляра Comindware Platform завершено.
- Подготовьте экземпляр к разработке приложений.
Подготовка экземпляра ПО к разработке приложений
Прежде чем вносить какие-либо изменения, создавать и использовать приложения, настройте резервное копирование и возможность восстановления паролей. Это позволит обеспечить работоспособность Comindware Platform в долгосрочной перспективе.
-
Создайте резервную копию созданного экземпляра Comindware Platform:
- Создайте конфигурацию резервного копирования по расписанию.
- Запустите резервное копирование вручную, чтобы создать первую резервную копию чистого экземпляра ПО.
См. «Резервное копирование. Настройка, запуск и просмотр журнала сеансов».
-
Настройте подключение к почтовому серверу для отправки писем для сброса пароля и двухфакторной аутентификации:
- Создайте подключение типа «Отправка эл. почты из процесса».
- Установите в свойствах подключения флажок «Использовать по умолчанию».
- Отправьте тестовое сообщение, чтобы удостовериться в работоспособности подключения.
- Не настраивайте путь передачи данных и процесс. Это не требуется для отправки уведомлений.
-
Снова запустите резервное копирование вручную, чтобы создать резервную копию работоспособного экземпляра ПО.
- Теперь можно приступать к созданию приложений на основе Comindware Platform.
Оптимизация параметра vm.max_map_count
vm.max_map_count — это параметр конфигурации ядра Linx, задающий максимальное количество областей памяти, которые процессу разрешено выделять в своём виртуальном адресном пространстве.
Типовое для Comindware Platform значение параметра vm.max_map_count равно 262144.
Чтобы определить оптимальное для вашей конфигурации значение vm.max_map_count, выполните указанные ниже инструкции.
Например, оптимизировать vm.max_map_count может потребоваться, если после запуска экземпляра ПО команда journalctl выдаёт ошибку следующего вида:
mmap(PROT_NONE) failed
-
Определите текущее значение
vm.max_map_count:sudo sysctl vm.max_map_count -
Определите выделенный объём оперативной памяти:
freeОбратите внимание на общий объём оперативной памяти.
-
Определите размер страницы в оперативной памяти:
declare -i NEW_max_map_count=$(vmstat -s | grep -i 'total memory' | awk ' {print $1}')*1024/$(getconf PAGE_SIZE)echo $NEW_max_map_count -
Полученное значение
NEW_max_map_countвременно присвойте параметруvm.max_map_countи проверьте работу экземпляра ПО:- Временное изменение значения (например, для тестирования):
sudo sysctl -w vm.max_map_count=$NEW_max_map_count -
Удостоверившись в работоспособности экземпляра ПО, задайте постоянное значение
vm.max_map_count:-
Откройте для редактирования файл
/etc/sysctl.conf:sudo nano /etc/sysctl.conf -
Установите значение
vm.max_map_count:vm.max_map_count=<NEW_max_map_count><NEW_max_map_count>замените на полученное на шаге 3 цифровое значение. -
Примените изменения:
sysctl -p
-
Остановка экземпляра ПО
-
Перейдите в режим суперпользователя:
sudo -sили
su - -
Перед тем как выполнять любые действия с файлами ПО и базы данных, остановите службы, поддерживающие работу ПО:
systemctl stop comindware<instanceName>systemctl stop apigateway<instanceName>systemctl stop adapterhost<instanceName> -
Удостоверьтесь, что службы остановлены:
systemctl status comindware<instanceName>systemctl status apigateway<instanceName>systemctl status adapterhost<instanceName>
Удаление версии и экземпляра ПО
Прежде чем приступать к удалению версии и экземпляра ПО Comindware Platform, ознакомьтесь с видеороликом и инструкциями, представленными ниже.
Видеоинструкция
Удаление экземпляра ПО
-
Перейдите в режим суперпользователя:
sudo -sили
su - -
Остановите экземпляр ПО согласно инструкции.
-
Перейдите в директорию со скриптами для развёртывания ПО Comindware Platform:
cd <distPath>/CMW_<osname>_<versionNumber>/scripts -
Запустите удаление экземпляра ПО:
sh instance_delete.sh -n=<instanceName>Скрипт
delete.shподдерживает следующие ключи:-n=<instanceName>— удалить экземпляр ПО с указанным именем (обязательный ключ).--deleteData— безвозвратно удалить все файлы базы данных экземпляра ПО (необязательный ключ). Удаляются файлы, а директория экземпляра ПО остаётся, её можно удалить вручную.--deleteLogs— безвозвратно удалить директорию со всеми файлами журналов экземпляра ПО (необязательный ключ).--deleteBackups— безвозвратно удалить все резервные копии экземпляра ПО (необязательный ключ).-h— вызов краткой справки по использованию скрипта (указывать только без остальных ключей).
-
Удостоверьтесь, что экземпляр ПО был успешно удалён, просмотрев список установленных экземпляров ПО:
sh instance_list.sh
Удаление версии ПО
-
Перейдите в режим суперпользователя:
sudo -sили
su - -
Просмотрите список экземпляров ПО с указанием версий:
sh instance_list.sh -
Удалите все экземпляры с версией ПО, которую требуется удалить, или обновите их до другой версии. Удалить версию ПО, которая используется в каких-либо экземплярах, не удастся. См. «Удаление экземпляра ПО».
-
Перейдите в директорию со скриптами для развёртывания ПО Comindware Platform:
cd <distPath>/CMW_<osname>_<versionNumber>/scripts -
Просмотрите список установленных версий ПО:
sh version_list.sh -
Удалите версию ПО:
sh version_delete.sh -v=<versionNumber>Здесь:
-v=<versionNumber>— укажите номер версии ПО видаX.X.XXXX.X(например:5.0.0000.0). -
Проверьте, что версия ПО была удалена успешно:
sh version_list.shили
ls /var/www/.cmw_version
Эта статья была полезна 3 чел.