Skip to content

Commit 8626575

Browse files
authored
Merge pull request #37016 from apinnick/mig813-intracluster-migration
MIG-831: Intracluster migration
2 parents 7f05a71 + b214509 commit 8626575

10 files changed

+59
-42
lines changed

migrating_from_ocp_3_to_4/advanced-migration-options-3-4.adoc

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,14 @@ include::modules/common-attributes.adoc[]
66

77
toc::[]
88

9-
This section describes advanced options for automating your migration and for modifying the migration plan.
9+
You can automate your migrations and modify the `MigPlan` and `MigrationController` custom resources in order to perform large-scale migrations and to improve performance.
1010

1111
include::modules/migration-terminology.adoc[leveloffset=+1]
12-
include::modules/migration-mtc-workflow.adoc[leveloffset=+1]
13-
include::modules/migration-about-mtc-custom-resources.adoc[leveloffset=+1]
14-
include::modules/migration-mtc-cr-manifests.adoc[leveloffset=+1]
1512

1613
[id="migrating-your-applications-api_{context}"]
17-
== Migrating applications from the command line
14+
== Migrating applications by using the CLI
1815

19-
This section describes how to migrate applications with the {mtc-short} API from the command line interface (CLI).
16+
You can migrate applications with the {mtc-short} API by using the command line interface (CLI) in order to automate the migration.
2017

2118
include::modules/migration-prerequisites.adoc[leveloffset=+2]
2219
include::modules/migration-creating-registry-route-for-dim.adoc[leveloffset=+2]
@@ -30,7 +27,7 @@ include::modules/migration-writing-ansible-playbook-hook.adoc[leveloffset=+2]
3027
[id="configuration-options_{context}"]
3128
== Configuration options
3229

33-
You can configure the following options for the `MigPlan` and `MigrationController` CRs.
30+
You can configure the following options for the `MigPlan` and `MigrationController` custom resources (CRs) to perform large-scale migrations and to improve performance.
3431

3532
include::modules/migration-changing-migration-plan-limits.adoc[leveloffset=+2]
3633
include::modules/migration-excluding-resources.adoc[leveloffset=+2]

migrating_from_ocp_3_to_4/migrating-applications-3-4.adoc

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,17 @@ include::modules/common-attributes.adoc[]
66

77
toc::[]
88

9-
You can migrate your applications by using the {mtc-full} ({mtc-short}) web console or from the command line.
9+
You can migrate your applications by using the {mtc-full} ({mtc-short}) web console or from the xref:../migrating_from_ocp_3_to_4/advanced-migration-options-3-4.adoc#migrating-your-applications-api_advanced-migration-options-3-4[command line].
10+
11+
You can use stage migration and cutover migration to migrate an application between clusters:
12+
13+
* Stage migration copies data from the source cluster to the target cluster without stopping the application. You can run a stage migration multiple times to reduce the duration of the cutover migration.
14+
* Cutover migration stops the transactions on the source cluster and moves the resources to the target cluster.
15+
16+
You can use state migration to migrate an application's state:
17+
18+
* State migration copies selected persistent volume claims (PVCs) and Kubernetes resources.
19+
* You can use state migration to migrate a namespace within the same cluster.
1020

1121
Most cluster-scoped resources are not yet handled by {mtc-short}. If your applications require cluster-scoped resources, you might have to create them manually on the target cluster.
1222

