2014-07-23 6 views
9

Qualcuno ha uno script di esempio per l'impostazione del sottosistema di messaggistica in Wildfly utilizzando la CLI?Come configurare il sottosistema di messaggistica tramite CLI in Wildfly

L'esempio perfetto sarebbe la CLI necessaria per prendere un server che esegue lo standalone.xml, e dopo aver eseguito lo script CLI ha il sottosistema di messaggistica come definito nel file standalone-full.xml.

Gli esempi che ho trovato fino ad ora partono tutti dal presupposto che il sottosistema di messaggistica sia già presente.

+0

C'è una ragione per non utilizzare solo standalone-full.xml? –

+1

Perché standalone-full.xml ha tutto ciò che contiene. Stiamo cercando di automatizzare il processo di distribuzione e vorremmo che continuasse a eseguire solo ciò di cui abbiamo bisogno. –

+2

Abbastanza giusto. Quindi potresti iniziare con '/extension=org.jboss.as.messaging:add (module = org.jboss.as.messaging)' poi '/ subsystem = messaging: add'. Questo ti darà il sottosistema di base con i valori predefiniti. –

risposta

14

Ecco lo script per aggiungere messaggi. Questo aggiunge il sottosistema di messaggistica e lo rende simile al sottosistema quando si esegue standalone-full.xml.

/extension=org.jboss.as.messaging:add() 
batch 
/subsystem=messaging:add 
/subsystem=messaging/hornetq-server=default:add 
/subsystem=messaging/hornetq-server=default/:write-attribute(name=journal-file-size, value=102400L) 
/subsystem=messaging/hornetq-server=default/address-setting=#:add(address-full-policy="PAGE", \ 
    dead-letter-address="jms.queue.DLQ", expiry-address="jms.queue.ExpiryQueue", expiry-delay=-1L, \ 
    last-value-queue=false, max-delivery-attempts=10, max-size-bytes=10485760L, message-counter-history-day-limit=10, \ 
    page-max-cache-size=5, page-size-bytes=2097152L, redelivery-delay=0L, redistribution-delay=-1L, send-to-dla-on-no-route=false) 

/subsystem=messaging/hornetq-server=default/in-vm-connector=in-vm:add(server-id=0) 
/subsystem=messaging/hornetq-server=default/in-vm-acceptor=in-vm:add(server-id=0) 

/subsystem=messaging/hornetq-server=default/http-connector=http-connector:add(socket-binding="http", param={http-upgrade-endpoint="http-acceptor"}) 
/subsystem=messaging/hornetq-server=default/http-connector=http-connector-throughput:add(socket-binding="http", param={http-upgrade-endpoint="http-acceptor-throughput", batch-delay=50}) 
/subsystem=messaging/hornetq-server=default/http-acceptor=http-acceptor:add(http-listener="default") 
/subsystem=messaging/hornetq-server=default/http-acceptor=http-acceptor-throughput:add(http-listener="default", param={batch-delay=50, direct-deliver=false}) 

/subsystem=messaging/hornetq-server=default/connection-factory=InVmConnectionFactory:add(connector={"in-vm"=>undefined}, entries = ["java:/ConnectionFactory"]) 
/subsystem=messaging/hornetq-server=default/connection-factory=RemoteConnectionFactory:add(connector={"http-connector"=>undefined}, entries = ["java:jboss/exported/jms/RemoteConnectionFactory"]) 

/subsystem=messaging/hornetq-server=default/pooled-connection-factory=hornetq-ra:add(connector={"in-vm"=>undefined}, entries=["java:/JmsXA","java:jboss/DefaultJMSConnectionFactory"]) 
/subsystem=messaging/hornetq-server=default/security-setting=#:add() 
/subsystem=messaging/hornetq-server=default/security-setting=#/role=guest:add(consume=true, create-durable-queue=false, create-non-durable-queue=true, delete-durable-queue=false, delete-non-durable-queue=true, manage=false, send=true) 

jms-queue add --queue-address=ExpiryQueue --durable=true --entries=["java:/jms/queue/ExpiryQueue"] 
jms-queue add --queue-address=DLQ --durable=true --entries=["java:/jms/queue/DLQ"] 
run-batch 
6

Ecco un comando CLI aggiornamento per le nuove wildfly 10 (ActiveMQ Artemis)

>> ADD Messaging Subsystem

/subsystem=messaging-activemq:add 
/subsystem=messaging-activemq/server=default:add 
/subsystem=messaging-activemq/server=default/security-setting=#:add 
/subsystem=messaging-activemq/server=default/address-setting=#:add(dead-letter-address="jms.queue.DLQ", expiry-address="jms.queue.ExpiryQueue", expiry-delay="-1L", max-delivery-attempts="10", max-size-bytes="10485760", page-size-bytes="2097152", message-counter-history-day-limit="10") 
/subsystem=messaging-activemq/server=default/http-connector=http-connector:add(socket-binding="http", endpoint="http-acceptor") 
/subsystem=messaging-activemq/server=default/http-connector=http-connector-throughput:add(socket-binding="http", endpoint="http-acceptor-throughput" ,params={batch-delay="50"}) 
/subsystem=messaging-activemq/server=default/in-vm-connector=in-vm:add(server-id="0") 
/subsystem=messaging-activemq/server=default/http-acceptor=http-acceptor:add(http-listener="default") 
/subsystem=messaging-activemq/server=default/http-acceptor=http-acceptor-throughput:add(http-listener="default", params={batch-delay="50", direct-deliver="false"}) 
/subsystem=messaging-activemq/server=default/in-vm-acceptor=in-vm:add(server-id="0") 
/subsystem=messaging-activemq/server=default/jms-queue=ExpiryQueue:add(entries=["java:/jms/queue/ExpiryQueue"]) 
/subsystem=messaging-activemq/server=default/jms-queue=DLQ:add(entries=["java:/jms/queue/DLQ"]) 

>> Refresh necessaria a questo punto

/subsystem=messaging-activemq/server=default/connection-factory=InVmConnectionFactory:add(connectors=["in-vm"], entries=["java:/ConnectionFactory"]) 
/subsystem=messaging-activemq/server=default/connection-factory=RemoteConnectionFactory:add(connectors=["http-connector"], entries = ["java:jboss/exported/jms/RemoteConnectionFactory"]) 
/subsystem=messaging-activemq/server=default/pooled-connection-factory=activemq-ra:add(transaction="xa", connectors=["in-vm"], entries=["java:/JmsXA java:jboss/DefaultJMSConnectionFactory"]) 
/subsystem=ee/service=default-bindings/:write-attribute(name="jms-connection-factory", value="java:jboss/DefaultJMSConnectionFactory") 
/subsystem=ejb3:write-attribute(name="default-resource-adapter-name", value="${ejb.resource-adapter-name:activemq-ra.rar}") 
/subsystem=ejb3:write-attribute(name="default-mdb-instance-pool", value="mdb-strict-max-pool") 

>> AGGIUNGI CODICE MESSAGGIO

/subsystem=messaging-activemq/server=default/jms-queue=MyQueue:add(entries=[java:/jms/queue/MyQueue]) 

Tutti i comandi possono essere gestito come un comando batch o separatamente in questo modo:

$SERVER_CLI_PATH --connect --user=$SERVER_USER --password=$SERVER_PASSW --command="{{line with command}}" 
Problemi correlati