reference deployment

IBM MQ on AWS

Messaging platform for cloud, mobile, IoT, and on-premises environments

This Partner Solution automatically deploys a highly available, production-ready IBM MQ server to the Amazon Web Services (AWS) Cloud into a configuration of your choice.

IBM MQ is messaging middleware that simplifies and accelerates the integration of diverse applications and business data across multiple platforms. It uses message queues to facilitate the exchange of information, and offers a single messaging solution for cloud, mobile, the Internet of Things (IoT), and on-premises environments. The IBM MQ service on AWS supports client messaging applications from within your virtual private cloud (VPC), from trusted addresses on the internet, and via a VPN from your on-premises environment.

This Partner Solution deploys IBM MQ into a VPC in your AWS account. You can build a new VPC for IBM MQ, or deploy the software into your existing VPC. The deployment and configuration tasks are automated by AWS CloudFormation templates that you can customize during launch.

This Partner Solution was developed by IBM in collaboration with AWS. IBM is an AWS Partner.


AWS Service Catalog administrators can add this architecture to their own catalog.  

  •  What you'll build
  • Use this Partner Solution to set up the following configurable environment on AWS:

    • A virtual private cloud (VPC) that spans two Availability Zones and includes two public and two private subnets, for security and high availability.*
    • In a public subnet, a bastion host to provide secure Secure Shell (SSH) access to the IBM MQ server. The bastion host is in an Auto Scaling group with its desired capacity set to one instance, which helps to ensure that one host is always available.*
    • In a private subnet, an IBM MQ server in an Auto Scaling group with its desired capacity set to one instance, which helps to ensure that one host is always available.
    • Amazon Elastic File System (Amazon EFS) automatically mounted on the IBM MQ server instance for distributed storage, to ensure high availability of the queue manager service and the message data. If the IBM MQ server fails in one Availability Zone, a new server is created in the second Availability Zone and connected to the existing data so no persistent messages are lost.
    • Elastic Load Balancing to automatically distribute connections to the active IBM MQ server.
    • An AWS Identity and Access Management (IAM) instance role with resource-level permissions for access to AWS services necessary for the deployment process.
    • Appropriate security groups for each instance or function to restrict access to only necessary protocols and ports. For example, access to HTTP server ports on Amazon Elastic Compute Cloud (Amazon EC2) servers is limited to Elastic Load Balancing.

    * The template that deploys the Partner Solution into an existing VPC skips the tasks marked by asterisks and prompts you for your existing VPC configuration.

  •  How to deploy
  • To deploy IBM MQ, follow the instructions in the deployment guide. The deployment process takes about 30 minutes and includes these steps:

    1. If you don't already have an AWS account, sign up at https://aws.amazon.com.
    2. Sign up for an IBM MQ program license, and save your license key file in an S3 bucket. (If you don't have a program license, the Partner Solution signs you up for a 90-day trial period license. For more information, refer to the Costs and licenses tab.)
    3. Launch the Partner Solution. You can choose from two options:
    4. Connect to IBM MQ through a web console to verify the deployment.
    5. Connect to the IBM MQ server instance through the bastion host instance in your VPC.

    During deployment, you can configure AWS infrastructure components, IBM MQ instance settings, and IBM MQ administration credentials.

    Amazon may share user-deployment information with the AWS Partner that collaborated with AWS on this solution.  

  •  Costs and licenses
  • This Partner Solution requires a license for IBM MQ. To use the Partner Solution in a production environment, sign up for an IBM MQ program license at IBM developerWorks (requires IBMid). You must place the license key in an Amazon S3 bucket and specify its location when you launch the Partner Solution.

    If you don’t have a license file, the Partner Solution deploys an IBM MQ trial license, which allows 90 days of free usage in a nonproduction environment. After 90 days, the queue manager expires. You can purchase support at an additional cost or use the forums.

    If the license file is in place at stack-creation time, the IBM MQ server uses the production license. To upgrade from a trial license to a production license after deployment, follow the instructions in the IBM Knowledge Center.

    For more information, refer to the IBM MQ software license agreement.

    You are responsible for the cost of the AWS services and any third-party licenses used while running this solution. There is no additional cost for using the solution.

    This solution includes configuration parameters that you can customize. Some of these settings, such as instance type, affect the cost of deployment. For cost estimates, refer to the pricing pages for each AWS service you use. Prices are subject to change.

    Tip: After you deploy a solution, create AWS Cost and Usage Reports to track associated costs. These reports deliver billing metrics to an Amazon Simple Storage Service (Amazon S3) bucket in your account. They provide cost estimates based on usage throughout each month and aggregate the data at the end of the month. For more information, refer to What are AWS Cost and Usage Reports?