migrating_from_ocp_3_to_4/troubleshooting-3-4.adoc

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@ This section describes resources for troubleshooting the {mtc-full} ({mtc-short}
1010

1111
For known issues, see the xref:../migration_toolkit_for_containers/mtc-release-notes.adoc#mtc-release-notes[{mtc-short} release notes].
1212

13+
include::modules/migration-mtc-workflow.adoc[leveloffset=+1]
14+
include::modules/migration-about-mtc-custom-resources.adoc[leveloffset=+2]
15+
include::modules/migration-mtc-cr-manifests.adoc[leveloffset=+2]
16+
1317
[id="logs-and-debugging-tools_{context}"]
1418
== Logs and debugging tools
1519

@@ -23,14 +27,6 @@ include::modules/migration-debugging-velero-resources.adoc[leveloffset=+2]
2327
include::modules/migration-partial-failure-velero.adoc[leveloffset=+2]
2428
include::modules/migration-using-mtc-crs-for-troubleshooting.adoc[leveloffset=+2]
2529

26-
[id="additional-resources-for-debugging-tools_{context}"]
27-
[discrete]
28-
=== Additional resources for debugging tools
29-
30-
* xref:../migrating_from_ocp_3_to_4/about-mtc-3-4.adoc#migration-mtc-workflow_about-mtc-3-4[{mtc-short} workflow]
31-
* xref:../migrating_from_ocp_3_to_4/advanced-migration-options-3-4.adoc#migration-about-mtc-custom-resources_advanced-migration-options-3-4[About {mtc-short} custom resources]
32-
* xref:../migrating_from_ocp_3_to_4/advanced-migration-options-3-4.adoc#migration-mtc-cr-manifests_advanced-migration-options-3-4[{mtc-short} custom resource manifests]
33-
3430
[id="common-issues-and-concerns_{context}"]
3531
== Common issues and concerns
3632

migration_toolkit_for_containers/about-mtc.adoc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ toc::[]
77

88
The {mtc-full} ({mtc-short}) enables you to migrate stateful application workloads between {product-title} 4 clusters at the granularity of a namespace.
99

10+
You can migrate applications within the same cluster by using state migration.
11+
1012
{mtc-short} provides a web console and an API, based on Kubernetes custom resources, to help you control the migration and minimize application downtime.
1113

1214
The {mtc-short} console is installed on the target cluster by default. You can configure the {mtc-full} Operator to install the console on a link:https://access.redhat.com/articles/5064151[remote cluster].

migration_toolkit_for_containers/advanced-migration-options-mtc.adoc

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,31 +5,29 @@ include::modules/common-attributes.adoc[]
55

66
toc::[]
77

8-
This section describes advanced options for automating your migration and for modifying the migration plan.
8+
You can automate your migrations and modify the `MigPlan` and `MigrationController` custom resources in order to perform large-scale migrations and to improve performance.
99

1010
include::modules/migration-terminology.adoc[leveloffset=+1]
11-
include::modules/migration-mtc-workflow.adoc[leveloffset=+1]
12-
include::modules/migration-about-mtc-custom-resources.adoc[leveloffset=+1]
13-
include::modules/migration-mtc-cr-manifests.adoc[leveloffset=+1]
1411

1512
[id="migrating-your-applications-api_{context}"]
16-
== Migrating your applications with the {mtc-short} API
13+
== Migrating applications by using the CLI
1714

18-
This section describes how to migrate your applications with the {mtc-short} API from the command line interface (CLI).
15+
You can migrate applications with the {mtc-short} API by using the command line interface (CLI) in order to automate the migration.
1916

2017
include::modules/migration-prerequisites.adoc[leveloffset=+2]
2118
include::modules/migration-creating-registry-route-for-dim.adoc[leveloffset=+2]
2219
include::modules/migration-configuring-proxies.adoc[leveloffset=+2]
23-
include::modules/migration-mapping-destination-namespaces-in-the-migplan-cr.adoc[leveloffset=+2]
2420
include::modules/migration-migrating-applications-api.adoc[leveloffset=+2]
21+
include::modules/migration-mapping-destination-namespaces-in-the-migplan-cr.adoc[leveloffset=+2]
22+
include::modules/migration-state-migration-cli.adoc[leveloffset=+2]
2523

2624
include::modules/migration-hooks.adoc[leveloffset=+1]
2725
include::modules/migration-writing-ansible-playbook-hook.adoc[leveloffset=+2]
2826

2927
[id="configuration-options_{context}"]
3028
== Configuration options
3129

32-
You can configure the following options for the `MigPlan` and `MigrationController` CRs.
30+
You can configure the following options for the `MigPlan` and `MigrationController` custom resources (CRs) to perform large-scale migrations and to improve performance.
3331

3432
include::modules/migration-changing-migration-plan-limits.adoc[leveloffset=+2]
3533
include::modules/migration-excluding-resources.adoc[leveloffset=+2]

migration_toolkit_for_containers/migrating-applications-with-mtc.adoc

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,20 @@ include::modules/common-attributes.adoc[]
55

66
toc::[]
77

8-
You can migrate your applications by using the {mtc-full} ({mtc-short}) web console or from the command line.
8+
You can migrate your applications by using the {mtc-full} ({mtc-short}) web console or from the xref:../migration_toolkit_for_containers/advanced-migration-options-mtc.adoc#migration-migrating-applications-api_advanced-migration-options-mtc[command line].
99

1010
Most cluster-scoped resources are not yet handled by {mtc-short}. If your applications require cluster-scoped resources, you might have to create them manually on the target cluster.
1111

12+
You can use stage migration and cutover migration to migrate an application between clusters:
13+
14+
* Stage migration copies data from the source cluster to the target cluster without stopping the application. You can run a stage migration multiple times to reduce the duration of the cutover migration.
15+
* Cutover migration stops the transactions on the source cluster and moves the resources to the target cluster.
16+
17+
You can use state migration to migrate an application's state:
18+
19+
* State migration copies selected persistent volume claims (PVCs) and Kubernetes resources.
20+
* You can use state migration to migrate a namespace within the same cluster.
21+
1222
During migration, the {mtc-full} ({mtc-short}) preserves the following namespace annotations:
1323

1424
* `openshift.io/sa.scc.mcs`

migration_toolkit_for_containers/troubleshooting-mtc.adoc

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@ This section describes resources for troubleshooting the {mtc-full} ({mtc-short}
1010

1111
For known issues, see the xref:../migration_toolkit_for_containers/mtc-release-notes.adoc#mtc-release-notes[{mtc-short} release notes].
1212

13+
include::modules/migration-mtc-workflow.adoc[leveloffset=+1]
14+
include::modules/migration-about-mtc-custom-resources.adoc[leveloffset=+2]
15+
include::modules/migration-mtc-cr-manifests.adoc[leveloffset=+2]
16+
1317
[id="logs-and-debugging-tools_{context}"]
1418
== Logs and debugging tools
1519

@@ -23,14 +27,6 @@ include::modules/migration-debugging-velero-resources.adoc[leveloffset=+2]
2327
include::modules/migration-partial-failure-velero.adoc[leveloffset=+2]
2428
include::modules/migration-using-mtc-crs-for-troubleshooting.adoc[leveloffset=+2]
2529

26-
[id="additional-resources-for-debugging-tools_{context}"]
27-
[discrete]
28-
=== Additional resources for debugging tools
29-
30-
* xref:../migration_toolkit_for_containers/about-mtc.adoc#migration-mtc-workflow_about-mtc[{mtc-short} workflow]
31-
* xref:../migration_toolkit_for_containers/advanced-migration-options-mtc.adoc#migration-about-mtc-custom-resources_advanced-migration-options-mtc[About {mtc-short} custom resources]
32-
* xref:../migration_toolkit_for_containers/advanced-migration-options-mtc.adoc#migration-mtc-cr-manifests_advanced-migration-options-mtc[{mtc-short} custom resource manifests]
33-
3430
[id="common-issues-and-concerns_{context}"]
3531
== Common issues and concerns
3632

modules/migration-about-state-migration.adoc

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,13 @@
88

99
You can use {mtc-full} ({mtc-short}) to migrate an application's state.
1010

11-
State migration copies selected persistent volume claims (PVCs) and Kubernetes objects that store an application's state.
11+
State migration copies selected persistent volume claims (PVCs) and Kubernetes objects that constitute an application's state.
1212

1313
If you have a CI/CD pipeline, you can migrate stateless components by deploying them on the target cluster. Then you can migrate the application's state by using {mtc-short}.
1414

15+
You can migrate an application within the same cluster by using state migration.
16+
1517
[IMPORTANT]
1618
====
17-
Do not use state migration to migrate a namespace.
19+
Do not use state migration to migrate namespaces between clusters. Use stage or cutover migration instead.
1820
====

modules/migration-running-migration-plan-cam.adoc

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,17 +29,16 @@ The {mtc-short} web console must contain the following:
2929
. Log in to the {mtc-short} web console and click *Migration plans*.
3030
. Click the Options menu {kebab} next to a migration plan and select one of the following options under *Migration*:
3131

32-
* *Stage* copies data from the source cluster to the target cluster without stopping the application. You can run a stage migration multiple times to reduce the duration of the cutover migration.
33-
32+
* *Stage* copies data from the source cluster to the target cluster without stopping the application.
3433
* *Cutover* stops the transactions on the source cluster and moves the resources to the target cluster.
3534
+
3635
Optional: In the *Cutover migration* dialog, you can clear the *Halt transactions on the source cluster during migration* checkbox.
3736

38-
* *State* copies selected persistent volume claims (PVCs) and Kubernetes resources that store an application's state.
37+
* *State* copies selected persistent volume claims (PVCs) and Kubernetes resources that constitute an application's state. You can use state migration to migrate a namespace within the same cluster.
3938
+
4039
[IMPORTANT]
4140
====
42-
Do not use state migration to migrate a namespace.
41+
Do not use state migration to migrate a namespace between clusters. Use stage or cutover migration instead.
4342
====
4443

4544
** Select one or more PVCs in the *State migration* dialog and click *Migrate*.

modules/migration-state-migration-cli.adoc

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// Module included in the following assemblies:
22
//
3-
// * migrating_from_ocp_3_to_4/about-mtc-3-4.adoc
4-
// * migration_toolkit_for_containers/about-mtc.adoc
3+
// * migrating_from_ocp_3_to_4/advanced-migration-options-3-4.adoc
4+
// * migration_toolkit_for_containers/advanced-migration-options-mtc.adoc
55

66
[id="migration-state-migration-cli_{context}"]
77
= Migrating an application's state
@@ -10,6 +10,13 @@ You can perform repeatable, state-only migrations by selecting specific persiste
1010

1111
If you have a CI/CD pipeline, you can migrate stateless components by deploying them on the target cluster. Then you can migrate stateful components by using {mtc-short}.
1212

13+
You can use state migration to migrate namespaces within the same cluster.
14+
15+
[IMPORTANT]
16+
====
17+
Do not use state migration to migrate namespaces between clusters. Use stage or cutover migration instead.
18+
====
19+
1320
You can migrate PV data from the source cluster to PVCs that are already provisioned in the target cluster by mapping PVCs in the `MigPlan` CR. This ensures that the target PVCs of migrated applications are synchronized with the source PVCs.
1421

1522
You can perform a one-time migration of Kubernetes objects that store application state.
@@ -79,7 +86,7 @@ spec:
7986
[id="migrating-kubernetes-objects_{context}"]
8087
== Migrating Kubernetes objects
8188

82-
You can perform a one-time migration of Kubernetes objects that store an application's state.
89+
You can perform a one-time migration of Kubernetes objects that constitute an application's state.
8390

8491
[NOTE]
8592
====

0 commit comments

Comments
 (0)