Skip to content

Commit d8ccac5

Browse files
authored
Merge pull request #31229 from apinnick/cnv-rhv-import-nfs
BZ1946177: RHV VM import fails for NFS target storage class (CNV 2.6.1)
2 parents c312fa3 + dbce16e commit d8ccac5

File tree

5 files changed

+32
-93
lines changed

5 files changed

+32
-93
lines changed

modules/virt-features-for-storage-matrix.adoc

Lines changed: 3 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -43,13 +43,8 @@ ifdef::virt-features-for-storage[]
4343
|Yes
4444
endif::[]
4545
ifdef::virt-importing-rhv-vm,virt-importing-vmware-vm[]
46-
ifeval::["{VirtVersion}" >= "2.5"]
4746
|Yes
4847
endif::[]
49-
ifeval::["{VirtVersion}" < "2.5"]
50-
|No
51-
endif::[]
52-
endif::[]
5348

5449
|{VirtProductName} hostpath provisioner
5550
ifdef::virt-features-for-storage[]
@@ -62,13 +57,8 @@ ifdef::virt-importing-rhv-vm[]
6257
|No
6358
endif::[]
6459
ifdef::virt-importing-vmware-vm[]
65-
ifeval::["{VirtVersion}" < "2.5"]
66-
|Yes ^[1]^
67-
endif::[]
68-
ifeval::["{VirtVersion}" >= "2.5"]
6960
|Yes
7061
endif::[]
71-
endif::[]
7262

7363
|Other multi-node writable storage
7464
ifdef::virt-features-for-storage[]
@@ -77,17 +67,9 @@ ifdef::virt-features-for-storage[]
7767
|Yes ^[2]^
7868
|Yes ^[2]^
7969
endif::[]
80-
ifdef::virt-importing-rhv-vm[]
81-
|Yes ^[1]^
82-
endif::[]
83-
ifdef::virt-importing-vmware-vm[]
84-
ifeval::["{VirtVersion}" < "2.5"]
85-
|Yes ^[2]^
86-
endif::[]
87-
ifeval::["{VirtVersion}" >= "2.5"]
70+
ifdef::virt-importing-rhv-vm,virt-importing-vmware-vm[]
8871
|Yes ^[1]^
8972
endif::[]
90-
endif::[]
9173

9274
|Other single-node writable storage
9375
ifdef::virt-features-for-storage[]
@@ -96,30 +78,15 @@ ifdef::virt-features-for-storage[]
9678
|Yes ^[2]^
9779
|Yes ^[2]^
9880
endif::[]
99-
ifdef::virt-importing-rhv-vm[]
100-
|Yes ^[2]^
101-
endif::[]
102-
ifdef::virt-importing-vmware-vm[]
103-
ifeval::["{VirtVersion}" < "2.5"]
104-
|Yes ^[3]^
105-
endif::[]
106-
ifeval::["{VirtVersion}" >= "2.5"]
81+
ifdef::virt-importing-rhv-vm,virt-importing-vmware-vm[]
10782
|Yes ^[2]^
10883
endif::[]
109-
endif::[]
11084
|===
11185
[.small]
112-
ifdef::virt-importing-vmware-vm[]
86+
ifdef::virt-importing-rhv-vm,virt-importing-vmware-vm[]
11387
--
114-
ifeval::["{VirtVersion}" < "2.5"]
115-
1. The `v2v-conversion-template` disk must use {VirtProductName} hostpath provisioner storage if the VM disks use NFS storage.
116-
2. PVCs must request a ReadWriteMany access mode.
117-
3. PVCs must request a ReadWriteOnce access mode.
118-
endif::[]
119-
ifeval::["{VirtVersion}" >= "2.5"]
12088
1. PVCs must request a ReadWriteMany access mode.
12189
2. PVCs must request a ReadWriteOnce access mode.
122-
endif::[]
12390
--
12491
endif::[]
12592
ifdef::virt-features-for-storage[]
@@ -128,12 +95,6 @@ ifdef::virt-features-for-storage[]
12895
2. Storage provider must support both Kubernetes and CSI snapshot APIs
12996
--
13097
endif::[]
131-
ifdef::virt-importing-rhv-vm[]
132-
--
133-
1. PVCs must request a ReadWriteMany access mode.
134-
2. PVCs must request a ReadWriteOnce access mode.
135-
--
136-
endif::[]
13798

