Bug 2132957 - Migration fails at UnQuiesceDestApplications step in OCP 4.12
Summary: Migration fails at UnQuiesceDestApplications step in OCP 4.12
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Migration Toolkit for Containers
Classification: Red Hat
Component: Controller
Version: 1.7.4
Hardware: Unspecified
OS: Unspecified
unspecified
urgent
Target Milestone: ---
: 1.7.6
Assignee: Jason Montleon
QA Contact: mohamed
Anjana Suparna Sriram
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-10-07 10:30 UTC by ssingla
Modified: 2022-12-15 02:01 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-12-15 02:01:55 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
Migration Page Screenshot (64.40 KB, image/png)
2022-10-07 10:30 UTC, ssingla
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Github migtools mig-controller pull 1323 0 None Merged Bug 2132957: Update CronJob (un)quiesce for 4.12 (#1315) 2022-11-09 13:54:04 UTC

Description ssingla 2022-10-07 10:30:17 UTC
Created attachment 1916682 [details]
Migration Page Screenshot

Created attachment 1916682 [details]
Migration Page Screenshot

Description of problem: On performing migration of any application from source cluster to destination cluster, migration fails at UnQuiesceDestApplications during Restore.


Version-Release number of selected component (if applicable):
Source OCP 4.6
Target OCP 4.12

MTC 1.7.5 + OADP 1.0.5
openshift-migration-operator-metadata-container-v1.7.5-21

How reproducible:
Always

Steps to Reproduce:
1. Deploy basic django application on the source cluster
2. Login to MTC UI and create a migration plan to migrate the application.
3. Run Full Migration - Cutover.

Actual results:
Migration fails at restore step with below error:

"no matches for kind \"CronJob\" in version \"batch/v1beta1\""


openshift-migration migration-controller-6c4dbd474c-nhz8q mtc {"level":"info","ts":1665137137.5673687,"logger":"migration","msg":"Phase execution failed.","migMigration":"migration-0affa","phase":"UnQuiesceDestApplications","phaseDescription":"UnQuiescing (Scaling to N replicas) target cluster Deployments, DeploymentConfigs, StatefulSets, ReplicaSets, DaemonSets, CronJobs and Jobs.","error":"no matches for kind \"CronJob\" in version \"batch/v1beta1\""}
openshift-migration migration-controller-6c4dbd474c-nhz8q mtc {"level":"info","ts":1665137137.5674243,"logger":"migration","msg":"","migMigration":"migration-0affa","error":"no matches for kind \"CronJob\" in version \"batch/v1beta1\"","stacktrace":"\ngithub.com/konveyor/mig-controller/pkg/controller/migmigration.(*Task).unQuiesceCronJobs()\n\t/remote-source/mig-controller/app/pkg/controller/migmigration/quiesce.go:620\ngithub.com/konveyor/mig-controller/pkg/controller/migmigration.(*Task).unQuiesceApplications()\n\t/remote-source/mig-controller/app/pkg/controller/migmigration/quiesce.go:88\ngithub.com/konveyor/mig-controller/pkg/controller/migmigration.(*Task).unQuiesceDestApplications()\n\t/remote-source/mig-controller/app/pkg/controller/migmigration/quiesce.go:79\ngithub.com/konveyor/mig-controller/pkg/controller/migmigration.(*Task).Run()\n\t/remote-source/mig-controller/app/pkg/controller/migmigration/task.go:714\ngithub.com/konveyor/mig-controller/pkg/controller/migmigration.(*ReconcileMigMigration).migrate()\n\t/remote-source/mig-controller/app/pkg/controller/migmigration/migrate.go:70\ngithub.com/konveyor/mig-controller/pkg/controller/migmigration.(*ReconcileMigMigration).Reconcile()\n\t/remote-source/mig-controller/app/pkg/controller/migmigration/migmigration_controller.go:264\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler()\n\t/remote-source/mig-controller/app/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:263\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem()\n\t/remote-source/mig-controller/app/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:235\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func1.1()\n\t/remote-source/mig-controller/app/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:198\nk8s.io/apimachinery/pkg/util/wait.JitterUntilWithContext.func1()\n\t/remote-source/mig-controller/app/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:185\nk8s.io/apimachinery/pkg/util/wait.BackoffUntil.func1()\n\t/remote-source/mig-controller/app/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:155\nk8s.io/apimachinery/pkg/util/wait.BackoffUntil()\n\t/remote-source/mig-controller/app/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:156\nk8s.io/apimachinery/pkg/util/wait.JitterUntil()\n\t/remote-source/mig-controller/app/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:133\nk8s.io/apimachinery/pkg/util/wait.JitterUntilWithContext()\n\t/remote-source/mig-controller/app/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:185\nk8s.io/apimachinery/pkg/util/wait.UntilWithContext()\n\t/remote-source/mig-controller/app/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:99\nruntime.goexit()\n\t/usr/lib/golang/src/runtime/asm_amd64.s:1581"}


Expected results:
Migration should be successful


Additional info:
Not observed yet when target is other than 4.12

Comment 1 John Matthews 2022-10-07 11:27:33 UTC
Assume related to the k8s 1.25 rebase landing recently:
https://kubernetes.io/docs/reference/using-api/deprecation-guide/#v1-25
"The batch/v1beta1 API version of CronJob will no longer be served in v1.25."

Comment 2 Scott Seago 2022-10-07 17:38:23 UTC
Quiesce/unquiesce uses v1beta1 for CronJob (needed for 4.7 and earlier clusters), but this apiversion is no longer available in 4.12 and later. We probably need to check k8s version and use v1 for 1.21/4.8 and newer, and v1beta1 for 1.20/4.8 and older.

Comment 3 Jason Montleon 2022-10-10 13:20:55 UTC
https://github.com/migtools/mig-controller/pull/1315 should fix this.

Comment 14 errata-xmlrpc 2022-12-15 02:01:55 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Moderate: Migration Toolkit for Containers (MTC) 1.7.6 security and bug fix update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2022:9047


Note You need to log in before you can comment on or make changes to this bug.