Skip to content

VM Scale Booster

About HyWorks VM Scale Booster

HyWorks VM Scale Booster is used by HyWorks Desktop Agent to send status updates and events. The latest releases of HyWorks VM Scale Booster also support pushing HyWorks Session Host Server and Monitoring Service status/system load information. This helps to get faster updates and reduces polling overhead on controller.

Installation of HyWorks VM Scale Booster

Prerequisites

HyWorks VM Scale Booster can be installed either on controller server or any other Windows machine having below mentioned prerequisites installed:

  • .NET Framework 4.7.2

  • Erlang (otp_win64_22.0.exe)

  • RabbitMQ

.Net Framework 4.7.2 Installation

Dot net 4.7.2 comes pre-installed in latest Windows servers but for older version of Windows servers it should be downloaded from the Microsoft website and installed.

Erlang (OTP) Installation

  1. Download Erlang (OTP) v22.0 from its website (http://erlang.org/download/)

  2. Connect to server to be configured as VM Scale Booster with user credentials having local administrator privileges, double click on otp_win64_22.0.exe and proceed with the installation with all the default options.

  3. Once the installation is complete, click on Finish to close the installation wizard of Erlang.

  4. Reboot if required to complete Erlang installation process.

RabbitMQ (v3.7.17) Installation

  1. Download Rabbit MQ server module v3.7.17 (https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.7.17)

  2. Connect to server to be configured as VM Scale Booster with user credentials having local administrator privileges, double click on rabbitmq-server-3.7.17.exe

  3. Confirm RabbitMQ service is installed and running, once the installation is completed.

HyWorks VM Scale Booster Installation

Download latest HyWorks VM Scale Booster for Windows and follow below steps to install:

  1. Double click HyWorks VM Scale Booster installer [HyWorksVMScaleBooster_Net472.exe].

  2. In Accops HyWorks VM Scale Booster wizard, click Next to proceed.

  3. Select components to install and click Next

    1. Installing for first time: Select both the components - Accops HyWorks VM Scale Booster and Configure RabbitMQ

    2. Upgrade: select Accops HyWorks VM Scale Booster

  4. Accept license agreement by clicking I Agree to proceed

  5. This will start installation. Once completed, click Finish to close the installation wizard.

  6. Check services for Accops HyWorks VM Scale Booster Service, it should be installed and running.

HyWorks VM Scale Booster Configuration

After successful installation, following configurations should be done to enable communication between HyWorks VM Scale Booster and HyWorks Controller:

  1. Locate appsettings.json file in the directory in which HyWorks VM Scale Booster is installed - C:\Program Files (x86)\Accops\HyWorks VM Scale Booster\appsettings.json.

  2. Update following tags (refer screenshot)

    1. Servers

      1. IP1: IP address of Primary HyWorks Controller

      2. IP2: IP address of Secondary HyWorks Controller

    2. RabbitMQ

      1. Host: IP address of RabbitMQ server

      2. Port: If RabbitMQ is running on other than default 5672 port

    3. Syslog

      1. Host IP address of syslog server

  3. Save appsettings.json

  4. Restart the Accops HyWorks VM Scale Booster service

Enable VM Scale Booster on Controller

Configuration on HyWorks Controller

Once HyWorks VM Scale Booster is configured and services are running, follow the below steps to enable VM Scale Booster from HyWorks Controller:

  1. Open HyWorks Management Console > System > Advance config

  2. Search for tag DVM push and make the following changes:

    1. DVM Agent Queue Username: accopsmqadmin

    2. Desktop Poll Mode: 2

    3. DVM Agent Queue Hostname: IP of RabbitMQ (in case of HA, VIP of RabbitMQ)

  3. Save configurations and click Update to push the changes.

Configuration on SHD

  1. Install latest Session Host installer setup which has in-built DVM Tools-Lite. Session host server and monitoring services will use DVM Tools to push service and load status.

  2. On session host server, verify registry entry EnableShdMode flag should be set as true at HKLM\Software\Accops\DesktopAgent.

Limitations of VM Scale Booster

  1. VM Scale Booster feature works only for Managed SHD Pools.

  2. VM Scale Booster feature works only for Windows Managed SHDs. Linux SHD does not support SHD push Feature.

  3. HyWorks VM Scale Booster [v3.3.0.20] requires 3.3 GA and above Controller & SHD and vice versa.

Important (VM Scale Booster)

  1. While installation of this new Session Host, it installs a DVMTools-Lite automatically and sets EnableShdMode registry of Desktop Agent as True. So, if manual false set is done then SHD Push will not work.

  2. Manual installation arguments for SHD Mode enabled DVMTools with regular release:

    1. Argument: HyWorksDVMTools.exe /S /desktopagent=1 /hyprint=0 /usbcleaner=0 /usbredirection=0 /EnableShdMode=1
  3. DVM push agent refresh timeout: After this timeout only controller driven manual poll will be executed to each SessionHosts/MonitoringServers/DVMAgents.

Azure-specific configurations on Controller

Add following inbound firewall rule for ports:

  1. 5672: RabbitMQ Message Queue [Must]

  2. 15672: RabbitMQ management console [Optional]

Troubleshooting

  1. In case of Azure, the rule needs to be added on Network Interface via Azure portal for port number 5672 and 15672

  2. Check IP address of the Controllers in appsetting.json file

  3. Check Username and Hostname for RabbitMq in Advance config on Management console

Appendix

Change default port of RabbitMQ

  1. Controller: Update port into MMC > Advance Config with Key [DVM Agent Queue Port]

  2. HyWorks VM Scale Booster: update port [key: RabbitMQ-> Port] in config file at

    1. Filename: appsettings.json

    2. Path: C:\Program Files (x86)\Accops\HyWorks VM Scale Booster

  3. Update RabbitMQ port at config file:

    1. Path: C:\Users\Administrator\AppData\Roaming\RabbitMQ

    2. File name: rabbitmq.config.example

    3. Changes:

      1. Existing string: %% {tcp_listeners, [5672]},

      2. Updated string: {tcp_listeners, [5673]}

      3. Please note that comma is removed from the end

      4. Save the file and rename it to rabbitmq.config

    4. RabbitMQ Service reinstall steps:

      1. cd C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.17\sbin

      2. rabbitmqctl.bat stop

      3. rabbitmq-service.bat remove

      4. rabbitmq-service.bat install

      5. rabbitmq-service.bat start

VM Scale Booster HA Configuration

  1. After installation of Accops HyWorks VM Scale Booster, login to both the VMs with AD admin (both VMs should be joined to the same domain)

  2. Copy the PowerShell script FC_Configure.ps1 locally to both the VMs

  3. Update the configurations into the scripts [viz. Failover Cluster old/new names, hostnames & VIPs]

  4. Run PowerShell ISE with admin privilege

  5. Execute set-executionpolicy remotesigned to enable PowerShell script execution

  6. Open or load the script FC_Configure.ps1

  7. Update following tags (refer screenshot)

    1. : new_FC_Name: Name of Failover Cluster

    2. : new_FC_RabbitMq_Name: Name of Failover Cluster role for RabbitMq of

    3. : new_FC_DVMConsumer_Name: Name of Failover Cluster role for HyWorks VM Scale Booster

    4. : HostName_1: Hostname of first VM of HA configuration

    5. : HostName_1: Hostname of Second VM of HA configuration

    6. : VIP_FC: Provide an available IP address for Failover Cluster

    7. : VIP_FCRabbitMq: Provide an available IP address for RabbitMq role on Failover Cluster

    8. : VIP_FC_DVMConsumer: Provide an available IP address for HyWorks VM Scale Booster role on Failover Cluster

    Note

    Name for Failover cluster and roles should not be greater than 15 characters

  8. This will enable Failover Clustering Feature into the machine and will prompt for Failover clustering configuration

    1. On one VM, click No to clean-up if any previous Cluster Group or Role is added

    2. On another VM, click Yes to configure the failover cluster [it will first cleanup local failover cluster followed by configuring the new one]

  9. Now the failover cluster configured and is ready to use.

  10. Confirm the configured Roles are visible and are in running state.

  11. Update VIP used for FC_RabbitMq in appsettings.json file on both the machines and restart the Accops HyWorks VM Scale Booster service

  12. On Failover Cluster Manager, right click on FC_AccopsDvmConsumer role > Move > Select Node > (Select another node) Ok

  13. For FC_RabbitMq role do the same steps mentioned above

Now the system is ready to use, it will automatically switch the VIP in case of service failure. Hence DVMs can push to only one RabbitMQ server using the VIP.