AWS

This tutorial walks you through the steps to set up a single Pubsub+ software event broker machine image instance in an EC2 instance in Amazon Web Services (AWS).

Before You Begin

It's assumed that you have: 

  • an AWS account
  • an EC2 key pair

Before creating and configuring your PubSub+ event broker instance, make sure you meet the system requirements and review the HA considerations.

System Requirements

The number of CPUs and system memory required by your event broker depends on the number of client connections you need to support. By default, fresh installations of the event broker allow up to 100 client connections.

To achieve desired stability and performance, the infrastructure hosting the PubSub+ Software Event Broker must provide a minimum set of system resources. System resources can be broadly categorized into requirements related to processors, memory, and storage. For details about the type of system resources required and their characteristics, see System Resource Requirements.

You can increase certain system limits using System Scaling Parameters. Increasing these system limits also increases the system resources that are required. For more information, see Using System Scaling Parameters.

Information about configuring storage can be found at Managing Storage for Virtual Machine Images.

If you plan to scale your deployment above the 1,000 client connections level you will need to provision space on a drive to ensure proper functioning of your event broker. The event broker machine image provides a 30 GB disk partition, which is suitable for proof-of-concept use for up to 1,000 clients, but is insufficient for over 1,000 client connections and most guaranteed messaging deployments in production environments. For production use, you must provision an additional drive for the message spool, and it's also recommended to provide an additional drive for diagnostics information. For instructions on provisioning additional storage space, see Managing Storage Volumes, and for information on other defaults, see Default Configuration for Software Event Brokers.

For more information on how to manage your system resources such as vCPUs, memory, and storage, refer to System Resource Calculator.

High Availability Considerations

To deploy event brokers in high-availability (HA) redundancy groups, you must set up three separate event broker instances and then configure them as an HA group. For more information on how to configure existing event brokers into an HA group, see HA Group Configuration.

A Solace Quick Start template is available that makes use of AWS Cloud Formation to create PubSub+ software event brokers in an HA group that is suitable for proof-of-concept testing. You can find the template on GitHub and at AWS Quick Starts.

Step 1: Get an AMI

You can get the AWS machine image (AMI) from one of the following places: 

AWS Marketplace

The AWS Marketplace page lists four PubSub+ event broker products in AWS. These steps apply only to the Standard or Enterprise options (not PubSub+ Cloud Platform or Professional Services).

  1. Navigate to the Solace page of the AWS Marketplace, and if you haven't already, log into your account.
  2. Click either Solace PubSub+ Software Event Broker Standard Edition or Solace PubSub+ Software Message Broker Enterprise Edition to select the event broker edition to launch.

    You can read about each edition's features and other information on the Product Overview page. Return to the main AWS Marketplace page and click another edition to read its product overview. Once you've decided on the correct edition, click Continue to Subscribe.

  3. On the Subscribe to this software page, review the Terms and Conditions and the product details. When you've finished, click Continue to Configuration.
  4. On the Configure this software page, review the following settings and make modifications if necessary:
    • Fulfillment option
    • Software version
    • Region

    You can also view the release notes and other information.

  5. When you've finished, click Continue to Launch.
  6. On the Launch this software page, review the Usage instructions. Then, from the Choose Action dropdown menu, select Launch through EC2.
  7. Click Launch. The Launch an instance page opens.

Now, proceed to Step 2: Configure the Instance.

Solace Downloads Page

  1. If you haven't already, log in to your AWS account.
  2. Go to the Solace PubSub+ Event Broker downloads page.
  3. Select the Amazon Web Services section, and then select the required edition of the software event broker.
  4. Fill in your details, and then click Get The Downloads.
  5. If you want to start a 90-day evaluation of PubSub+ Enterprise Edition, click PubSub+ Enterprise Evaluation Procedure to download the instructions to load the free product key after your software broker is running.
  6. For PubSub+ Standard instead, click one of the links under PubSub+ Standard to select your preferred event broker region. The Launch an instance page opens.

Now, proceed to Step 2: Configure the Instance.

Your AWS Account

If you've separately purchased the Enterprise PubSub+ event broker for AWS, Solace will make the AMI directly available to your AWS account.

  1. Log in to your AWS account.
  2. From the main AWS dashboard, click EC2.
  3. Click Launch Instance. The Launch an instance page opens.

Now, proceed to Step 2: Configure the Instance.

Step 2: Configure the Instance

At this point, you should be at the Launch an instance configuration page.

Performance in AWS will vary depending on instance type and storage configuration. Solace has characterized that deterministic performance is achieved using an instance type of m4.10xlarge with a storage volume type IO1 with 10,000 IOPS. AWS provides different instance types between m4.large and m4.10xlarge which may be suitable for your requirements.

