To migrate a Cluster from the Cloud Provider or On-premise system to the VKS system, follow the steps in this document.
Prerequisites
Perform download helper bash script and grand execute permission for this file ( )
(Optional) Deploy some services to check the correctness of the migration. Suppose, at the source Cluster, I have deployed an nginx service as follows:
Migrating private resources outside cluster (moving private resources outside the cluster) is the process of moving private resources outside the source Cluster to a place that the destination Cluster can use. For example, you may have private resources such as images, databases, etc. Now, before starting to migrate, you need to migrate these resources yourself. For example, if you need:
Migrate Databases: you can use Relational Database Service (RDS) and Object Storage Service (OBS) depending on your needs. After the migration is complete, remember to reconfigure the database for your applications on VKS Cluster.
Migrate Storage: you can use vServer's NFS Server .
Attention:
After you migrate resources outside the Cluster, you need to ensure the target Cluster can connect to these migrated resources.
Install Velero on both source and destination clusters (Install Velero tool)
After you have migrated private resources outside the cluster, you can use the migration tool to backup and restore the application on the source cluster and target cluster.
On both Clusters (source and target)
Create file credentials-velero with the following content:
For Clusters on Amazon Elastic Kubernetes Service (EKS)
At the source Cluster
Annotate the Persistent Volumes that need to be backed up. By default, Velero will not backup volume. You can run the command below to annotate backup of all volumes.
./velero_helper.sh mark_volume -c
Additionally, you can mark not to backup system resources with the following command:
Google Kubernetes Engine (GKE) does not allow daemonset deployment on all nodes. However, Velero only needs to deploy the daemonset on the node with the PV mount. The solution to this problem is that you can adjust the taint and toleration of the daemonset to only deploy it on the node with the PV mount.
You can change the default resource request cpu:500mand mem:512Min the installation step or make adjustments when deploying the yaml.
On the VKS system, you need to initialize a Cluster according to the instructions . Make sure that the destination cluster's configuration is the same as the source cluster's configuration.
Migrate Container Images: you can migrate images to VNGCloud Container Registry through instructions .
Create a vStorage Project, Container to receive the cluster's backup data according to instructions .
Create an S3 key corresponding to this vStorage Project according to the instructions .
For example, I have initialized a vStorage Project, Container with the following information: Region: HCM03, Container: mycontainer, Endpoint: .