Skip to main content
NetApp Backup and Recovery
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

使用高级自定义资源还原设置

贡献者 netapp-mwallis

您可以使用高级设置(如注释、命名空间设置和存储选项)自定义还原操作,以满足您的特定要求。

还原和故障转移操作期间的命名空间注释和标签

在还原和故障转移期间,将更新目标命名空间标签和注释以匹配源:源中的密钥将添加到目标密钥或覆盖目标密钥,而仅存在于目标中的密钥将保持不变。

备注 在 Red Hat OpenShift 中,命名空间注释很重要,因为它们确保还原的 Pod 收到正确的安全上下文约束和权限,使它们能够访问卷并在没有权限错误的情况下运行。有关详细信息,请参见 "OpenShift 安全上下文约束文档"

设置 Kubernetes 环境变量

RESTORE_SKIP_NAMESPACE_ANNOTATIONS

在恢复或故障切换之前,以防止覆盖特定的目标命名空间注释。例如:

helm upgrade trident-protect -n trident-protect netapp-trident-protect/trident-protect \
  --set-string restoreSkipNamespaceAnnotations="{<annotation_key_to_skip_1>,<annotation_key_to_skip_2>}" \
  --reuse-values
备注 在还原或故障切换期间,在 `restoreSkipNamespaceAnnotations`和 `restoreSkipNamespaceLabels`中指定的任何命名空间注释和标签将从还原或故障切换操作中排除。确保在初始 Helm 安装过程中配置了这些设置。要了解更多信息,请参阅 "配置其他 Trident Protect helm 图表设置"

如果您使用带有 `--create-namespace`标志的 Helm 来安装源应用程序,Trident Protect 会将名称标签复制到目标命名空间。如果标签值与源命名空间名称匹配,则替换为目标命名空间名称;如果不匹配,则保持原样。

示例

以下示例显示了具有不同标签和注释的源和目标命名空间,并显示了操作之前和之后的目标命名空间,以说明键是如何添加、合并或覆盖的。

还原或故障转移操作之前

下表显示了还原或故障转移操作之前的示例源和目标命名空间的状态:

命名空间 标注 标签

命名空间 ns-1(源)

  • annotation.one/key: "updatedvalue"

  • annotation.two/key: "true"

  • environment=production

  • 合规性=hipaa

  • name=ns-1

命名空间 ns-2(目标)

  • annotation.one/key: "true"

  • annotation.three/key: "false"

  • 角色=数据库

还原操作后

下表显示了还原或故障转移操作后示例目标命名空间的状态。已添加一些键,一些键已被覆盖,并且已更新 name 标签以匹配目标命名空间:

命名空间 标注 标签

命名空间 ns-2(目标)

  • annotation.one/key: "updatedvalue"

  • annotation.two/key: "true"

  • annotation.three/key: "false"

  • name=ns-2

  • 合规性=hipaa

  • environment=production

  • 角色=数据库

支持的字段

本节描述可用于还原操作的其他字段。

存储类映射

spec.storageClassMapping 属性定义从源应用程序中存在的存储类到目标集群上的新存储类的映射。您可以在具有不同存储类的集群之间迁移应用程序或更改 BackupRestore 操作的存储后端时使用此功能。

示例:

storageClassMapping:
  - destination: "destinationStorageClass1"
    source: "sourceStorageClass1"
  - destination: "destinationStorageClass2"
    source: "sourceStorageClass2"

支持的注释

本节列出了用于在系统中配置各种行为的支持注释。如果用户未明确设置注释,系统将使用默认值。

标注 类型 描述 默认值

protect.trident.netapp.io/data-mover-timeout-sec

string

允许数据移动器操作停止的最长时间(以秒为单位)。

"300"

protect.trident.netapp.io/kopia-content-cache-size-limit-mb

string

Kopia 内容缓存的最大大小限制(以兆字节为单位)。

"1000"

protect.trident.netapp.io/pvc-bind-timeout-sec

string

在操作失败之前,等待任何新创建的 PersistentVolumeClaims (PVC) 到达 `Bound`阶段的最长时间(以秒为单位)。适用于所有还原 CR 类型(BackupRestore、BackupInplaceRestore、SnapshotRestore、SnapshotInplaceRestore)。如果您的存储后端或集群通常需要更多时间,请使用更高的值。

"1200"(20 分钟)