Chapter 3. Installing and configuring the MTV Operator You can install the MTV Operator by using the Red Hat OpenShift web console or the command line interface (CLI). In Migration Toolkit for Virtualization (MTV) version 2.4 and later, the MTV Operator includes the MTV plugin for the Red Hat OpenShift web console. After you install the MTV Operator by using either the Red Hat OpenShift web console or the CLI, you can configure the Operator. 3.1. Installing the MTV Operator by using the Red Hat OpenShift web console You can install the MTV Operator by using the Red Hat OpenShift web console. Prerequisites Red Hat OpenShift 4.14 or later installed. OpenShift Virtualization Operator installed on an OpenShift migration target cluster. You must be logged in as a user with cluster-admin permissions. Procedure In the Red Hat OpenShift web console, click Operators OperatorHub . Use the Filter by keyword field to search for mtv-operator . Click Migration Toolkit for Virtualization Operator and then click Install . Click Create ForkliftController when the button becomes active. Click Create . Your ForkliftController appears in the list that is displayed. Click Workloads Pods to verify that the MTV pods are running. Click Operators Installed Operators to verify that Migration Toolkit for Virtualization Operator appears in the openshift-mtv project with the status Succeeded . When the plugin is ready you will be prompted to reload the page. The Migration menu item is automatically added to the navigation bar, displayed on the left of the Red Hat OpenShift web console. 3.2. Installing the MTV Operator from the command line interface You can install the MTV Operator from the command line interface (CLI). Prerequisites Red Hat OpenShift 4.14 or later installed. OpenShift Virtualization Operator installed on an OpenShift migration target cluster. You must be logged in as a user with cluster-admin permissions. Procedure Create the openshift-mtv project: USD cat << EOF | oc apply -f - apiVersion: project.openshift.io/v1 kind: Project metadata: name: openshift-mtv EOF Create an OperatorGroup CR called migration : USD cat << EOF | oc apply -f - apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: name: migration namespace: openshift-mtv spec: targetNamespaces: - openshift-mtv EOF Create a Subscription CR for the Operator: USD cat << EOF | oc apply -f - apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: mtv-operator namespace: openshift-mtv spec: channel: release-v2.6 installPlanApproval: Automatic name: mtv-operator source: redhat-operators sourceNamespace: openshift-marketplace startingCSV: "mtv-operator.v2.6.7" EOF Create a ForkliftController CR: USD cat << EOF | oc apply -f - apiVersion: forklift.konveyor.io/v1beta1 kind: ForkliftController metadata: name: forklift-controller namespace: openshift-mtv spec: olm_managed: true EOF Verify that the MTV pods are running: USD oc get pods -n openshift-mtv Example output 3.3. Configuring the MTV Operator You can configure all of the following settings of the MTV Operator by modifying the ForkliftController CR, or in the Settings section of the Overview page, unless otherwise indicated. Maximum number of virtual machines (VMs) per plan that can be migrated simultaneously. How long must gather reports are retained before being automatically deleted. CPU limit allocated to the main controller container. Memory limit allocated to the main controller container. Interval at which a new snapshot is requested before initiating a warm migration. Frequency with which the system checks the status of snapshot creation or removal during a warm migration. Percentage of space in persistent volumes allocated as file system overhead when the storageclass is filesystem ( ForkliftController CR only). Fixed amount of additional space allocated in persistent block volumes. This setting is applicable for any storageclass that is block-based ( ForkliftController CR only). Configuration map of operating systems to preferences for vSphere source providers ( ForkliftController CR only). Configuration map of operating systems to preferences for Red Hat Virtualization (RHV) source providers ( ForkliftController CR only). The procedure for configuring these settings using the user interface is presented in Configuring MTV settings . The procedure for configuring these settings by modifying the ForkliftController CR is presented following. Procedure Change a parameter's value in the spec portion of the ForkliftController CR by adding the label and value as follows: 1 Labels you can configure using the CLI are shown in the table that follows, along with a description of each label and its default value. Table 3.1. MTV Operator labels Label Description Default value controller_max_vm_inflight The maximum number of VMs per plan that can be migrated simultaneously. 20 must_gather_api_cleanup_max_age The duration in hours for retaining must gather reports before they are automatically deleted. -1 (disabled) controller_container_limits_cpu The CPU limit allocated to the main controller container. 500m controller_container_limits_memory The memory limit allocated to the main controller container. 800Mi controller_precopy_interval The interval in minutes at which a new snapshot is requested before initiating a warm migration. 60 controller_snapshot_status_check_rate_seconds The frequency in seconds with which the system checks the status of snapshot creation or removal during a warm migration. 10 controller_filesystem_overhead Percentage of space in persistent volumes allocated as file system overhead when the storageclass is filesystem . ForkliftController CR only. 10 controller_block_overhead Fixed amount of additional space allocated in persistent block volumes. This setting is applicable for any storageclass that is block-based. It can be used when data, such as encryption headers, is written to the persistent volumes in addition to the content of the virtual disk. ForkliftController CR only. 0 vsphere_osmap_configmap_name Configuration map for vSphere source providers. This configuration map maps the operating system of the incoming VM to a OpenShift Virtualization preference name. This configuration map needs to be in the namespace where the MTV Operator is deployed. To see the list of preferences in your OpenShift Virtualization environment, open the OpenShift web console and click Virtualization Preferences . You can add values to the configuration map when this label has the default value, forklift-vsphere-osmap. In order to override or delete values, specify a configuration map that is different from forklift-vsphere-osmap . ForkliftController CR only. forklift-vsphere-osmap ovirt_osmap_configmap_name Configuration map for RHV source providers. This configuration map maps the operating system of the incoming VM to a OpenShift Virtualization preference name. This configuration map needs to be in the namespace where the MTV Operator is deployed. To see the list of preferences in your OpenShift Virtualization environment, open the OpenShift web console and click Virtualization Preferences . You can add values to the configuration map when this label has the default value, forklift-ovirt-osmap. In order to override or delete values, specify a configuration map that is different from forklift-ovirt-osmap . ForkliftController CR only. forklift-ovirt-osmap

Commands:
cat << EOF | oc apply -f - apiVersion: project.openshift.io/v1 kind: Project metadata: name: openshift-mtv EOF
cat << EOF | oc apply -f - apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: name: migration namespace: openshift-mtv spec: targetNamespaces: - openshift-mtv EOF
cat << EOF | oc apply -f - apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: mtv-operator namespace: openshift-mtv spec: channel: release-v2.6 installPlanApproval: Automatic name: mtv-operator source: redhat-operators sourceNamespace: openshift-marketplace startingCSV: "mtv-operator.v2.6.7" EOF
cat << EOF | oc apply -f - apiVersion: forklift.konveyor.io/v1beta1 kind: ForkliftController metadata: name: forklift-controller namespace: openshift-mtv spec: olm_managed: true EOF
oc get pods -n openshift-mtv
NAME READY STATUS RESTARTS AGE forklift-api-bb45b8db4-cpzlg 1/1 Running 0 6m34s forklift-controller-7649db6845-zd25p 2/2 Running 0 6m38s forklift-must-gather-api-78fb4bcdf6-h2r4m 1/1 Running 0 6m28s forklift-operator-59c87cfbdc-pmkfc 1/1 Running 0 28m forklift-ui-plugin-5c5564f6d6-zpd85 1/1 Running 0 6m24s forklift-validation-7d84c74c6f-fj9xg 1/1 Running 0 6m30s forklift-volume-populator-controller-85d5cb64b6-mrlmc 1/1 Running 0 6m36s
spec: label: value 1