Questo contenuto non è disponibile nella lingua selezionata.

Chapter 7. Integrate a Camel Application with the AMQ Broker


7.1. Example How to Deploy a Spring Boot Camel A-MQ Quickstart

This tutorial shows how to deploy a quickstart using the A-MQ image.

7.1.1. Prerequisites

  1. Ensure that OpenShift is running correctly and the Fuse image streams are already installed in OpenShift. See Section 3.1, “Prerequisites”.
  2. Ensure that Maven Repositories are configured for fuse, see Section 3.2.1, “Configure Maven Repositories”

7.1.2. Building and Deploying the Quickstart

This example requires a JBoss A-MQ 6 image and deployment template. If you are using CDK 3.1.1+, JBoss A-MQ 6 images and templates should be already installed in the openshift namespace by default.

To build and deploy the A-MQ quickstart, perform the following steps:

  1. Log in to OpenShift as a developer, for example:

    oc login -u developer -p developer
    Copy to Clipboard Toggle word wrap
  2. Create a new project amq-quickstart

    oc new-project amq-quickstart
    Copy to Clipboard Toggle word wrap
  3. Determine the version of the A-MQ 6 images and templates installed:

    $ oc get template -n openshift
    Copy to Clipboard Toggle word wrap

    You should be able to find a template named amqXX-basic, where XX is the version of A-MQ installed in Openshift.

  4. Deploy the A-MQ 6 image in the amq-quickstart namespace (replace XX with the actual version of A-MQ found in previous step):

    $ oc process openshift//amqXX-basic -p APPLICATION_NAME=broker -p MQ_USERNAME=admin -p MQ_PASSWORD=admin -p MQ_QUEUES=test -n amq-quickstart | oc create -f -
    Copy to Clipboard Toggle word wrap
    Note

    This oc command could fail, if you use an older version of oc. This syntax works with oc versions 3.5.x (based on Kubernetes 1.5.x).

  5. Add role which is needed for discovery of mesh endpoints (through Kubernetes REST API agent).

    $ oc policy add-role-to-user view system:serviceaccount:amq-quickstart:default
    Copy to Clipboard Toggle word wrap
  6. Create the quickstart project using the Maven workflow:

    $ mvn org.apache.maven.plugins:maven-archetype-plugin:2.4:generate \
    -DarchetypeCatalog=https://maven.repository.redhat.com/ga/io/fabric8/archetypes/archetypes-catalog/2.2.0.fuse-710017-redhat-00003/archetypes-catalog-2.2.0.fuse-710017-redhat-00003-archetype-catalog.xml \
    -DarchetypeGroupId=org.jboss.fuse.fis.archetypes \
    -DarchetypeArtifactId=spring-boot-camel-amq-archetype \
    -DarchetypeVersion=2.2.0.fuse-710017-redhat-00003
    Copy to Clipboard Toggle word wrap
  7. The archetype plug-in switches to interactive mode to prompt you for the remaining fields:

    Define value for property 'groupId': : org.example.fis
    Define value for property 'artifactId': : fuse71-spring-boot-camel-amq
    Define value for property 'version':  1.0-SNAPSHOT: :
    Define value for property 'package':  org.example.fis: :
    [INFO] Using property: spring-boot-version = 1.5.13.RELEASE
    Confirm properties configuration:
    groupId: org.example.fis
    artifactId: fuse71-spring-boot-camel-amq
    version: 1.0-SNAPSHOT
    package: org.example.fis
    spring-boot-version: 1.5.13.RELEASE
     Y: :
    Copy to Clipboard Toggle word wrap

    When prompted, enter org.example.fis for the groupId value and fuse71-spring-boot-camel-amq for the artifactId value. Accept the defaults for the remaining fields.

  8. Navigate to the quickstart directory fuse71-spring-boot-camel-amq:

    $ cd fuse71-spring-boot-camel-amq
    Copy to Clipboard Toggle word wrap
  9. Customize the client credentials for logging on to the broker, by setting the ACTIVEMQ_BROKER_USERNAME and ACTIVEMQ_BROKER_PASSWORD environment variables. In the fuse71-spring-boot-camel-amq project, edit the src/main/fabric8/deployment.yml file, as follows:

    spec:
      template:
        spec:
          containers:
            -
              resources:
                requests:
                  cpu: "0.2"
    #              memory: 256Mi
                limits:
                  cpu: "1.0"
    #              memory: 256Mi
              env:
              - name: AMQP_HOST
                value: broker-amq-amqp
              - name: SPRING_APPLICATION_JSON
                value: '{"server":{"tomcat":{"max-threads":1}}}'
              - name: ACTIVEMQ_SERVICE_NAME
                value: broker-amq-tcp
              - name: ACTIVEMQ_BROKER_USERNAME
                value: admin
              - name: ACTIVEMQ_BROKER_PASSWORD
                value: admin
    Copy to Clipboard Toggle word wrap
  10. Run the mvn command to deploy the quickstart to OpenShift server.

    mvn fabric8:deploy -Popenshift
    Copy to Clipboard Toggle word wrap
  11. To verify that the quickstart is running successfully, navigate to the OpenShift console, select the project amq-quickstart, click Applications, select Pods, click fis-spring-boot-camel-am-1-xxxxx, and click Logs.
  12. The output shows the messages are sent successfully.

    10:17:59.825 [Camel (camel) thread #10 - timer://order] INFO  generate-order-route - Generating order order1379.xml
    10:17:59.829 [Camel (camel) thread #8 - JmsConsumer[incomingOrders]] INFO  jms-cbr-route - Sending order order1379.xml to the UK
    10:17:59.829 [Camel (camel) thread #8 - JmsConsumer[incomingOrders]] INFO  jms-cbr-route - Done processing order1379.xml
    10:18:02.825 [Camel (camel) thread #10 - timer://order] INFO  generate-order-route - Generating order order1380.xml
    10:18:02.829 [Camel (camel) thread #7 - JmsConsumer[incomingOrders]] INFO  jms-cbr-route - Sending order order1380.xml to another country
    10:18:02.829 [Camel (camel) thread #7 - JmsConsumer[incomingOrders]] INFO jms-cbr-route - Done processing order1380.xml
    Copy to Clipboard Toggle word wrap
  13. To view the routes on the web interface, click Open Java Console and check the messages in the A-MQ queue.
Torna in cima
Red Hat logoGithubredditYoutubeTwitter

Formazione

Prova, acquista e vendi

Community

Informazioni sulla documentazione di Red Hat

Aiutiamo gli utenti Red Hat a innovarsi e raggiungere i propri obiettivi con i nostri prodotti e servizi grazie a contenuti di cui possono fidarsi. Esplora i nostri ultimi aggiornamenti.

Rendiamo l’open source più inclusivo

Red Hat si impegna a sostituire il linguaggio problematico nel codice, nella documentazione e nelle proprietà web. Per maggiori dettagli, visita il Blog di Red Hat.

Informazioni su Red Hat

Forniamo soluzioni consolidate che rendono più semplice per le aziende lavorare su piattaforme e ambienti diversi, dal datacenter centrale all'edge della rete.

Theme

© 2025 Red Hat