Setting Up VirtualBox VMR Machine Images
This tutorial will walk you through the steps required to get a single Solace Virtual Message Router (VMR) machine image instance running in your environment and ready for messaging.
- Step 1: Get a VMR
- Step 2: Import the VMR into the VM Manager
- Step 3: Configure the VMR’s Host Name
- Step 4: Access the Solace CLI
- Step 5: Review VMR Configuration Defaults
- Additional VMR Machine 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 need access to Oracle VM VirtualBox Manager.
The VMR 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 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 first requirement is to download the VMR. The VMR is distributed as an Open Virtualization Archive (.OVA) file, which allows it to be easily imported in to virtualization software.
- Evaluation or Community edition of the VMR: Go to the Downloads page of dev.solace.com. Then in the VirtualBox square select Download OVA and choose either Community Edition or Evaluation Edition.
After you read and agree to the license agreement, an OVA called
soltr-<version>-vmr-<type>.ovawill 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 OVA file package from a secure Solace server. Contact Solace Support at email@example.com if you require assistance.
To create a new VM image for the VMR, you must import the OVA file into the virtual machine manager using the default configuration.
Once it is imported, you must configure the VM image to use one of the interfaces on the host machine that has access to DHCP services.
Note: If you are using Windows 8 or 10, the error “VT-x is not available. (VERR_VMX_NO_VMX)” may occur when starting a VMR. This indicates that Hyper-V is interfering with Intel® VT-x hardware virtualization support, which is required to run VMRs in VirtualBox. In this case, disable Hyper-V virtualization on your Windows system, then reboot.
To import the VMR, do the following:
- In Oracle VM VirtualBox Manager, select File > Import Appliance.
- In the Import Virtual Appliance window that opens, select the OVA file downloaded in the previous step, and then select Next.
- The default appliance settings are sufficient to begin the import. Select Import.
- The Oracle VM VirtualBox Manager will import the Solace VMR OVA.
- In Oracle VM VirtualBox Manager, right-click the VMR image, and select Settings.
- In the virtual machine Settings window, select the System settings, and then select Hardware Clock in UTC.
When checked, VirtualBox will report the system time in UTC format instead of local (host) time.
- Select the Network settings, then for Adapter 1, select the appropriate adapter, attached mode, and name. For DHCP, select Bridged Adapter, and the correct network adapter that the VMR will use.
The above configuration shows a Bridged Adapter. The bridged adapter configuration provides the guest VM a network interface directly on the host computer’s network. It will appear as an independent device on that subnet and must have its network configuration set up using DHCP. This works well for static configurations where the VMR will be accessed from other machines on the network.
One potential drawback of using DHCP on laptops is that they are often re-IP’d as they join different networks. This means the VMR will constantly change addresses as well.
So, for these scenarios it is often simpler to use the Host-only Adapter. A host-only adapter will provide the VMR with a network interface that can only be reached from the host computer. When running in this mode, the VMR is not able to talk to any external networks and, therefore, will not be able to use a DHCP server on that network to retrieve IP configuration information. In this case, it is necessary to either enable DHCP services within the VM Manager or to provide the VMR with a static IP address. To configure either of these situations, refer to IP Addressing in Hypervisor Environments.
- To start the VM, click the virtual machine manager’s Start button.
The Solace VMR is successfully started when the login prompt appears.
- 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.
To set the hostname for the new VMR, do the following:
- Shut down the SolOS:
[sysadmin@solace ~]$ solacectl service stop
- Configure the hostname:
[sysadmin@solace ~]$ solacectl hostname configure <hostname>
- Restart the SolOS:
[sysadmin@solace ~]$ solacectl service start
- Verify that the hostname has been set to the new one:
[sysadmin@solace ~]$ hostname
Note: The shell may still reflect the old hostname until a reboot, or a re-login (log out and log back in).
<name>is the hostname to assign to the VMR. Host names can contain up to 64 characters, composed of alphanumeric characters 0 to 9, a to z, A to Z, and underscores '_' and hyphens '-'. Note that '_' and '-' cannot be used at the beginning or end of a hostname. Host names must be unique among all configured routers.
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.
- Shut down the SolOS:
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 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:
- Review the extra configuration tasks specific to VMR machine images presented on the Index of VMR Image Configuration Tasks 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.
- 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.