使用高级Trident保护恢复设置
您可以使用高级设置(例如注释、命名空间设置和存储选项)自定义恢复操作,以满足您的特定要求。
还原和故障转移操作期间的命名空间标注和标签
在还原和故障转移操作期间、目标命名空间中的标签和标注会与源命名空间中的标签和标注相匹配。此时将添加源命名空间中目标命名空间中不存在的标签或标注、并覆盖已存在的任何标签或标注、以便与源命名空间中的值匹配。仅存在于目标命名空间上的标签或标注保持不变。
|
如果您使用 Red Hat OpenShift,请务必注意命名空间注释在 OpenShift 环境中的重要作用。命名空间注释确保恢复的 pod 遵守 OpenShift 安全上下文约束 (SCC) 定义的适当权限和安全配置,并且可以访问卷而不会出现权限问题。欲了解更多信息,请参阅 "OpenShift安全上下文约束文档"。 |
在执行还原或故障转移操作之前、您可以通过设置Kubornetes环境变量来防止目标命名空间中的特定标注被覆盖 RESTORE_SKIP_NAMESPACE_ANNOTATIONS
。例如:
helm upgrade trident-protect --set restoreSkipNamespaceAnnotations=<annotation_key_to_skip_1>,<annotation_key_to_skip_2> --reuse-values
|
执行恢复或故障转移操作时,在 `restoreSkipNamespaceAnnotations`和 `restoreSkipNamespaceLabels`被排除在恢复或故障转移操作之外。确保在初始 Helm 安装期间配置这些设置。要了解更多信息,请参阅"配置AutoSupport和命名空间过滤选项"。 |
如果您使用带有标志的Helm安装源应用程序,则会对标签键进行 --create-namespace`特殊处理 `name
。在还原或故障转移过程中、Trident Protect会将此标签复制到目标命名空间、但如果源命名空间中的值与源命名空间匹配、则会将此值更新为目标命名空间值。如果此值与源命名空间不匹配、则会将其复制到目标命名空间、而不会发生任何更改。
示例
以下示例显示了一个源和目标命名空间、每个命名空间都具有不同的标注和标签。您可以查看目标命名空间在操作前后的状态、以及标注和标签在目标命名空间中的组合或覆盖方式。
在执行还原或故障转移操作之前
下表说明了执行还原或故障转移操作之前示例源和目标名称卷的状态:
命名空间 | 标注 | 标签 |
---|---|---|
命名空间ns-1 (源) |
|
|
命名空间ns-2 (目标) |
|
|
还原操作之后
下表显示了还原或故障转移操作后示例目标命名空间的状态。已添加某些密钥、某些密钥已被覆盖、并且 `name`标签已更新以与目标命名空间匹配:
命名空间 | 标注 | 标签 |
---|---|---|
命名空间ns-2 (目标) |
|
|
支持的字段
本节介绍可用于恢复操作的其他字段。
存储类别映射
这 `spec.storageClassMapping`属性定义从源应用程序中的现有存储类到目标集群上的新存储类的映射。您可以在具有不同存储类别的集群之间迁移应用程序时或更改 BackupRestore 操作的存储后端时使用此功能。
-
示例: *
storageClassMapping:
- destination: "destinationStorageClass1"
source: "sourceStorageClass1"
- destination: "destinationStorageClass2"
source: "sourceStorageClass2"
支持的注释
本节列出了系统中支持配置各种行为的注解。如果用户未明确设置注解,系统将使用默认值。
标注 | Type | Description | 默认值 |
---|---|---|---|
protected.trident.netapp.io/data-mover-timeout-sec |
string |
允许数据移动设备操作停止的最长时间(以秒为单位)。 |
“300” |
protected.trident.netapp.io/kopia-content-cache-size-limit-mb |
string |
Kopia 内容缓存的最大大小限制(以兆字节为单位)。 |
“1000” |