Как связаны контейнеры Karaf и Fabric?

Я установил jboss-fuse-karaf-6.3.0 и создал проект в студии разработчиков. Я не могу понять некоторые концепции вокруг этого.

  1. В Apache Fuse, как связаны контейнеры Karaf и Fabric? Я понял, что Karaf обеспечивает среду выполнения для запуска проекта. Fabric для управления развертыванием. Это верно?
  2. Я запустил контейнер Karaf, запустив FuseInstall/bin/start.bat . Как запустить тканевый контейнер?
  3. Является ли http://localhost:8181/hawtio консолью?
  4. Есть ли способ напрямую развернуть проект в контейнер Karaf, используя maven? или нам нужно развернуть проект на фабрику?

Спасибо!

2 ответа

  1. Предохранитель является продуктом ESB от Redhat. И да, вы правильно поняли, что Karaf предоставляет среду выполнения OSGI, тогда как Fabric предназначена для управления развертыванием нескольких контейнеров.

  2. Вы не запускаете контейнер из ткани. Вам нужен Тканевый агент или что-то подобное для этого. Не очень знаком с этим, но вы можете обратиться к документации Fuse здесь и здесь относительно этого.

  3. Hawtio - это консоль визуального управления для различных контейнеров.

  4. Вы определенно можете развернуть свой OSGI-пакет непосредственно в контейнер Karaf. Существуют различные команды, такие как:osgi:install "ИЛИ размещение пакета в FuseInstallDir/ deploy. Документация, которую он объясняет намного лучше.

  1. Ткань - это просто группа обычно управляемых контейнеров Karaf. Это позволяет вам управлять своими контейнерами, используя профили, а не только функции и пакеты.

  2. Как только вы запустили контейнер Караф, вы можете СОЗДАТЬ Ткань. Следуйте этим инструкциям: https://access.redhat.com/documentation/en-US/Red_Hat_JBoss_Fuse/6.2.1/html-single/Fabric_Guide/index.html. Любые другие контейнеры Karaf, которые вы запускаете, будут присоединены к существующей Fabric.

  3. После создания Fabric локальный хост:8181/hawtio будет иметь конкретное содержимое Fabric

  4. Если вы используете Fabric, то вы можете использовать плагин fabric8 Maven для непосредственного развертывания приложения в профиле. Подробности смотрите здесь: https://fabric8.io/gitbook/mavenPlugin.html. В основном вы можете просто запустить mvn fabric8:deploy и он обновит ткань для использования вашего нового кода. Будьте осторожны, так как это скажет Fabric, где найти ваш новый код в списке репозиториев Maven. Если вы не развернули свой код в центральном или общем хранилище, и он находится только на вашем локальном компьютере, а контейнер, который получает развертывание, находится на отдельной машине, он не будет работать.

Обязательно ознакомьтесь с тем, как работают профили, поскольку добавление кода в профиль не добавляет его в контейнер, если этот контейнер уже не настроен на включение обновляемого профиля. Руководство по ткани, которое я связал первым, объясняет это хорошо.

Другие вопросы по тегам