16.2. 恢复 Red Hat Quay

当 Red Hat Quay Operator 管理数据库时,这个过程用于恢复 Red Hat Quay。应在执行 Red Hat Quay registry 的备份后执行。如需更多信息,请参阅 备份 Red Hat Quay

先决条件

  • Red Hat Quay 使用 Red Hat Quay Operator 在 OpenShift Container Platform 上部署。
  • 由 Red Hat Quay Operator 管理的 Red Hat Quay 配置的备份已按照 备份 Red Hat Quay 部分中的说明创建。
  • 您的 Red Hat Quay 数据库已备份。
  • Red Hat Quay 使用的对象存储存储桶已被备份。
  • 组件 quaypostgresobjectstorage 设置为 managed: true
  • 如果组件 clair 设置为 managed: true,则组件 冲突 会设置为 managed: true (从 Red Hat Quay Operator v3.7 或更高版本开始)
  • 在 OpenShift Container Platform 集群的目标命名空间中没有运行 Red Hat Quay Operator 管理的 Red Hat Quay 部署
注意

如果您的部署包含部分非受管数据库或存储组件,并且您使用 Postgres 或 S3 兼容对象存储的外部服务来运行 Red Hat Quay 部署,您必须在恢复 Red Hat Quay 前引用服务供应商或厂商文档从备份中恢复数据

16.2.1. 从备份中恢复 Red Hat Quay 及其配置

注意

这些说明假定您已遵循了 备份 Red Hat Quay 指南中的流程,并使用相同名称创建备份文件。

  1. 从备份中恢复备份的 Red Hat Quay 配置和生成的密钥:

    $ oc create -f ./config-bundle.yaml
    
    $ oc create -f ./managed-secret-keys.yaml
    重要

    如果您在创建 ". /config-bundle.yaml": secrets "config-bundle-secret" 时收到错误 Error from server(AlreadyExists),则必须删除现有资源 $ oc delete Secret config-bundle-secret -n <quay-namespace>,并使用 $ oc create -f ./config-bundle.yaml 重新创建它。

  2. 恢复 QuayRegistry 自定义资源:

    $ oc create -f ./quay-registry.yaml
  3. 检查 Red Hat Quay 部署的状态,并等待它可用:

    $ oc wait quayregistry registry --for=condition=Available=true -n <quay-namespace>