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.12 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.12 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:
cat << EOF | oc apply -f - apiVersion: project.openshift.io/v1 kind: Project metadata: name: openshift-mtv EOF
$ cat << EOF | oc apply -f - apiVersion: project.openshift.io/v1 kind: Project metadata: name: openshift-mtv EOF
Copy to Clipboard Copied! Create an
OperatorGroup
CR calledmigration
: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/v1 kind: OperatorGroup metadata: name: migration namespace: openshift-mtv spec: targetNamespaces: - openshift-mtv EOF
Copy to Clipboard Copied! Create a
Subscription
CR for the Operator:cat << EOF | oc apply -f - apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: mtv-operator namespace: openshift-mtv spec: channel: release-v2.5 installPlanApproval: Automatic name: mtv-operator source: redhat-operators sourceNamespace: openshift-marketplace startingCSV: "mtv-operator.v2.5.7" EOF
$ cat << EOF | oc apply -f - apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: mtv-operator namespace: openshift-mtv spec: channel: release-v2.5 installPlanApproval: Automatic name: mtv-operator source: redhat-operators sourceNamespace: openshift-marketplace startingCSV: "mtv-operator.v2.5.7" EOF
Copy to Clipboard Copied! Create a
ForkliftController
CR:cat << EOF | oc apply -f - apiVersion: forklift.konveyor.io/v1beta1 kind: ForkliftController metadata: name: forklift-controller namespace: openshift-mtv spec: olm_managed: true 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
Copy to Clipboard Copied! Verify that the MTV pods are running:
oc get pods -n openshift-mtv
$ oc get pods -n openshift-mtv
Copy to Clipboard Copied! Example output
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
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
Copy to Clipboard Copied!
3.3. Configuring the MTV Operator
You can configure the following settings of the MTV Operator using either the CLI or the user interface.
- 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
isfilesystem
(CLI only)
These settings are configured by changing the default of the appropriate parameter in the spec
part of the forklift-controller
CR.
The procedure for configuring these settings using the user interface is presented in Configuring MTV settings. The procedure for configuring these settings using the CLI is presented following.
Procedure
-
Change a parameter’s value in the
spec
portion of theforklift-controller
CR by adding the label and value as follows:
spec: label: value
spec:
label: value
- 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.
Label | Description | Default value |
---|---|---|
| The maximum number of VMs per plan that can be migrated simultaneously. |
|
|
The duration in hours for retaining |
|
| The CPU limit allocated to the main controller container. |
|
| The memory limit allocated to the main controller container. |
|
| The interval in minutes at which a new snapshot is requested before initiating a warm migration. |
|
| The frequency in seconds 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 |
|
|
Fixed amount of additional space allocated in persistent block volumes. This setting is applicable for any |
|