×

您可以对 Red Hat Advanced Cluster Security for Kubernetes 执行数据备份,并在基础设施灾难或数据损坏的情况下使用这些备份进行数据恢复。

您可以通过与Amazon S3与 S3 API 兼容的服务Google Cloud Storage集成来配置中心数据库的自动备份。您可以使用 `roxctl` CLI 执行中心数据库的按需备份。您还可以使用 RHACS Operator 或 Helm Chart 安装方法备份您的中心部署。

根据您的需求,您可以创建两种类型的备份

  1. 中央数据库备份:包含 RHACS 配置、资源、事件和证书。在意外事件(例如数据库故障或数据损坏)中,您可以使用备份来恢复中央数据库到其之前的功能状态。这确保了关键数据的可用性和完整性,使您能够继续正常运行,而不会出现重大中断或关键信息丢失。

  2. 所有自定义部署配置的备份:如果您使用 Helm 图表或 RHACS 运算符安装了 RHACS,您可以备份特定于您安装的设置、参数和自定义项。当 RHACS 安装意外删除,或者您需要将其迁移到另一个集群或命名空间时,拥有部署配置的备份可以实现无缝恢复过程。此外,通过从备份中恢复自定义设置,您可以有效地恢复中央安装的独特需求和配置,确保系统的一致和精确部署。

由于备份文件包含密钥和证书,您必须安全地存储备份文件。

使用 roxctl CLI 备份中央数据库

备份中央数据库对于确保数据完整性和系统可靠性至关重要。定期备份包含必要配置、资源、事件和证书的数据库,可以防止数据库故障、损坏和意外数据丢失。

您可以使用roxctl CLI 和backup 命令进行备份。您需要 API 令牌或管理员密码才能运行此命令。

Red Hat 通过与Amazon S3Google Cloud Storage 集成来支持中央数据库的备份。

备份到与 S3 API 兼容的存储并不保证有效。Red Hat 不会测试和支持每个与 S3 API 兼容的提供商来备份 RHACS。

使用 API 令牌进行按需备份

您可以使用 API 令牌备份 RHACS 的整个数据库。

先决条件
  • 您拥有具有Admin 角色的 API 令牌。

  • 您已安装roxctl CLI。

步骤
  1. 通过运行以下命令设置ROX_API_TOKENROX_ENDPOINT 环境变量

    $ export ROX_API_TOKEN=<api_token>
    $ export ROX_ENDPOINT=<address>:<port_number>
  2. 通过运行以下命令启动中央备份

    $ roxctl central backup (1)
    1 您可以使用--output 选项指定备份文件位置。

    默认情况下,roxctl CLI 将备份文件保存在您运行命令的目录中。

其他资源

使用管理员密码进行按需备份

您可以使用管理员密码备份 RHACS 的整个数据库。

先决条件
  • 您拥有管理员密码。

  • 您已安装roxctl CLI。

步骤
  1. 通过运行以下命令设置ROX_ENDPOINT 环境变量

    $ export ROX_ENDPOINT=<address>:<port_number>
  2. 通过运行以下命令启动中央备份

    $ roxctl -p <admin_password> central backup (1)
    1 对于<admin_password>,请指定管理员密码。

    默认情况下,roxctl CLI 将备份文件保存在您运行命令的目录中。您可以使用--output 选项指定备份文件位置。

备份中央部署

您可以备份中央实例的部署。如果您想使用相同的配置值将中央迁移到另一个命名空间或集群,这将非常有用。

Red Hat 不支持使用roxctl CLI 备份部署配置。您可以使用ockubectl CLI 来备份与中央实例相关的清单并恢复配置。

使用 RHACS 运算符备份部署

当您使用 RHACS 运算符安装 RHACS 时,OpenShift Container Platform 将所有中央部署的自定义配置存储在中央自定义资源中。您可以备份中央自定义资源、central-tls 密钥和管理员密码。central-tls 密钥包含用于与安全集群进行身份验证和签名 API 令牌的证书。

步骤
  1. 运行以下命令将中央自定义资源保存到 YAML 文件中

    $ oc get central -n _<central-namespace>_ _<central-name>_ -o yaml > central-cr.yaml
  2. 运行以下命令将central-tls 保存到 JSON 文件中

    $ oc get secret -n _<central-namespace>_ central-tls -o json | jq 'del(.metadata.ownerReferences)' > central-tls.json
  3. 运行以下命令将管理员密码保存到 JSON 文件中

    $ oc get secret -n _<central-namespace>_ central-htpasswd -o json | jq 'del(.metadata.ownerReferences)' > central-htpasswd.json

使用 Helm 备份部署

当您使用 Helm 图表安装 RHACS 时,您将所有中央部署的自定义配置存储在应用于 Helm 图表的自定义值中。

您可以备份自定义值并将其保存到 YAML 文件中。

步骤
  • 运行以下命令将自定义 Helm 图表值备份到 YAML 文件中

    $ helm get values --all -n _<central-namespace>_ _<central-helm-release>_ -o yaml > central-values-backup.yaml