Skip to content

Latest commit

 

History

History
58 lines (30 loc) · 1.58 KB

readme.adoc

File metadata and controls

58 lines (30 loc) · 1.58 KB

Camel Clustered Route Controller Example Spring Boot

This example shows how to work with a simple Apache Camel application using Spring Boot and a Master component.

How to run in local

  1. build the project:

    mvn clean package
  2. Then run the first camel node:

    mvn spring-boot:run
  3. in a separate shell, run the second camel node:

    mvn spring-boot:run

How to run on OpenShift cluster

  1. create an OpenShift project:

    oc new-project camel-master
  2. create dedicated service account:

    oc create sa camel-sa
  3. create project role to manage leases:

    oc create role camel-leases --verb=get,list,watch,create,update,patch,delete --resource=leases -n camel-master
  4. create project role to manage pods:

    oc create role camel-pods --verb=get,list,watch,create,update,patch,delete --resource=pods -n camel-master
  5. add roles to service account:

    oc policy add-role-to-user camel-leases -z camel-sa -n camel-master --role-namespace camel-master
    oc policy add-role-to-user camel-pods -z camel-sa -n camel-master --role-namespace camel-master
  6. run the build and deploy using profile openshift:

    mvn clean package -Popenshift

the generated deployment config will scale to 2 pods so that we can verify that only one will be the cluster leader, so it will be the only one consuming the message

Help and contributions

If you hit any problem using Camel or have some feedback, then please let us know.

We also love contributors, so get involved :-)

The Camel riders!