Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

3.9. 恢复应用程序数据

假设容器镜像中安装了 rsync,您可以使用 oc rsync 命令恢复应用程序数据。Red Hat rhel7 基础镜像包含 rsync.因此,所有基于 rhel7 的镜像也都包含它。请参阅 对 CLI 操作进行故障排除和调试 - rsync

警告

这是应用程序数据的一种 通用 恢复,没有考虑特定于应用程序的备份程序,例如数据库系统的特殊导出和导入程序。

可能存在其他恢复方式,具体取决于您使用的持久卷类型,如 Cinder、NFS 或 Gluster。

流程

恢复 Jenkins 部署的应用数据示例

  1. 验证备份:

    $ ls -la /tmp/jenkins-backup/
    total 8
    drwxrwxr-x.  3 user     user   20 Sep  6 11:14 .
    drwxrwxrwt. 17 root     root 4096 Sep  6 11:16 ..
    drwxrwsrwx. 12 user     user 4096 Sep  6 11:14 jenkins
  2. 使用 oc rsync 工具将数据复制到正在运行的 pod 中:

    $ oc rsync /tmp/jenkins-backup/jenkins jenkins-1-37nux:/var/lib
    注意

    根据应用程序,您可能需要重新启动应用程序。

  3. 另外,还可使用新数据重启应用程序:

    $ oc delete pod jenkins-1-37nux

    另外,您可以将部署缩减为 0,然后再次向上扩展:

    $ oc scale --replicas=0 dc/jenkins
    $ oc scale --replicas=1 dc/jenkins