Application Backup

Application Backup, Recovery and Migration

Kato currently provides application-level full backup functions, mainly used in two types of scenarios:

  • The overall version of the application is backed up, including all attributes such as code and operating environment, persistent data, components & application configuration. With the backup, the application can be restored to the backup version at any time.
  • Application migration, complete migration of applications to other teams or other clusters.

The Kato backup function is currently designed as a full-scale cold backup mechanism. In the traditional sense, our component backup is mainly the backup of persistent data, such as Mysql database data. In the state of the microservice architecture, if only the data of a certain component is backed up, it is difficult to synchronize the restoration to the historical state in the event of a failure when the application contains multiple components.

Our pursuit of application management must be a complete backup at the application level. In the case of containerization, it is easy to back up the code and operating environment, and we can easily perform hot backup of the operating environment of all components. But for persistent data, especially the persistent data of stateful components, we cannot guarantee that the data can be safely backed up under working conditions. Therefore, Kato currently requires stateful components to be stopped when backing up applications.

In subsequent versions, we will support the hot backup of stateful components in the form of operator, and then integrate it into the overall backup process of the application. It can realize the complete hot backup and regular backup of the application.

Backup Method

Kato currently provides two backup methods, local backup and cloud backup

Local backup: Applicable to the open source version. After backup, the application can be migrated across teams, and the application can be completely migrated to other teams

Cloud Backup: Supports docking with Alibaba Cloud OSS or Own Minio. After backup, applications can be migrated across clusters and can be restored in any place with Kato platform, enabling rapid application migration.

Application Backup

You can enter the application backup management page from the application operation list. The backup operation is divided into two types: local backup and cloud backup.

Local Backup

Back up a group of applications locally. The locally backed up applications cannot be migrated across data centers and tenants.

You only need to add a backup and select the backup mode. The backup is an asynchronous process and the time-consuming varies depending on the number of components. If there are running stateful components under the application, the backup operation will be rejected.

In version 5.0 and later, a new All Backup page is added. After entering, it will display all the backup records under the current team data center for clear viewing. At the same time, it also solves the problem that the previous version application cannot delete the backup records.

Cloud Backup

Kato Enterprise Edition supports, storing the backup data in the cloud.

Tip: When using Alibaba Cloud OSS, the upload size is limited to 5GB, so applications exceeding 5GB will report an error when uploading.

  • Open the cloud backup function in the management background and fill in the relevant information
  • You can choose cloud backup when backing up apps in the console

Cloud backup applications can be exported with one click, and can be directly imported, installed and used in other Kato clusters.

Backup and Restore

Recovery For a group of applications that have been successfully backed up, use recovery to restore the group of applications. Recovery is usually an unsolvable problem in the current application. The recovery operation is as follows:

Do not close the recovery page during the recovery operation, otherwise the recovery may fail. In order to ensure the safety of your data, we will generate a copy of your backup application during the recovery operation. You can choose to delete the original application in the last step of the recovery.

  • Export backup Exporting a backup will export a copy of the backup data. Currently, only cloud backup supports the export of backups.

  • Import backup After exporting the backup, you can import the exported backup on other Kato platforms (with access to the network). After importing, the corresponding backup record will be generated, and the application can be quickly restored to the local.

Notes after local recovery

After the application is restored, the gateway access policy needs to be manually configured by the user.

Import Backup

Import backup is applicable to backup files exported by cloud backup. Cloud backup is supported in the Enterprise version of Kato.

Before importing, make sure that there are no components in the group to be imported

  • Click Import Backup, select the file exported during cloud backup
  • After importing, it will prompt that the import is successful, and the corresponding backup record will be generated

At this point, the application can be restored to the current cluster, and operations such as restore and migration can be performed.

Application Migration

Since we do global full backup, we can achieve overall application migration, including cross-tenant migration and cross-cluster migration; cross-tenant and cross-cluster migration. Kato open source version is temporarily not supported, enterprise version provides support; open source version supports Cross-team migration under the same data center.

In the case of backup, you can select the migration operation to migrate the application.

Click the Migrate button, select the team and data center to be migrated, and click Migrate to trigger the backup migration operation

  • Enterprise Edition can choose different clusters during migration, and migrate across Kato clusters

After the application is migrated, it will jump to the corresponding data center and tenant to facilitate you to view the migrated application.