3. Preparing for Deployment

Virtuozzo Hybrid Workspace works only on top of Virtuozzo Hybrid Infrastructure. This guide assumes that you already have a Virtuozzo Hybrid Infrastructure compute cluster set up. For instructions on how to install Virtuozzo Hybrid Infrastructure, consult its Installation Guide.

Complete these steps to prepare to deploy the Virtuozzo Hybrid Workspace infrastructure in a Virtuozzo Hybrid Infrastructure cluster:

  1. As a Virtuozzo Hybrid Infrastructure administrator, upload a cloudbase QCOW2 image to Virtuozzo Hybrid Infrastructure. Share the image and give it a name. You will need the name later during the installation. For the purposes of this guide, the image name will be Windows-2k19-clb-RAS.

    Note

    You can prepare cloudbase QCOW2 images as described Preparing Windows Images.

  2. Create the user, project, and domain (if needed) for the MSP broker tenant. For example:

    • Domain: provider
    • Project: ras-broker
    • User: admin
    • Password: Providerpassw0rd

    For more details on how to create these entities, see the Virtuozzo Hybrid Infrastructure Administrator’s Guide

  3. Create the user, project, and domain for the client tenant. For example:

    • Domain: abc
    • Project: ras
    • User: admin
    • Password: Clientpassw0rd
  4. This guide implies you are running the deployment from the Virtuozzo Hybrid Infrastructure management node directly. You can, however, do it from a Linux machine that has python2-openstackclient and python2-heatclient packages installed and access to the Compute API endpoint of your Virtuozzo Hybrid Infrastructure cluster.

    Log in via SSH to the Virtuozzo Hybrid Infrastructure management node. It is usually on the same IP address with the Virtuozzo Hybrid Infrastructure admin panel.

  5. Download and unpack the required scripts:

    # wget https://docs.virtuozzo.com/files/vhw-deploy-scripts.tar
    # tar -x -f vhw-deploy-scripts.tar
    
  6. Install python2-heatclient:

    # yum install python2-heatclient
    
  7. Prepare OpenStack credentials files for both tenants. Replace <compute_API_endpoint> with the IP address of the Compute API endpoint of your Virtuozzo Hybrid Infrastructure cluster. For example:

    # cat provider-openrc.sh
    export OS_PROJECT_DOMAIN_NAME=provider
    export OS_USER_DOMAIN_NAME=provider
    export OS_PROJECT_NAME=ras-broker
    export OS_USERNAME=admin
    export OS_PASSWORD=Providerpassw0rd
    export OS_AUTH_URL=https://<compute_API_endpoint>:5000/v3
    export OS_IDENTITY_API_VERSION=3
    export OS_AUTH_TYPE=password
    export OS_INSECURE=true
    export NOVACLIENT_INSECURE=true
    export NEUTRONCLIENT_INSECURE=true
    export CINDERCLIENT_INSECURE=true
    export OS_PLACEMENT_API_VERSION=1.22
    
    # cat client-openrc.sh
    export OS_PROJECT_DOMAIN_NAME=abc
    export OS_USER_DOMAIN_NAME=abc
    export OS_PROJECT_NAME=ras-abc
    export OS_USERNAME=admin
    export OS_PASSWORD= Clientpassw0rd
    export OS_AUTH_URL=https://<compute_API_endpoint>:5000/v3
    export OS_IDENTITY_API_VERSION=3
    export OS_AUTH_TYPE=password
    export OS_INSECURE=true
    export NOVACLIENT_INSECURE=true
    export NEUTRONCLIENT_INSECURE=true
    export CINDERCLIENT_INSECURE=true
    export OS_PLACEMENT_API_VERSION=1.22
    
  8. Customize the master template Tenant-Deploy.yaml according to your needs:

    Table 3.1 Master template parameters
    Parameter Default value Description
    key_name n/a (provide one) The SSH key.
    gw_count 2 The number of RAS GW virtual machines to deploy.
    rds_count 1 The number RDS virtual machines to deploy
    flavor_pa large The VM flavor for PA servers.
    flavor_gw medium The VM flavor for GW servers.
    flavor_rds large The VM flavor for RDS servers.
    image Windows-2k19-clb-RAS The ID or name of the Microsoft Windows Server image with cloudbase.
    volume_size 64 The size of virtual machine boot volumes.
    boot_volume_type default The storage policy for virtual machine boot volumes.
    cidr 192.168.100.0/24 The subnet CIDR for the private network.
    router 192.168.100.1 The IP address of the GW router to create in the private network.
    public_dns 8.8.8.8 The IP address of your domain name server or a public DNS.
    public_network Public The name of the public network to connect the project (tenant) to.
    delay 900 The number of seconds to wait until the first AD server installs ADDS.
    domain_name vdiprovider.lab The domain name to use.
    domain_netbios_name vdiprovider The Netbios version of the domain name to use.
    password n/a (provide one) The AD administrator password.
    mode broker The installation mode to use.
    ad create Whether to create an AD domain or join one.

    In the parameters above:

    • mode can be broker or client. broker is intended for the MSP broker tenant and deploys the set number of RAS GW virtual machines and a load balancer. client is intended for the client tenant and deploys the set number of RDS virtual machines.
    • ad can be create or join. create deploys a tenant with two AD servers and creates a domain. join deploys a tenant with one PA virtual machine joined to the specified domain.

    The values of both mode and ad parameters are mutually exclusive. Changing them, you can use variants of the master template to provision both the MSP broker and client tenants. To join an AD domain, connect Virtuozzo Hybrid Infrastructure to it on the physical network level. That is, set up your edge router to route traffic from Virtuozzo Hybrid Infrastructure VMs to the AD subnet. In addition, point public_dns to your AD DNS.