3.1. Resource Planning and Configuration for Virtuozzo Hybrid Infrastructure

Before starting with the deployment of the Hystax Acura migration solution, we need to review the solution architecture, gather information, and verify that we have the necessary resources available on our Virtuozzo Hybrid Infrastructure Platform. The information gathered, will be used to deploy the Hystax Acura solution.

Hystax Acura Migration Solution Architectural Overview

../_images/intg-hystax-migration-architecture.png

We need to verify that the following resources exist on our Virtuozzo Hybrid Infrastructure Platform. If the resources do not exist, we will need to create them:

  • A customer domain, we will name it Ringo-Cloud for the purpose of this example. This domain will be where our customer’s projects will be created. We will refer to this domain as the target project domain. If you already have a domain configured that you wish to use to create your customer’s projects on, please use it. A domain is a container for projects and users that have roles assigned to them.

  • A project to host the migrated infrastructure, we will name the project migration-infra for the purpose of this example. This project will live inside the domain created on the previous step. We will refer to this project as the target project or target cloud. This project will be where replicated workloads will be spun, also the Acura Cloud Agent (an instance automatically deployed by the Hystax Acura Solution, which job is to forward replication data and write it to a storage volume on the target project) instance will be created here. A project is a container of virtual objects with set virtual resource constraints, such as virtual CPU, RAM, storage, and floating IP addresses, as well as assigned users. Each project is also known as a tenant. We will also be creating a network, a virtual network and a router for this project.

  • A user who will execute the migration, we will name this user “migration-user”. The user will have the necessary access rights defined by the role assigned, to perform the migration tasks. We will use this to fill the username field when configuring the Hystax Acura Migration Solution appliance. A role defines all of the actions that a user may execute, at the level of the entire infrastructure, a specific domain, or a single project. The user will be assigned the “project member” role, and will have single project scope.

  • A domain and project which will host the Hystax Acura Migration Solution (Hystax Acura Controller), we will refer to this project as the Hystax service project. The domain that has been used in previous steps can be used to create this service project. The Hystax Acura Migration instance will be deployed on this project. This way the instance will be isolated. This isolation is relevant, as when configuring the Hystax Acura Solution instance in the next section, we will need to define which network is used by the instance in order to communicate with the Acura Cloud Agent instance, which is spun on every customer project. We have two choices; we can define the network attached to the Hystax Acura instance, in order to do this, we need to create a RBAC rule using the OpenStack command line to share the network with every project we wish to communicate. The other option is to use an external physical network, which can be made shareable with any project via the Web UI interface. We will use a physical external network type to establish this communication in this example.

  1. Create a Domain, log in to your Virtuozzo Hybrid Infrastructure Platform Admin Panel, go to Projects and Users and click on Create Domain. This is only necessary if your customer does not have an organization domain already.

    ../_images/intg-hystax-vhi-create-domain.png
  2. Now create a new Project inside the domain that you have just created (or existing customer domain). Click on the name of the Domain, then on Projects and click on Create project, in this example we have created a project with unlimited resources.

    ../_images/intg-hystax-vhi-create-migration-project.png

    Remember you need to account for the following resources when creating the projects:

    • Service project: Resources to launch a virtual machine with 8 vCPUs, 16 GB RAM, 100 GB disk created from the Hystax Acura Golden image.

    • Target project: Resources to launch a VM with 2 vCPUs, 4 GB RAM, 20 GB disk for the Hystax Cloud Agent. Created in each target / failover Virtuozzo Hybrid Infrastructure project. Also, any replicated workloads will be deployed here.

  3. Create a project user and assign it to the migration project. Click on Domain Users then on Create user. Allow the user to upload images.

    ../_images/intg-hystax-vhi-edit-migration-user.png
  4. Create a Domain and a Project where the Hystax Acura Solution instance will be deployed. Remember this project will be the Acura Service Project. When the Hystax Acura Solution is deployed you will be able to manage multiple tenants from this single instance. This is the reason why having dedicated domain a project helps to organise resources. From your Virtuozzo Hybrid Infrastructure Appliance, go to “Projects and users” tab on the left-hand side navigation menu, then click on Create Domain.

    ../_images/intg-hystax-vhi-edit-domain.png

    Now click on the Acura Service Domain > Projects > Create Project. This project will be the service project. We will use it to deploy the Hystax Acura Solution Instance.

    ../_images/intg-hystax-vhi-create-project.png
  5. Now create a user. This user will be used to login later into the Acura Service Project in order to deploy the Hystax Acura Solution instance. Don’t forget to assign the user to the Acura Service Project.

    Go to Projects and Users, click Acura Service Domain > Create User. Assign the user to the Acura Service Project with the Project Member role.

    ../_images/intg-hystax-vhi-create-user.png
  6. At this point, our Acura Service and the Target Projects are ready but there is a missing configuration related to the network, the Hystax service network. Later in this guide, we will deploy the Hystax Acura Instance. This instance will communicate with the Acura Cloud Agent instance through an external physical network which will be made available on both projects. We will use the same physical network to simplify the configuration. The only requisite when choosing the network to use for the Hystax service network is that the network should be routable from the Acura Cloud Agent instance network to the network in which the Hystax Acura Instance is located.

  7. Login to your Virtuozzo Hybrid Infrastructure Admin Panel and click on network on the left-hand navigation panel. Identify the external network you wish to use (for this example we will use a network named public) and click on top of it, you’ll see a new panel on the left, find the network access section and click Edit.

    ../_images/intg-hystax-vhi-network-configuration.png
  8. Now enable the network on the Service Domain and the Ringo Cloud Domain as we only have one project on each, the access will be inherited by the project.

    ../_images/intg-hystax-vhi-edit-network-access.png
  9. Download the Hystax Acura image to your admin panel server and upload the image to the Acura Service Project.

    1. SSH in to your Virtuozzo Hybrid Infrastructure Admin panel compute node.

    2. Source your admin credentials:

      su - vstoradmin
      kolla-ansible post-deploy ; exit
      source /etc/kolla/admin-openrc.sh
      
    3. Download the Hystax Acura image:

      wget https://xx-hystax-imagexx-acura.tar.gz
      
    4. Extract the archive:

      tar -xvf xx-hystax-imagexx-acura.tar.gz
      
    5. Upload the Hystax Acura image to your project:

      openstack --insecure image create "Hystax Acura" \
      --disk-format raw \
      --container-format bare \
      --file Hystax_Acura_VA_MGR_Virtuozzo_3_7_1701-release_3_7_ \
      --project name_of_the_hystax_service_project