Created attachment 19175 [details] opensearch.log Стенд, обновлённый до Sisyphus: ALT Server x86_64 (Виртуальная машина в виртуальном окружении Proxmox) ОЗУ > 8Гб Версия: opensearch-3.1.0-alt3 Шаги: 1. Установить пакет: # apt-get install opensearch 2. Проверить статус до запуска: # systemctl status opensearch ○ opensearch.service - OpenSearch Loaded: loaded (/lib/systemd/system/opensearch.service; disabled; vendor preset: disabled) Active: inactive (dead) Не запущен. 3. Изменить в конфигурационном файле параметр, отвечающий за потребление ОЗУ: # sed -i 's/1g/4g/g' /etc/opensearch/jvm.options Запустить opensearch и проверить статус: Добавить в автозагрузку: # systemctl enable --now opensearch && sleep 5; systemctl status opensearch --no-pager -l Active: active (running) - запущен 4. Установить пароль на хранилище: # /usr/share/opensearch/bin/opensearch-keystore passwd (задать пароль 12345678) Проверить: # /usr/share/opensearch/bin/opensearch-keystore has-passwd Пароль установлен: OpenSearch keystore password changed successfully. Keystore is password-protected 5. Указать пароль от хранилища: # echo KEYSTORE_PASSWORD=12345678 >> /etc/sysconfig/opensearch Исправить права на хранилище (поскольку его редактирование возможно только под root пользователем, то права после редактирования изменились): # chgrp opensearch /etc/opensearch/opensearch.keystore 6. Перезапустить сервис: # systemctl restart opensearch; systemctl status opensearch --no-pager -l Результат: Active: failed Job for opensearch.service failed because the control process exited with error code. See "systemctl status opensearch.service" and "journalctl -xeu opensearch.service" for details. × opensearch.service - OpenSearch Loaded: loaded (/usr/lib/systemd/system/opensearch.service; enabled; preset: disabled) Active: failed (Result: exit-code) since Wed 2025-07-23 17:47:27 MSK; 17ms ago Duration: 1min 7.024s Invocation: d173f91989ec4a698f46a5f92ca08706 Docs: https://opensearch.org/ Process: 2469 ExecStartPre=/bin/mkdir -p /dev/shm/performanceanalyzer (code=exited, status=0/SUCCESS) Process: 2474 ExecStartPre=/bin/chown opensearch:opensearch /dev/shm/performanceanalyzer (code=exited, status=0/SUCCESS) Process: 2478 ExecStart=/usr/share/opensearch/bin/systemd-entrypoint -p ${PID_DIR}/opensearch.pid --quiet (code=exited, status=1/FAILURE) Main PID: 2478 (code=exited, status=1/FAILURE) Mem peak: 57.4M CPU: 3.112s июл 23 17:47:25 server-11-0-x86-64-minimal-20250723.localdomain systemd[1]: Starting opensearch.service - OpenSearch... июл 23 17:47:25 server-11-0-x86-64-minimal-20250723.localdomain opensearch[2478]: warning: no-jdk distributions that do not bundle a JDK are deprecated and will be removed in a future release июл 23 17:47:26 server-11-0-x86-64-minimal-20250723.localdomain opensearch[2545]: warning: no-jdk distributions that do not bundle a JDK are deprecated and will be removed in a future release июл 23 17:47:27 server-11-0-x86-64-minimal-20250723.localdomain opensearch[2478]: Failed to read keystore password on console июл 23 17:47:27 server-11-0-x86-64-minimal-20250723.localdomain systemd[1]: opensearch.service: Main process exited, code=exited, status=1/FAILURE июл 23 17:47:27 server-11-0-x86-64-minimal-20250723.localdomain systemd[1]: opensearch.service: Failed with result 'exit-code'. июл 23 17:47:27 server-11-0-x86-64-minimal-20250723.localdomain systemd[1]: Failed to start opensearch.service - OpenSearch. июл 23 17:47:27 server-11-0-x86-64-minimal-20250723.localdomain systemd[1]: opensearch.service: Consumed 3.112s CPU time, 57.4M memory peak Детали: До установки пароля сервис запущен. Во вложении логи /var/log/opensearch/opensearch.log Ожидаемый результат: без ошибок opensearch после установки пароля на хранилище.
Замечание: если использовать команду # echo -e "\nKEYSTORE_PASSWORD=12345678" >> /etc/sysconfig/opensearch вместо # echo KEYSTORE_PASSWORD=12345678 >> /etc/sysconfig/opensearch то сервис не упадёт. Смотреть шаг №5 из описания (https://bugzilla.altlinux.org/show_bug.cgi?id=55327#c0) Причина, по которой упал сервис: потому что opensearch не смог распознать эту переменную, так как она неправильно записалась в файл /etc/sysconfig/opensearch посредством команды echo KEYSTORE_PASSWORD=12345678 >> /etc/sysconfig/opensearch Получилось, что в конце файла /etc/sysconfig/opensearch склеенные 2 строки: #MAX_MAP_COUNT=262144 и KEYSTORE_PASSWORD=12345678 #MAX_MAP_COUNT=262144KEYSTORE_PASSWORD=12345678 Перепроверено, после корректно отрабатывает с данной командой, сервис не падает: Active: active (running) (К примеру, на p10 с версией opensearch-2.15.0-alt2 такой проблемы не было, строка ставилась автоматически в конец без склеиваний даже с командой # echo KEYSTORE_PASSWORD=12345678 >> /etc/sysconfig/opensearch). Как итог, причина в самой записи в файл /etc/sysconfig/opensearch.
(Ответ для Tatyana Gagina на комментарий #1) > Как итог, причина в самой записи в файл /etc/sysconfig/opensearch. Не в записи, а в том, что в конце файла /etc/sysconfig/opensearch нет символа перевода строки: [root@server ~]# tail -2 /etc/sysconfig/opensearch # property is set at boot time in /usr/lib/sysctl.d/opensearch.conf #MAX_MAP_COUNT=262144[root@server ~]#
(Ответ для Alexander Makeenkov на комментарий #2) > (Ответ для Tatyana Gagina на комментарий #1) > > Как итог, причина в самой записи в файл /etc/sysconfig/opensearch. > > Не в записи, а в том, что в конце файла /etc/sysconfig/opensearch нет > символа перевода строки: > Благодарю за уточнение.