Я нашел способы загрузить конфигурацию в wildfly оптом (скажем, у меня есть данные json).
Что-то вроде этого.
./jboss-cli.sh -c subsystem=messagingactivemq/server=default:add(<data.json>)
Где <data.json>
{
"outcome" => "success",
"result" => {
"address-full-policy" => "BLOCK",
"dead-letter-address" => "jms.queue.DLQ",
"expiry-address" => "jms.queue.ExpiryQueue",
"last-value-queue" => false,
"max-delivery-attempts" => 10,
"max-size-bytes" => 12333,
"message-counter-history-day-limit" => 10,
"page-max-cache-size" => 5,
"page-size-bytes" => 12333,
"redelivery-delay" => 0,
"redistribution-delay" => 222L,
"send-to-dla-on-no-route" => false
}
}
Я хочу загрузить указанный выше json прямо в wildlfy через jboss-cli. Это вообще возможно? Я искал отзывы об этом в течение последних недель. Любые предложения приветствуются.
ИЗМЕНИТЬ Чтобы прояснить свои цели, я пытаюсь перенести вручную настроенные элементы на jBoss AS7.1 в Wildfly 10.1. В настоящее время сценарии миграции поддерживают только EAP-версии jBoss. Поэтому мне нужно вручную выбрать конфигурации из jBoss для миграции на wildfly. Да, есть конфигурации, которые устарели и / или удалены в wildfly, поэтому между jBoss AS7.1 и Wildfly10.1 мне нужно внести некоторые изменения в конфигурацию, прежде чем загружать ее в wildfly, поэтому я упомянул данные json.
Поскольку, когда я пытаюсь вывести ресурс в jBoss AS7.1 через jboss-cli.sh с помощью команды /subsystem=messaging/hornetq-server=default:read-resource, он будет выводить что-то вроде
{
"outcome" => "success",
"result" => {
"acceptor" => undefined,
"allow-failback" => true,
"async-connection-execution-enabled" => true,
"backup" => false,
"bridge" => undefined,
"broadcast-group" => undefined,
"cluster-connection" => undefined,
... some resource ....
Поэтому я внесу некоторые изменения в приведенные выше данные (поскольку wildfly использует activemq) и загружу их в wildfly как activemq. Но он просто хочет использовать данные json и загрузить их прямо в файл wildfly jboss-cli.sh. Я хочу автоматизировать это и просто выполнить сценарий (оболочку), чтобы выполнить миграцию.





Не совсем уверен, чего именно вы здесь пытаетесь достичь, но если вы хотите выполнять массовые операции из файла, вы можете использовать jboss-cli.sh --file=commands.cli, где commands.cli - это текстовый файл, содержащий команды jboss cli.
Таким образом, вы можете выполнять несколько операций одновременно, а также можете использовать функциональность batch, предоставляемую JBoss CLI, чтобы убедиться, что все изменения применены или отменены.
Пример файла с несколькими командами:
#Add xa datasource
xa-data-source add \
--name=my.app.ds \
--jndi-name=java:jboss/datasources/my.app.ds \
--driver-name=h2 \
--user-name=username \
--password=password \
--use-java-context=true \
--enabled=true \
--xa-datasource-properties = {"URL"=>"jdbc:h2:tcp://${env.DB_HOST:localhost}:${env.DB_PORT:1521}/~/my.app.ds;MVCC=TRUE"}
#Add JMS queue
jms-queue add --queue-address=foo.bar.myapp.queue --entries=java:/jms/queue/foo.bar.myapp.queue
#Add system property
/system-property=ENABLE_MY_COOL_MESSAGING_FEATURE:add(value = "true")
Если вы хотите определять модули или выполнять операции на основе файла JSON или любого другого формата, кроме формата команд CLI, я боюсь, что вам не повезло. Вы можете создать собственную java-библиотеку, которая обертывает JBoss CLI для ее выполнения, хотя я считаю, что JBoss / Wildfly предоставляет привязки CLI для Java и Python.
если вы хотите миграцию, вы можете попробовать официальный инструмент миграции. JBoss AS7 должен иметь совместимую конфигурацию с EAP 6.4, а Wildfly 10.1 должен быть совместим с EAP 7.2 (поскольку wildfly является восходящим для EAP). Таким образом, вы можете использовать шаблон миграции eap6.4-eap7.2
есть ли у этого nid фактический установщик / сервер для EAP 6.4? Я предполагаю, что это нужно. ограничение: у меня нет копий приложений jboss, не принадлежащих сообществу
да, но вы можете легко скачать дистрибутивы EAP - вам просто нужна учетная запись разработчика RedHat (бесплатно)
получил свою точку зрения, пожалуйста, прочтите сообщение редактирования выше. Сначала я сделал это, но это так утомительно, поскольку план состоит в том, чтобы автоматизировать миграцию. Как вы упомянули, я попробую привязки CLI. Благодарность