Установка Apache ServiceMix 7.0.1 на сервере Ubuntu 16.04 LTS

2082

December 13, 2017

1. Подготовка окружения

1.1. Установка JRE


# apt-get install default-jre

1.2. Установка переменной окружения $JAVA_HOME


# echo "JAVA_HOME=/usr/lib/jvm/default-java" >> /etc/environment

2. Установка ServiceMix

Будем ставить ServiceMix в директорию /opt.

Заходим на сайт проекта, переходим в раздел Downloads, переходим по ссылке в Default assembly, выбираем главное зеркало (официальный сайт), копируем ссылку на .zip архив.

Заходим по ssh под root на сервер, где будем производить установку, переходим в директорию /opt, выполняем команду wget, которая скачает архив


# wget http://apache-mirror.rbc.ru/pub/apache/servicemix/servicemix-7/7.0.1/apache-servicemix-7.0.1.zip

Распаковываем архив


# unzip apache-servicemix-7.0.1.zip

В результате у нас появилась директория с ServiceMix /opt/apache-servicemix-7.0.1.

3. Установка в качестве сервиса (демона)

Для запуска ServiceMix в режиме демона в него нужно установить feature с именем wrapper.

Это выполняется в интерактивной командной строке после запуска ServiceMix. Запускаем его


# cd /opt/apache-servicemix-7.0.1

# ./bin/servicemix


 ____                  _          __  __ _
/ ___|  ___ _ ____   _(_) ___ ___|  \/  (_)_  __
\___ \ / _ \ '__\ \ / / |/ __/ _ \ |\/| | \ \/ /
 ___) |  __/ |   \ V /| | (_|  __/ |  | | |>  <
|____/ \___|_|    \_/ |_|\___\___|_|  |_|_/_/\_\

  Apache ServiceMix (7.0.1)

Hit '<tab>' for a list of available commands
and '[cmd] --help' for help on a specific command.
Hit '<ctrl-d>' or 'system:shutdown' to shutdown ServiceMix.

karaf@root>

Теперь установим feature


karaf@root> feature:install service-wrapper

karaf@root> wrapper:install -s AUTO_START -n karaf -d karaf -D "Karaf Service"

Creating file: /opt/apache-servicemix-7.0.1/bin/karaf-wrapper
Creating file: /opt/apache-servicemix-7.0.1/bin/karaf-service
Creating file: /opt/apache-servicemix-7.0.1/bin/karaf.service
Creating file: /opt/apache-servicemix-7.0.1/etc/karaf-wrapper.conf
Creating missing directory: /opt/apache-servicemix-7.0.1/lib/wrapper
Creating file: /opt/apache-servicemix-7.0.1/lib/wrapper/libwrapper.so
Creating file: /opt/apache-servicemix-7.0.1/lib/wrapper/karaf-wrapper.jar
Creating file: /opt/apache-servicemix-7.0.1/lib/wrapper/karaf-wrapper-main.jar

Setup complete.  You may wish to tweak the JVM properties in the wrapper configuration file:
        /opt/apache-servicemix-7.0.1/etc/karaf-wrapper.conf
before installing and starting the service.


Ubuntu/Debian Linux system detected (SystemV):
  To install the service:
    $ ln -s /opt/apache-servicemix-7.0.1/bin/karaf-service /etc/init.d/

  To start the service when the machine is rebooted:
    $ update-rc.d karaf-service defaults

  To disable starting the service when the machine is rebooted:
    $ update-rc.d -f karaf-service remove

  To start the service:
    $ /etc/init.d/karaf-service start

  To stop the service:
    $ /etc/init.d/karaf-service stop

  To uninstall the service :
    $ rm /etc/init.d/karaf-service

For systemd compliant Linux:
  To install the service (and enable at system boot):
   $ systemctl enable /opt/apache-servicemix-7.0.1/bin/karaf.service

  To start the service:
   $ systemctl start karaf

  To stop the service:
   $ systemctl stop karaf

  To check the current service status:
   $ systemctl status karaf

  To see service activity journal:
   $ journalctl -u karaf

  To uninstall the service (and disable at system boot):
   $ systemctl disable karaf
karaf@root>

Выход из консоли karaf осуществляется либо комбинацией клавиш Ctrl+D, либо командой system:shutdown с подтверждением.

Установим сам сервис (демон)


# systemctl enable /opt/apache-servicemix-7.0.1/bin/karaf.service
Created symlink from /etc/systemd/system/karaf to /opt/apache-servicemix-7.0.1/bin/karaf.service.
Created symlink from /etc/systemd/system/default.target.wants/karaf.service to /opt/apache-servicemix-7.0.1/bin/karaf.service.
Created symlink from /etc/systemd/system/karaf.service to /opt/apache-servicemix-7.0.1/bin/karaf.service.

Сервис systemd установлен. Его можно запустить


# systemctl start karaf

4. Подключение к консоли Karaf

Чтобы подключиться к запущенному karaf в консоли, необходимо выполнить подключение ssh по порту 8101 пользователем karaf (пароль karaf по-умолчанию)


# ssh -p 8101 karaf@localhost

on December 13, 2017