Особенности установки ARTA Synergy 4.2 wilkinson ================================================ **Весь процесс обновления сначала нужно провести на тестовом сервере.** Процесс обновления на версию 4.2 (wilkinson) с 4.0 (hamming) ----------------------------------------------------------- При обновлении с версии 4.0 требуется выполнить шаги, аналогичные обновлению на 4.1. Инструкция доступна по ссылке http://rtd.lan.arta.kz/docs/release-notes/ru/minsky/src/upgrade.html Процесс обновления с версии 4.1 (minsky) на 4.2 (wilkinson) ----------------------------------------------------------- **Установка Synergy 4.2 (wilkinson)** Добавить в файл ``/etc/apt/sources.list`` строку для ветки wilkinson: ``deb [allow-insecure=yes] http://deb.arta.kz/tengri wilkinson main contrib non-free`` Обновить список пакетов: ``aptitude update`` Установить Synergy: ``aptitude install arta-synergy-synergy`` После установки новой версии проверить актуальность БД и при необходимости выполнить их обновление в Административном приложении Synergy. **Обновление Elasticsearch и Kibana** Synergy 4.2 (wilkinson) работает с Elasticsearch и Kibana версии 7.5.0. Установить их можно также из ветки wilkinson. **ВАЖНО!** Рекомендуется сделать бэкапы индексов. Перед обновлением следует ознакомиться с разделом Breaking Changes документации Elasticsearch и откорректировать кастомные индексы при их наличии. Также в случае использования кастомных индексов нужно подготовить скрипт для переиндексации после обновления, так как ранее созданные индексы (например, через блок-процессы) потребуется удалить перед обновлением. Инструкция не включает в себя обновление версий кастомных плагинов Kibana. Работу таких плагинов после обновления следует проверить и откорректировать самостоятельно. Ссылки на документацию Elasticsearch: https://www.elastic.co/guide/en/elasticsearch/reference/7.5/elasticsearch-intro.html https://www.elastic.co/guide/en/elasticsearch/reference/7.x/breaking-changes-7.0.html Порядок обновления: 1. сохранить список index patterns и выгрузить из Kibana визуализации и дашборды, это потребуется в дальнейшем для восстановления дашбордов: .. figure:: ../_static/kibana_patterns.png .. figure:: ../_static/kibana_export.png 2. остановить Kibana командой ``/etc/init.d/kibana stop`` и удалить все старые индексы: .. code-block:: bash # curl -X DELETE "localhost:9200/_all?pretty" 3. обновить пакеты elasticsearch и kibana: ``aptitude install elasticsearch kibana`` **Во время установки:** необходимо принять рекомендованные изменения конфигурационных файлов: .. code-block:: bash Configuration file '/etc/kibana/kibana.yml' ==> Modified (by you or by a script) since installation. ==> Package distributor has shipped an updated version. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** kibana.yml (Y/I/N/O/D/Z) [default=N] ? y Installing new version of config file /etc/kibana/kibana.yml ... Installing new version of config file /etc/systemd/system/kibana.service ... Setting up elasticsearch (7.5.0) ... Configuration file '/etc/elasticsearch/elasticsearch.yml' ==> Modified (by you or by a script) since installation. ==> Package distributor has shipped an updated version. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** elasticsearch.yml (Y/I/N/O/D/Z) [default=N] ? y Installing new version of config file /etc/elasticsearch/elasticsearch.yml ... Installing new version of config file /etc/elasticsearch/jvm.options ... Installing new version of config file /etc/elasticsearch/log4j2.properties ... Configuration file '/etc/default/elasticsearch' ==> Modified (by you or by a script) since installation. ==> Package distributor has shipped an updated version. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** elasticsearch (Y/I/N/O/D/Z) [default=N] ? y 4. в конфигурационном файле ``/etc/elasticsearch/elasticsearch.yml`` закомментировать при их наличии следующие строки: .. code-block:: yaml #thread_pool: # index: # queue_size: 1000 5. в файле ``/etc/default/elasticsearch`` указать параметры JAVA_HOME и ES_PATH_CONF: .. code-block:: yaml # Elasticsearch Java path JAVA_HOME=/usr/lib/jvm/java-8-oracle # Elasticsearch configuration directory ES_PATH_CONF=/etc/elasticsearch 6. выполнить в терминале команды: .. code-block:: bash # chown -R elasticsearch:elasticsearch /usr/share/elasticsearch # chown elasticsearch:elasticsearch /etc/default/elasticsearch 7. удалить файлы старой версии Elasticsearch: .. code-block:: bash # rm -r /var/lib/elasticsearch/nodes/0/_state/ **Восстановление дашбордов** 1. после переиндексирования зайти в Kibana в раздел Index Patterns, нажать кнопку Create Index, ввести нужные значения для вашего индекса: .. figure:: ../_static/kibana_create.png .. figure:: ../_static/kibana_create2.png 2. перейти в раздел Saved Objects и импортировать дашборды, указав соответствия паттернов: .. figure:: ../_static/kibana_import.png .. figure:: ../_static/kibana_import2.png .. figure:: ../_static/kibana_conflicts.png После обновления ------------------ #. Если используется индексатор Elasticsearch, включить его в нужных конфигурационных файлах в папке ``/opt/synergy/jboss/standalone/configuration/arta/esb/`` #. После повторного старта ``arta-synergy-jboss`` в Административном приложении переиндексировать формы, файлы, работы и документы, для которых индексатором был указан Elasticsearch. Авторизованный доступ в Elasticsearch ------------------------------------- Для настройки авторизованного доступа в Elasticsearch нужно выполнить следующие шаги: 1. добавить в /etc/elasticsearch/elasticsearch.yml строки и перезапустить Elastic: .. code-block:: bash xpack.security.enabled: true xpack.security.transport.ssl.enabled: true 2. задать пароли для системных пользователей: .. code-block:: bash # cd /usr/share/elasticsearch/bin # ./elasticsearch-setup-passwords interactive .. code-block:: bash Initiating the setup of passwords for reserved users elastic,apm_system,kibana,logstash_system,beats_system,remote_monitoring_user. You will be prompted to enter passwords as the process progresses. Please confirm that you would like to continue [y/N]y Enter password for [elastic]: Reenter password for [elastic]: Enter password for [apm_system]: Reenter password for [apm_system]: Enter password for [kibana]: Reenter password for [kibana]: Enter password for [logstash_system]: Reenter password for [logstash_system]: Enter password for [beats_system]: Reenter password for [beats_system]: Enter password for [remote_monitoring_user]: Reenter password for [remote_monitoring_user]: Changed password for user [apm_system] Changed password for user [kibana] Changed password for user [logstash_system] Changed password for user [beats_system] Changed password for user [remote_monitoring_user] Changed password for user [elastic] 3. добавить логин и пароля пользователя kibana в ``/etc/kibana/kibana.yml`` и перезапустить Kibana: .. code-block:: yml elasticsearch.username: "kibana" elasticsearch.password: "rootroot" 4. зайти под пользователем elastic в Kibana в раздел Management -> Security -> Users, создать пользователя для Synergy с ролью Superuser: .. figure:: ../_static/users.png .. figure:: ../_static/new_user_create.png .. figure:: ../_static/new_user.png 5. в файл ``/opt/synergy/jboss/standalone/configuration/arta/elasticConfiguration.xml`` прописать пользователя и пароль и перезапустить JBoss: .. code-block:: xml synergy rootroot **Обратите внимание**, что, если у вас включена авторизация в Elasticsearch, создание кастомных индексов потребует указание пользователя с ролью Superuser в запросах на индексацию. В противном случае индексы создаваться не будут.