13899
ifdef::virt-features-for-storage[]
139100
[NOTE]

modules/virt-importing-vm-cli.adoc

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,13 @@ EOF
8080
<4> Specify the RHV storage domain.
8181
<5> Specify `nfs` or `ocs-storagecluster-ceph-rbd`.
8282
<6> If you specified the `ocs-storagecluster-ceph-rbd` storage class, you must specify `Block` as the volume mode.
83+
// For CNV 2.6.1 only. Will be fixed in CNV 2.6.2.
84+
. If you specified NFS as the target storage class, you must run the following command because of a known issue (link:https://bugzilla.redhat.com/show_bug.cgi?id=1946177[*BZ#1946177*]):
85+
+
86+
[source,terminal]
87+
----
88+
$ oc patch cdi cdi-kubevirt-hyperconverged --type merge -p '{"spec": {"config": {"filesystemOverhead": {"global": "0"}}}}'
89+
----
8390

8491
. Create the `VirtualMachineImport` CR by running the following command:
8592
+

modules/virt-importing-vm-prerequisites.adoc

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,13 @@ Importing a virtual machine from Red Hat Virtualization (RHV) into {VirtProductN
1010
* Storage:
1111
** The {VirtProductName} local and shared persistent storage classes must support VM import.
1212
** If you are using Ceph RBD block-mode volumes, the storage must be large enough to accommodate the virtual disk. If the disk is too large for the available storage, the import process fails and the PV that is used to copy the virtual disk is not released.
13+
** If you are using NFS storage, you must run the following command because of a known issue (link:https://bugzilla.redhat.com/show_bug.cgi?id=1946177[*BZ#1946177*]):
14+
+
15+
[source,terminal]
16+
----
17+
$ oc patch cdi cdi-kubevirt-hyperconverged --type merge -p '{"spec": {"config": {"filesystemOverhead": {"global": "0"}}}}'
18+
----
19+
// remove for CNV 2.6.2
1320

1421
* Networks:
1522
** The RHV and {VirtProductName} networks must either have the same name or be mapped to each other.
@@ -30,4 +37,3 @@ Importing a virtual machine from Red Hat Virtualization (RHV) into {VirtProductN
3037
** The VM must not have been created with {product-title} and subsequently added to RHV.
3138
** The VM must not be configured for USB devices.
3239
** The watchdog model must not be `diag288`.
33-

modules/virt-importing-vm-wizard.adoc

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,13 +101,21 @@ endif::[]
101101
ifdef::virt-importing-rhv-vm[]
102102
* *General* -> *Name*: The VM name is limited to 63 characters.
103103
* *General* -> *Description*: Optional description of the VM.
104-
* *Storage*:
105104
** *Storage Class*: Select *NFS* or *ocs-storagecluster-ceph-rbd*.
106105
+
107106
If you select *ocs-storagecluster-ceph-rbd*, you must set the *Volume Mode* of the disk to *Block*.
107+
+
108+
If you select *NFS*, you must run the following command on the CLI because of a known issue (link:https://bugzilla.redhat.com/show_bug.cgi?id=1946177[*BZ#1946177*]):
109+
+
110+
[source,terminal]
111+
----
112+
$ oc patch cdi cdi-kubevirt-hyperconverged --type merge -p '{"spec": {"config": {"filesystemOverhead": {"global": "0"}}}}'
113+
----
114+
// remove this step for CNV 2.6.2
108115

109116
** *Advanced* -> *Volume Mode*: Select *Block*.
110-
* *Networking* -> *Network*: You can select a network from a list of available `NetworkAttachmentDefinition` objects.
117+
* *Advanced* -> *Volume Mode*: Select *Block*.
118+
* *Networking* -> *Network*: You can select a network from a list of available network attachment definition objects.
111119
endif::[]
112120
ifdef::virt-importing-vmware-vm[]
113121
* *General*:

modules/virt-troubleshooting-vm-import.adoc

Lines changed: 5 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -66,61 +66,29 @@ endif::[]
6666
== Error messages
6767

6868
ifdef::virt-importing-rhv-vm[]
69-
The following error messages might appear:
70-
71-
* The following error message is displayed in the VM Import Controller pod log if the target VM name exceeds 63 characters link:https://bugzilla.redhat.com/show_bug.cgi?id=1857165[(*BZ#1857165*)]:
72-
+
73-
----
74-
Message: Error while importing disk image
75-
Reason: ProcessingFailed
76-
----
69+
The following error message might appear:
7770

7871
* The following error message is displayed in the VM Import Controller pod log and the progress bar stops at 10% if the {VirtProductName} storage PV is not suitable:
7972
+
73+
[source,terminal]
8074
----
8175
Failed to bind volumes: provisioning failed for PVC
8276
----
8377
+
84-
You must use the NFS storage class. Cinder storage is not supported. link:https://bugzilla.redhat.com/show_bug.cgi?id=1857784[(*BZ#1857784*)]
78+
You must use a compatible storage class. The Cinder storage class is not supported.
8579

86-
ifeval::["{HCOVersion}" == "2.4.1"]
87-
* The following error message is displayed in the *Virtual Machines* tab of the *Virtualization* screen in the {VirtProductName} console if the `vm-import-controller` cannot find a matching template for the RHV VM operating system:
88-
+
89-
----
90-
The virtual machine could not be imported.
91-
VMTemplateMatchingFailed: Couldn't find matching template
92-
----
93-
+
94-
You can perform the following actions to fix this problem:
95-
96-
** Change the RHV VM operating system to an operating system that exists in the default `vm-import-controller` config map.
97-
** If you created a custom config map, check the config map to verify that the RHV VM operating system is mapped to a matching {VirtProductName} common template.
98-
** If there is no matching {VirtProductName} common template, create an appropriate VM template in the {VirtProductName} console and then create a custom config map to map the RHV VM operating system to the new template.
99-
100-
* The migration will hang at the *Starting Red Hat Virtualization (RHV) controller* message in the {VirtProductName} console if a non-admin user tries to import a VM. Only an admin user has permission to import a VM.
101-
endif::[]
10280
endif::[]
10381

10482
ifdef::virt-importing-vmware-vm[]
105-
The following error message might appear:
83+
The following error messages might appear:
10684

10785
* If the VMware VM is not shut down before import, the imported virtual machine displays the error message, `Readiness probe failed` in the {product-title} console and the V2V Conversion pod log displays the following error message:
10886
+
87+
[source,terminal]
10988
----
11089
INFO - have error: ('virt-v2v error: internal error: invalid argument: libvirt domain ‘v2v_migration_vm_1’ is running or paused. It must be shut down in order to perform virt-v2v conversion',)"
11190
----
11291

113-
ifeval::["{VirtVersion}" == "2.4"]
114-
* When you select the VMware provider, the following warning message is displayed:
115-
+
116-
----
117-
Warning alert:Could not load config map vmware-to-kubevirt-os in kube-public namespace
118-
Configmaps "vmware-to-kubevirt-os" not found
119-
----
120-
+
121-
This warning does not affect the VMware virtual machine import.
122-
endif::[]
123-
12492
* The following error message is displayed in the {product-title} console if a non-admin user tries to import a VM:
12593
+
12694
[source,terminal]
@@ -131,14 +99,3 @@ Restricted Access: configmaps "vmware-to-kubevirt-os" is forbidden: User cannot
13199
+
132100
Only an admin user can import a VM.
133101
endif::[]
134-
135-
ifdef::virt-importing-vmware-vm[]
136-
[id='known-issues_{context}']
137-
== Known issues
138-
139-
The following are known issues:
140-
141-
* You must have sufficient storage space for the imported disk.
142-
+
143-
If you try to import a virtual machine with a disk that is larger than the available storage space, the operation cannot complete. You will not be able to import another virtual machine or to clean up the storage because there are insufficient resources to support object deletion. To resolve this situation, you must add more object storage devices to the storage backend. link:https://bugzilla.redhat.com/show_bug.cgi?id=1721504[(*BZ#1721504*)]
144-
endif::[]

0 commit comments

Comments
 (0)