Difficulty: beginner
Estimated Time: 15-20 minutes


AMQ provides fast, lightweight, and secure messaging for Internet-scale applications. AMQ components use industry-standard message protocols and support a wide range of programming languages and operating environments. AMQ gives you the strong foundation you need to build modern distributed applications.

What is AMQ Broker?

AMQ Broker is a pure-Java multiprotocol message broker. It’s built on an efficient, asynchronous core, with a fast native journal for message persistence and the option of shared-nothing state replication for high availability.

  • Persistence - A fast, native-IO journal or a JDBC-based store
  • High availability - Shared store or shared-nothing state replication
  • Advanced queueing - Last value queues, message groups, topic hierarchies, and large message support
  • Multiprotocol - AMQP 1.0, MQTT, STOMP, OpenWire, and HornetQ Core

AMQ Broker is based on the Apache ActiveMQ Artemis project.

What will you learn

In this tutorial you will learn how to setup a Red Hat AMQ message broker instance running on OpenShift.

During this simple steps, you created and started an AMQ Broker to send and receive messages on a Queue.

Red Hat AMQ has many features. We worked through a couple of those features, and you should feel comfortable with some of the basics after these steps.

To learn more about getting started, see the documentation at Red Hat Developer's Site

Don’t stop now! The next scenario will only take about 10 minutes to complete.

Red Hat AMQ Demo on OpenShift

Step 1 of 4

Creating an Initial Project

To get started, first we need to login to OpenShift.

To login to the OpenShift cluster use the following commmand in your Terminal:

oc login -u developer -p developer [[HOST_SUBDOMAIN]]-8443-[[KATACODA_HOST]].environments.katacoda.com --insecure-skip-tls-verify=true

You can click on the above command (and all others in this scenario) to automatically copy it into the terminal and execute it.

This will log you in using the credentials:

  • Username: developer
  • Password: developer

You should see the output:

Login successful.

You don't have any projects. You can try to create a new project, by running

    oc new-project <projectname>

For this scenario lets create a project called messaging by running the command:

oc new-project messaging

You should see output similar to:

Now using project "messaging" on server "https://[[HOST_SUBDOMAIN]]-8443-[[KATACODA_HOST]].environments.katacoda.com:8443".

You can add applications to this project with the 'new-app' command. For example, try:

    oc new-app centos/ruby-22-centos7~https://github.com/openshift/ruby-ex.git

to build a new example application in Ruby.

In the next, you will deploy a new instance of the AMQ broker.