Setting Up AWS VMR Cloud Images
There are three ways you can setup and run a Solace VMR for use in Amazon Web Services (AWS).
- If you are interested in using the VMR Community Edition, the recommended method is to use the Solace VMR 1-Click Launch wizard provided at the Solace Virtual Message Router - Community Edition AWS Marketplace page by simply selecting the Continue button when you get there.
- Alternatively, if you want to use the VMR Community Edition, and you require more control over its configuration, you can use the Manual Launch procedure, which is also provided at the Solace Virtual Message Router - Community Edition AWS Marketplace page through selection of the Continue button.
- Finally, the steps presented on this page will show you how to do a fully manual set up of any edition of the Solace VMR. The steps also provide you with some background information regarding the various Solace VMR configuration settings.
This section will walk you through the steps required to get a single Solace VMR cloud image running and ready for messaging in AWS.
- Step 1: Start VMR Instance in AWS
- Step 2: Access the Solace CLI
- Step 3: Review VMR Configuration Defaults
- Additional VMR Cloud Image Configuration
To deploy VMRs in high-availability (HA) redundancy groups, you must set up three separate VMR instances as discussed in this section, and then configure them appropriately as a group. For more information on how to configure existing VMRs as an HA group, see Managing VMR Redundancy.
- You have access to AWS.
The VMR Cloud 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 client connection tiers above 1,000 and most guaranteed messaging deployments in production environments. For production use, you must provision an additional drive for the message spool, and it is recommended to also provide an additional drive for diagnostics information. For instructions on provisioning additional storage space, see Externalizing the Message Spool and Diagnostics, and for information on other defaults, see VMR Configuration Defaults.
For Evaluation and Enterprise VMR editions, the number of client connections to the VMR that can be supported depends on the system resources you provision for the VM. The table below lists the minimum system resources that are required to support the client connections offered by each tier.
Minimum System Resources Required For Connection Scaling Tiers
|Client Connections||RAM (GiB)||CPUs||Minimum Recommended Diagnostics Volume Size (GB)|
|up to 1,000||4||2||8.6|
|up to 10,000||12||minimum of 4||10.7|
|up to 100,000||28||minimum of 8||21.5|
- The minimum supported instance type for a Solace VMR 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 m4.large with a storage volume type IO1.
- 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.
To start a Solace VMR instance in AWS, perform the following steps:
- Obtain a Solace Amazon Machine Image (AMI) package for the type of VMR edition you will use.
For Evaluation and Community VMR editions, you must download the AMI through a Solace-provided link. For Enterprise edition VMRs, Solace makes the AMI for AWS directly available to your AWS account.
- For an Evaluation and Community VMR edition, do the following:
- Go to the Downloads page of dev.solace.com. Then in the amazon web services square select Install AMI and choose either Community Edition or Evaluation Edition as well as the region to deploy it in.
- Under AMI for Amazon Web Services, select an AWS region appropriate for you, then after you accept the license agreement, you will be emailed a link that will take you to the AWS Instance Launch Wizard.
- For an Enterprise VMR edition, do the following:
- Log in to your AWS account, and from the main AWS dashboard, select EC2, then click Launch Instance.
- In the Choose AMI screen, select My AMIs, then select Ownership, and enable Shared with Me.
- Find the Solace AMI (the image name has a format of
soltr-<version>-vmr-enterprise-cloud), then click Select.
In the Choose Instance Type screen, choose an appropriate Amazon Virtual Private Cloud (VPC) and subnet, and then click Next: Configure Instance Details.
For information about VPCs and subnets, refer to AWS documentation.
- In the Configure Instance Details screen, configure the VPC, then click Next: Add Storage.
- In the Add Storage screen, select a sufficiently-sized volume, and then click Next: Add Tags.
- In the screen, add tags as appropriate to keep your VMR instances organized, then click Next: Configure Security Group.
The following example uses Name, Owner, and Version but you can choose any tags that make sense for your application.
- In the Configure Security Group screen, create an appropriate security rule for each port that the VMR uses for a service to enable connectivity to your VMR, and then click Review and Launch.
For information on the default ports the VMR uses, refer to VMR Configuration Defaults. The example below includes rules for all service ports that the VMR may use. Alternatively you may only expose the services required for your application.
- AWS can provide a private and public IP address. These addresses must be considered in the security group configuration.
- If you will be using the VMR in an HA redundancy group with other VMRs, you must create security rules for ports 8300, 8301, 8302, and 8741.
- In the Review Screen, review your instance. Ignore the warnings, and click Launch.
- The instance will start. In the dialog box that starts, choose an authentication key pair for the VMR instance, which can be used for this first login to the VMR, and then click Launch Instance.
The EC2 dashboard will show your VMR instance under Instances. Here you can find the external and internal IP address of the instance. (For more information, refer to IP Addressing in Cloud Instances.)
To log into the Linux Host shell, enter the following command:
ssh -i <auth_key> sysadmin@<public_ip>
Note: For VMR releases prior to 8.5.0, ssh to port 2222 (
ssh -p 2222 -i <auth_key> sysadmin@<public_ip>)
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 VMR’s IP address so that you can enable remote access
To access the Solace CLI, do the following:
- 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.
>prompt, you are at the User EXEC level of the Solace CLI command structure.
- Within the Solace CLI, enter the following commands to create an admin user named
solace(configure)# create username admin password <password>
solace(configure/username)# global-access-level admin
- To determine the IP address assigned to the VMR, enter the following command:
solace> show ip vrf management
The displayed output lists the IP address assigned to the VMR (listed for
eth0:1), which can be used to remotely manage the VMR (that is, not from the VM console).
- To remotely access the Solace CLI for the VMR, you can now ssh to port 2222 of the VMR’s IP address and login in as the
ssh -p 2222 admin@<public_ip>
Note: For VMR releases prior to 8.5.0, ssh to port 22.
Tip: 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 Administering Management & Shell Users.
Unlike a Solace appliance, by default, a VMR starts with a basic configuration that has 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 VMR Configuration Defaults.
You now have a VMR cloud image with a basic configuration that is ready for messaging tasks. However, there are additional configuration tasks that you can perform. At this stage, you should do the following:
- Review the extra configuration tasks specific to VMR images presented on the Index of VMR Image Configuration Tasks page.
These additional configurations allow you to further customize your VMR cloud image to better suit your particular use-case and to make it more suitable for a production deployment.
- Begin to configure and manage the VMR image’s messaging operations through the Solace CLI in the same manner as you would other Solace messaging routers (say, a Solace messaging appliance or a Solace VMR Docker container). For information on how to perform these configuration and management tasks, see the topics in the Router Configuration category of the Solace customer documentation.