
Cloud Message Queue © 2020 General Electric Company Contents Chapter 1: Overview 1 Overview of Cloud Message Queue 2 Chapter 2: Architecture 3 Cloud Message Queue Architecture 4 Chapter 3: Getting Started with Cloud Message Queue 5 Create Cloud Message Queue Service Instance 6 Update Cloud Message Queue Service Instance 7 Bind the Cloud Foundry Application to the Cloud Message Queue Service Instance 8 Unbind the Cloud Foundry Application from the Cloud Message Queue Service Instance 10 Delete Cloud Message Queue Service Instance 10 Chapter 4: Accessing Cloud Message Queue Web Console 11 About Accessing Cloud Message Queue Web Console 12 Access the Web Console for a Single-Instance Broker 12 Access the Web Console for an Active or Standby Broker 13 Chapter 5: Using Cloud Message Queue Service 14 About Using Cloud Message Queue Service 15 Connect to ActiveMQ Broker using Java Message Service (JMS) 15 Connect to ActiveMQ Broker with Golang 19 About Connecting the ActiveMQ Broker with Ruby 21 Chapter 6: Migrating to Cloud Message Queue 27 About Migrating to Cloud Message Queue 28 Migrate from Predix Message Queue to Cloud Message Queue 28 Create Cloud Message Queue Service Instance 28 Migrate from RabbitMQ to ActiveMQ 29 ii Cloud Message Queue Chapter 7: Security 30 About Cloud Message Queue Security 31 Chapter 8: Backup 32 About Backing up Messages 33 Chapter 9: Retrieving Broker and Destination Metrics 34 About Retrieving Metrics for the Message Queue Broker and Destination Applications 35 Retrieve Metrics for Broker and Destination Applications 35 Chapter 10: Reference 38 Performance Benchmarking 39 Chapter 11: Release Notes 41 Third Quarter of 2020 42 iii Copyright GE Digital © 2020 General Electric Company. GE, the GE Monogram, and Predix are either registered trademarks or trademarks of General Electric Company. All other trademarks are the property of their respective owners. This document may contain Confidential/Proprietary information of General Electric Company and/or its suppliers or vendors. Distribution or reproduction is prohibited without permission. THIS DOCUMENT AND ITS CONTENTS ARE PROVIDED "AS IS," WITH NO REPRESENTATION OR WARRANTIES OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF DESIGN, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE. ALL OTHER LIABILITY ARISING FROM RELIANCE UPON ANY INFORMATION CONTAINED HEREIN IS EXPRESSLY DISCLAIMED. Access to and use of the software described in this document is conditioned on acceptance of the End User License Agreement and compliance with its terms. iv © 2020 General Electric Company Chapter 1 Overview Topics: • Overview of Cloud Message Queue © 2020 General Electric Company 1 Overview of Cloud Message Queue Cloud Message Queue is a service that provides the ability to exchange messages between different applications, components, and devices in a highly durable and reliable manner. It is built upon Apache ActiveMQ and is backed by Amazon MQ, which is a managed message broker service for Apache ActiveMQ. Cloud Message Queue utilizes the features of Amazon MQ to ensure its high availability and message durability. Cloud Message Queue is designed to replace Predix Message Queue which is built upon RabbitMQ. The Predix Message Queue service will no longer be available in future and therefore, GE Digital recommends you migrate to the Cloud Message Queue service before the Predix Message Queue service is deprecated. Some of the salient features of Cloud Message Queue are as follows: • It supports a wide range of clients, including Java Message Service (JMS) 1.1 and .NET Message Service (NMS). • It is compatible with a range of programming languages, including Node.js, Go, Python, Ruby, and C++. • It supports various wire-level protocols, such as Advanced Message Queuing Protocol (AMQP), Simple (or Streaming) Text Oriented Messaging Protocol (STOMP), OpenWire, WebSocket, and MQ Telemetry Transport (MQTT). • It provides all the standard JMS features, including point-to-point messaging, publish/subscribe messaging, request/reply, persistent and non-persistent modes, JMS transactions, and distributed (XA) transactions. • It provides the flexibility of sending messages through both queues and topics, using a single-broker. In point-to-point messaging, the ActiveMQ broker balances the load by routing each message from the queue to one of the available consumers in a sequential manner. In pub/sub messaging, the broker delivers each message to every consumer that has subscribed to the topic. • In addition to basic queues and topics, it supports other complex patterns, such as composite and virtual destinations. Composite destinations are used for producers to send the same message to multiple destinations. Whereas, virtual destinations are used for publishers to broadcast messages through a topic to a pool of receivers subscribing through queues. Note: Currently, Cloud Message Queue supports the following versions of ActiveMQ: • 5.15.0 • 5.15.6 • 5.15.8 • 5.15.9 • 5.15.10 2 © 2020 General Electric Company Chapter 2 Architecture Topics: • Cloud Message Queue Architecture © 2020 General Electric Company 3 Cloud Message Queue Architecture The following architecture diagram provides a high-level information on how a user application interacts with an Amazon MQ (ActiveMQ) instance using the Cloud Message Queue service. The ActiveMQ message broker sends the messages from one application to another. The application that creates a message is called the producer and the application that receives and processes that message is called the consumer of the message. The message broker routes each message through one of the following destinations: • Queue: Used in a point-to-point messaging domain where the message awaits its delivery to a single consumer. • Topic: Used in a publish/subscribe or pub/sub messaging domain where the message is delivered to multiple consumers that have subscribed to the topic. 4 © 2020 General Electric Company Chapter 3 Getting Started with Cloud Message Queue Topics: • Create Cloud Message Queue Service Instance • Update Cloud Message Queue Service Instance • Bind the Cloud Foundry Application to the Cloud Message Queue Service Instance • Unbind the Cloud Foundry Application from the Cloud Message Queue Service Instance • Delete Cloud Message Queue Service Instance © 2020 General Electric Company 5 Create Cloud Message Queue Service Instance About This Task You can create the Cloud Message Queue service instance with default or customized Amazon MQ configurations. For more information on Amazon MQ configurations, and their elements and attributes, refer to Amazon MQ documentation. Procedure 1. In the Cloud Foundry (CF) Command Line Interface, run the following command to access the list of Cloud Message Queue plans that are available in the CF marketplace for subscription: cf m -s cloud-message-queue 2. Depending on whether you want to use the default or customized Amazon MQ configurations, perform one of the following tasks: • Create the instance with the default configurations. • Create the instance with customized configurations. Create Service Instance with Default Configurations Procedure 1. Access KBA 000036364, and then download the configuration file corresponding to the version of your ActiveMQ broker specified in the following table: ActiveMQ Version Configuration File 5.15.0 defaultConfigForEngineVersion5-15-0.zip 5.15.6 defaultConfigForEngineVersion5-15-6.zip 5.15.8 defaultConfigForEngineVersion5-15-8.zip 5.15.9 defaultConfigForEngineVersion5-15-9.zip 5.15.10 defaultConfigForEngineVersion5-15-10.zip Note: By default, the KahaDB persistence adapter is enabled in all the configurations. If you want to access the broker or destination metrics within your application, you must enable <statisticsBrokerPlugin/>. 2. Extract the content of the downloaded ZIP file. 3. In the Cloud Foundry (CF) Command Line Interface, run the following command to create the service instance: cf create-service cloud-message-queue <subscription_plan_name> <service_instance_name> Note: • The angle brackets (< >) in the command indicate placeholder text. You must replace the placeholder text with an appropriate value before running the command. • By default, Cloud Message Queue supports ActiveMQ V5.15.9 and the default configuration of ActiveMQ V5.15.9 will be used to create the instance. 6 © 2020 General Electric Company Create Service Instance with Customized Configurations About This Task You can create the Cloud Message Queue service instance with customized values of the following parameters: • ActiveMQ configuration XML • ActiveMQ engine version • Description string Important: The angle brackets (< >) in this topic indicate placeholder text. If such placeholder text is part of a command, replace the placeholder text with an appropriate value before running the command. Procedure 1. Create an XML file with the customized settings of your ActiveMQ broker. Note: For more information on customizing the settings of your ActiveMQ broker, refer to Amazon MQ documentation. 2. In the Base64 utility, run the following command to generate a Base64 encoded output of the content of the XML file: cat <config_file_name>.xml | base64 -w 0 3. Perform one of the following steps to create the service instance: • In the Cloud Foundry (CF) Command Line Interface, run the following command: cf create-service cloud-message-queue <subscription_plan_name> <service_instance_name> -c '{"EngineVersion": "<ActiveMQ_broker_engine_version>", "Description":"<description_string>",
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages46 Page
-
File Size-