Setting Up KVM VMR Machine Images

This tutorial will walk you through the steps required to get a single Solace Virtual Message Router (VMR) machine image instance up and running in a Centos or Ubuntu environment and ready for messaging.

Assumptions

  • You have installed a Linux Kernel-based Virtual Machine (KVM).
  • It will use the Virtual Machine Manager GUI for simplicity.

System Requirements

For Evaluation and Enterprise VMR editions, the system resources that you provision for the VM automatically determines the number of client connections to the VMR that can be made. If you provision:

  • 30 GB of disk space, 4 GB of RAM, and two vCPUs—a maximum of 1,000 client connections are possible. This is the minimum required system resources.
  • 30 GB of disk space, 12 GB of RAM, and four vCPUs or greater—a maximum of 10,000 client connections are possible.

For Community VMR editions, a maximum of 100 client connections is permitted. Increasing the system requirements will not increase the number of available client connections.

Note:  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.

Step 1: Get a VMR

The first requirement is to download an edition of the VMR. For KVM on Linux platforms, the VMR is distributed as a compressed QCOW2.

  • Evaluation or Community edition of the VMR—Go to the Downloads page of dev.solace.com. Then in the VMR Community Edition or VMR Evaluation Edition areas, select VM Images > Compressed QCOW2 Package. After you read and agree to the license agreement, a compressed QCOW2 file called soltr-<version>-vmr-<type>.tar.gz will be downloaded.
  • Enterprise version of the VMR—If you have purchased an Enterprise version of the VMR, Solace will provide information for how to download an enterprise version of the VMR QCOW2 file package from a secure Solace server. Contact Solace Support at support@solace.com if you require assistance.

Once you have the compressed QCOW2 package, you must extract the QCOW2 image.
Use the tar command to extract the image. For example:
image_1

Then you are left with a file called soltr-VERSION-vmr-evaluation.qcow2. This is the file you will use with Virtual Machine Manager.

Step 2: Import the VMR into the VM Manager

Once KVM is installed, the easiest way to create virtual machines is through the Virtual Machine Manager application.

  1. Launch the Virtual Machine Manager application.

    Ubuntu:

    image_3

    Centos:

    $ virt-manager

  2. Then import the QCOW2 file into Virtual Machine Manager. This will create a new VM image for the VMR.
    • Select the creation icon on the left of the menu. This will open up the New VM wizard. In Step 1, enter an appropriate name for your Solace VMR VM, and select Import Existing Disk Image. Then click Forward.
      image_4
    • In Step 2, select the QCOW2 file, leave the OS Type and Version as “Generic”, then click Forward.
      image_5
    • In Step 3, configure the Memory and CPUs for the VM, then click Forward.

      The amount of memory and CPUs configured can affect the number of client connections to the VMR that can be made. A minimum of 4 GB of RAM and two CPUs is required for all VMR editions. For Evaluation and Enterprise editions, this enables a maximum of 1,000 client connections; if you increase the resources to at least 12 GB of RAM and four CPUs, a maximum of 10,000 client connections can be made.

      For Community editions, a maximum of 100 client connections are permitted even if you provision more resources than the minimum system requirements.

      image_6

    • In Step 4, confirm two things: first, select “Customize configuration before install”; second, select Advanced Options and make sure the network interface is correct. This example uses “MacVTap bridge” which is a recommended option. Then click Finish.
    • The virtual machine manager will now launch the VM properties dialog.

    • The Solace VMR QCOW2 image uses a storage format of QCOW2. To confirm that the Disk is configured with a storage format of “QCOW2”, select Disk 1, then under Advanced Options, set the Storage Format to “QCOW2.” Click Apply and then click Begin Installation.

    • The Solace VMR will start up and display console output similar to the following:

  3. Login to the VMR.

    The VMR messaging application software resides in a container that is wrapped within a Linux OS to form a VMR virtual machine image. In its default state, this VMR Linux host environment has remote login disabled and contains no passwords.

    To log in to the VMR for the first time you must log in as sysadmin, which is the default user account for the Linux host environment. You will be prompted to create a password for that user.

    When you are logged in as sysadmin, you can then create passwords for the default users through the console. You must assign these default users passwords to allow remote login.

Step 3: Configure the VMR’s Host Name

To set the hostname for the new VMR, enter the following:

[sysadmin@solace ~]$ solacectl hostname configure <hostname>

Where:

<name> is the hostname of the VMR. A hostname may contain up to 50 characters, composed of alphanumeric characters 0 to 9, a to z, A to Z, and hyphens (although hyphens cannot be used at the beginning or end of a hostname).

Step 4: 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 VMR’s IP address so that you can enable remote access

  • To access the Solace CLI, do the following:
    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 set the password for the admin user:

      solace> enable

      solace# configure

      solace(configure)# username admin

      solace(configure/username)# change-password <password>

    3. 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).

      show ip vrf management command

    4. To remotely access the Solace CLI for the VMR, you can now ssh to port 22 of the VMR’s IP address and login in as the admin user.
  • 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 Managing Management User Authentication/Authorization.

    Step 5: Review the VMR Configuration Defaults

    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.

    Additional VMR Machine Image Configuration

    You now have a VMR machine 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:

    1. Review the extra configuration tasks specific to VMR machine images presented on the Additional VMR Machine Image Configuration page.

      These additional configurations allow you to further customize your VMR machine image to better suit your particular use-case and to make it more suitable for a production deployment.

    2. Begin to configure and manage the VMR machine 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.