For production use, the minimum supported instance type for a PubSub+ software event broker message routing node is m4.large with a storage value type IO1 with 3000 IOPS. For a monitoring node, the minimum supported instance type is t2.micro with a storage volume type gp2.

To configure your EC2 instance, do the following:

  1. Under Name and tags, choose a name for your PubSub+ event broker instance.

  2. Under Application and OS Images (Amazon Machine Image)

    If you used your AWS account to get your AMI, select My AMIs.Then, select Shared with Me and choose your preferred AMI.

    If you used AWS Marketplace or the Solace Downloads page to get your AMI, your AMI is automatically selected for you under the AMI from catalog tab.

  3. Under Instance type, choose an instance that meets your resource needs (for example, for an Enterprise Edition software broker, you might choose m4.large). For information about the resources provided by the various instance types, see Amazon EC2 Instance Types.

  4. Under Key pair (login), choose your authentication key pair for your PubSub+ event broker instance. This key pair is used to log in to the EC2 instance. If you don't have an existing key pair, create a new pair and download the new .pem file.

  5. Under Network settings, select an existing security group or create a new one that suits your use case.

  6. Under Configure storage, select the size of your storage volume.

    You'll need a root partition of the instance (with a minimum of 8 GiB) and a storage volume for the storage group. For details related to the size of this volume, see System Resource Calculator.

  7. View Advanced details for any settings that you would like to modify.
  8. Click Launch Instance. When your instance has launched, the EC2 dashboard shows your event broker instance under Instances. Here you can find the external and internal IP addresses of the instance. (For more information, refer to IP Addressing in Cloud Instances.)
  9. Connect to your EC2 instance. From the instance details page, right-click the instance and select Connect to see more information about how to connect to your instance. For example, you can SSH into your EC2 instance with your private key using the public IP address and port 22.

    Use the SSH client tab to connect to your instance using its public DNS.

    The default AMI user name for the PubSub+ software event broker is sysadmin.

Step 3: Access the Solace CLI

You can access the Solace CLI from the console in the Linux host environment. This is done through the Solace Control utility.

When you first access the Solace CLI, you should do the following:

  • set a password for the admin user, which has access to all CLI commands
  • determine the event broker’s IP address so that you can enable remote access
  1. To enter the Solace CLI from the console in the Linux host environment, enter the following command in the Linux host shell:
    [sysadmin@solace ~]$ solacectl cli

    A CLI banner and prompt appears.

    At the > prompt, you are at the User EXEC level of the Solace CLI command structure.

  2. Within the Solace CLI, enter the following commands to create an admin user named admin (you can choose another name if you wish):
    solace> enable
    solace# configure
    solace(configure)# create username admin password <password>
    solace(configure/username)# global-access-level admin
  3. To determine the IP address assigned to the event broker, enter the following command:
    solace> show ip vrf management

    The displayed output lists the IP addresses assigned to the event broker (listed for intf0:1), which can be used to remotely manage it (that is, not from the VM console).

    Example:

    solace> show ip vrf management
    VRF: management
    Number of interfaces: 1
    
    Interface    V Router   IP Address        Source
    -----------  ---------  ----------------  -------
    intf0:1      static     <IP Address>      system
    intf0:1      static     ::/0              system
    
    Number of active global routes: 5
    
    Destination       Gateway           Network Mask            Interface
    ----------------  ----------------  ----------------------  ----------
    169.254.169.254   *                 255.255.255.255         N/A
    172.17.0.0        *                 255.255.0.0             N/A
    default           192.168.128.1     0.0.0.0                 intf0
    192.168.128.0     *                 255.255.240.0           intf0
    fe80::            *                 ffff:ffff:ffff:ffff::   intf0
  4. To remotely access the Solace CLI for the event broker, you can now ssh to port 2222 of the event broker’s IP address and login as the admin user.
    ssh -p 2222 admin@<public_ip>

In addition to the admin CLI User, you can create additional CLI and file transfer users through the Solace CLI in the manner described in Management & Shell Users.

Step 4: Review Configuration Defaults

By default, the event broker starts with a basic configuration that has the most common services enabled and ready for use. This basic configuration and the default ports that are used can be modified as required. For details, see Default Configuration for Software Event Brokers.

If you created an instance of the PubSub+ Standard edition starting from the Solace downloads page and you want to start a 90-day evaluation of PubSub+ Enterprise, you can now install the product key you downloaded.

Next Steps

You now have a software event broker container with a basic configuration that is ready for messaging tasks.

There are additional configuration tasks that you can make use of in the following topics:

When you are comfortable with your event broker, you can test messaging using the Solace SDKPerf application. You can download SDKPerf from the Other Software section in the Downloads page.

For more information about working with your event brokers, see the following: