If you’re looking for a path to upgrade your Red Hat OpenShift 3.7+ cluster to OpenShift 4.2, you’re in luck. The Migration Toolkit for Containers was built to migrate stateful and stateless applications from a source cluster to a destination cluster.
The initial intent of this tool is to address the OCP 3.7+ to OCP 4.2+ upgrade scenarios. That said, as requested by many Openshift users, it will also be possible to use this tool to migrate applications between OCP4 clusters.
This tool is based on two popular open source projects: Velero and Restic.
https://github.com/vmware-tanzu/velero
High-Level Architecture
Velero is installed on both your source and destination cluster, and object storage is used to store your backup information before getting restored on your target cluster. The OpenShift Container Platform Migration API orchestrates your migration from a central location. This API includes an easy to use user-interface and is usually installed on your target cluster by an operator.
Migrating Persistent Volumes
The migration of your PVs was a major focus for us in building this migration tool. Migration Toolkit for Containers 1.0 offers two different mechanisms to migrate your data: MOVE or COPY.
1. Move the Persistent Volume
Moving PVs requires shared storage between your source and destination cluster (ex: NFS). This is the fastest option and offers minimal downtime as the data is not copied, but only re-attached to the destination cluster.
2. Copy the Persistent Volume
This is a two-step approach which can support all storage backends (default option). Your data is first copied on your replication repository and then restored on your target cluster. Your migration can be first "stage" to copy most of the data without any impact to your source cluster. Then, your can "migrate" which will only copy files that have been changed since your last staging, reducing the downtime significantly before the final cut-over.
The Migration Web UI
Your migrations can be fully executed from a simple web UI. The configuration steps are simple:
- Add both your source and destination clusters by providing your endpoint and credentials.
- Add an object storage repository by also providing the end point and your credentials.
- Finally, create a migration plan listing all of the projects (namespaces) that you would like to migrate.
Things to Know
1. Cluster scoped resources
Cluster scoped resources are currently not migrated by this tool as they are not part of your namespace. Only resources inside your namespace are migrated. Our CPMA tool can help you find those resources and configure them to your new targeted cluster before executing your migration.
2. Moving traffic to your new cluster
Once your migration is completed, your traffic must be redirected to your new cluster. The most common way to do this would be to either update your DNS entry or change your load balancer configuration. Using a load balancer in a multi-cluster configuration is a great way to reduce your downtime. If you are currently only using one cluster, this might be a good opportunity to look at the advantages of running a fully redundant cluster architecture.
3. Cluster Admin Requirement
In Migration Toolkit for Containers 1.0, you will need cluster admin privileges to perform a migration. This is something we hope to improve in the near future to allow app owners to migrate their own applications without such privilege.
To get started, check out the documentation on the Cluster Application Migration Operator from the embedded OperatorHub in Red Hat OpenShift.
About the author
Browse by channel
Automation
The latest on IT automation that spans tech, teams, and environments
Artificial intelligence
Explore the platforms and partners building a faster path for AI
Open hybrid cloud
Explore how we build a more flexible future with hybrid cloud
Security
Explore how we reduce risks across environments and technologies
Edge computing
Updates on the solutions that simplify infrastructure at the edge
Infrastructure
Stay up to date on the world’s leading enterprise Linux platform
Applications
The latest on our solutions to the toughest application challenges
Original shows
Entertaining stories from the makers and leaders in enterprise tech
Products
- Red Hat Enterprise Linux
- Red Hat OpenShift
- Red Hat Ansible Automation Platform
- Cloud services
- See all products
Tools
- Training and certification
- My account
- Developer resources
- Customer support
- Red Hat value calculator
- Red Hat Ecosystem Catalog
- Find a partner
Try, buy, & sell
Communicate
About Red Hat
We’re the world’s leading provider of enterprise open source solutions—including Linux, cloud, container, and Kubernetes. We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.
Select a language
Red Hat legal and privacy links
- About Red Hat
- Jobs
- Events
- Locations
- Contact Red Hat
- Red Hat Blog
- Diversity, equity, and inclusion
- Cool Stuff Store
- Red Hat Summit