gkebackup.gke.io/v1
包含 gkebackup.gke.io v1 API 组的 API 架构定义。
BackupAllRestoreAll
定义一种策略,该策略会备份此组件中选择的所有内容,并在恢复期间恢复所有内容。
来源: - Strategy
| 字段 | 说明 | 
|---|---|
| backupPreHooksHookSpec 数组 | 在备份相应组件的所有选定卷之前执行的钩子列表。这些通常是静止步骤。执行目标 Pod 是相应组件中的所有 Pod。 | 
| backupPostHooksHookSpec 数组 | 在备份完相应组件的所有卷后执行的钩子列表。这些通常是取消静止步骤。执行目标 Pod 是相应组件中的所有 Pod。 | 
| volumeSelectorLabelSelector | 用于选择在此组件中备份和恢复的持久性卷的标签选择器。如果未提供此参数,则会选择所有永久性卷。 | 
BackupJobList
包含备份作业列表。
| 字段 | 说明 | 
|---|---|
| apiVersion字符串 | gkebackup.gke.io/v1 | 
| kind字符串 | BackupJobList | 
| metadataListMeta | 如需了解 metadata的字段,请参阅 Kubernetes API 文档。 | 
| itemsBackupJob 数组 | 
BackupJobSpec
定义备份作业的期望状态。
来源: - BackupJob
| 字段 | 说明 | 
|---|---|
| backupName字符串 | 备份作业所针对的控制平面备份名称。该名称不可更改。 | 
BackupJobStatus
定义观察到的备份作业状态。
来源: - BackupJob
| 字段 | 说明 | 
|---|---|
| phaseBackupJobPhase | 备份的当前阶段。 | 
| message字符串 | 人类可读的消息,指示有关备份处于此状态的原因的详细信息。 | 
| reason字符串 | 简短的驼峰式大小写字符串,用于描述任何更新,并用于机器解析和整洁显示。 | 
BackupOneRestoreAll
定义一种策略,该策略仅备份相应组件中一个 Pod 的卷,并在恢复期间将这些卷恢复到所有其他 Pod。此策略适用于部署在高可用性配置(一个主实例和一个或多个辅助实例)中的应用。此策略仅适用于使用已定义的 volumeClaimTemplate 资源来预配卷的 StatefulSet 组件。
如果某个组件包含多个 Deployment 资源,则所有部署都必须只有一个副本,所有副本都必须具有相同数量的永久性卷,并且所有永久性卷都必须按相同的顺序定义。
这些卷在 .spec.template.spec.volumes 字段中定义,并且非永久性卷会被跳过。
如果某个组件包含多个 StatefulSet 资源,则所有 StatefulSet 资源都必须具有相同数量的卷声明模板,并且所有卷声明模板都必须遵循相同的顺序。它们在 .spec.volumeClaimTemplates 字段中定义。
来源: - Strategy
| 字段 | 说明 | 
|---|---|
| backupTargetName字符串 | 用于备份的首选 Deployment或StatefulSet资源的名称。我们会根据此组件的构成方式选择目标 Pod。对于多Deployment,请选择由相应Deployment资源创建的唯一 Pod。对于多StatefulSet,请选择由目标StatefulSet资源创建的第一个 Pod。对于单个StatefulSet,请选择目标StatefulSet资源创建的第二个 Pod。 | 
| backupPreHooksHookSpec 数组 | 在备份相应组件的所有选定卷之前执行的钩子列表。这些通常是静止步骤。钩子仅在所选备份 Pod 上执行。 | 
| backupPostHooksHookSpec 数组 | 在备份完相应组件的所有卷后执行的钩子列表。这些通常是取消静止步骤。钩子仅在所选备份 Pod 上执行。 | 
| volumeSelectorLabelSelector | 用于选择目标 Pod 中备份的所有永久性卷的标签选择器。选择器可能会选择目标 Pod 之外的卷,但只有属于目标 Pod 的卷会被备份。这些卷备份在恢复期间会恢复到选择器选择的所有其他卷。如果未提供此参数,则会选择所有永久性卷。 | 
组件
定义应用资源及其备份和恢复策略的子集。单个组件由 StatefulSet 或 Deployment 资源列表表示。
来源: - ProtectedApplicationSpec
| 字段 | 说明 | 
|---|---|
| name字符串 | 相应组件的唯一名称。 | 
| resourceKindResourceKind | 相应组件中包含的资源类型。资源类型只能是 Deployment、StatefulSet或Pod。Pod资源类型目前仅支持BackupAllRestoreAll策略。 | 
| resourceNames字符串数组 | 属于相应组件的资源的名称。它必须是 Deployment、StatefulSet或Pod资源的名称列表,具体取决于resourceKind字段中的定义。 | 
| strategy策略 | 有关如何备份和恢复此组件的详细信息。 | 
DumpAndLoad
定义一种策略,其中组件的备份和恢复通过使用特定于应用的工具(例如 MySQL 的 mysqldump 或 PostgreSQL 的 pg_dump)来转储和加载数据来实现。转储文件存储在专用卷中。对于此策略,系统仅选择专用卷进行备份。转储目标和加载目标可以不同。此策略仅适用于使用已定义的 volumeClaimTemplate 资源来预配卷的 StatefulSet 组件。
来源: - Strategy
| 字段 | 说明 | 
|---|---|
| dumpTarget字符串 | 用于转储组件数据的首选 Deployment或StatefulSet资源的名称。我们会根据此组件的构成方式选择目标 Pod。对于Deployment,请选择目标Deployment资源创建的唯一 Pod。对于单个StatefulSet,如果副本数大于 2,则选择目标StatefulSet资源创建的第二个 Pod。否则,请选择唯一的 Pod。对于多StatefulSet,请选择由目标StatefulSet资源创建的第一个 Pod。 | 
| loadTarget字符串 | 用于加载组件数据的首选 Deployment或StatefulSet资源的名称。我们会根据此组件的构成方式选择目标 Pod。对于Deployment,选择由目标Deployment资源创建的唯一 Pod。对于StatefulSet,请始终选择由目标StatefulSet资源创建的第一个 Pod。 | 
| dumpHooksHookSpec 数组 | 用于将相应组件的数据转储到专用卷中的钩子列表。执行目标 Pod 是从 DumpTarget字段中选择的 Pod 之一。 | 
| backupPostHooksHookSpec 数组 | 在备份专用转储卷后执行的钩子列表。这些通常是清理步骤。 | 
| loadHooksHookSpec 数组 | 用于从专用卷加载相应组件数据的钩子列表。它可能包含加载完成后执行的清理步骤。执行目标 Pod 是从 LoadTarget字段中选择的 Pod 之一。 | 
| volumeSelectorLabelSelector | 必须选择用于转储和加载应用数据的专用卷的标签选择器。在 DumpTarget和LoadTarget字段中,必须仅选择一个卷。 | 
HookFailurePolicy
基础类型: string
如果钩子执行遇到错误,则采取的预期行为。
来源: - HookSpec
HookSpec
定义如何在所选容器中执行钩子,前提是已选择目标 Pod。
显示在: - BackupAllRestoreAll - BackupOneRestoreAll - DumpAndLoad
| 字段 | 说明 | 
|---|---|
| name字符串 | 相应钩子的名称。此字段用于标识钩子执行的状态以及遇到的任何错误。 | 
| container字符串 | 此钩子执行所在的容器。如果未指定,则在 Pod 的第一个容器上执行。 | 
| command字符串数组 | 要执行的命令。要运行的钩子命令。例如 ["/sbin/fsfreeze", "--freeze"]。 | 
| timeoutSeconds整数 | 钩子的超时时间(以秒为单位)。如果未指定,则默认值为 30。 | 
| onErrorHookFailurePolicy | 钩子执行遇到错误时要遵循的预期行为。有效值为 Ignore或Fail。 如果未指定,则值为Fail。 | 
ProtectedApplication
定义 Protectedapplication API 的架构。
来源: - ProtectedApplicationList
| 字段 | 说明 | 
|---|---|
| apiVersion字符串 | gkebackup.gke.io/v1 | 
| kind字符串 | ProtectedApplication | 
| metadataObjectMeta | 如需了解 metadata的字段,请参阅 Kubernetes API 文档。 | 
| specProtectedApplicationSpec | |
| statusProtectedApplicationStatus | 
ProtectedApplicationError
包含相应 ProtectedApplication 资源的详细错误信息。
来源: - ProtectedApplicationStatus
| 字段 | 说明 | 
|---|---|
| reason字符串 | 一个驼峰式大小写字符串,用于描述任何错误,供机器解析和整洁显示。 | 
| message字符串 | 人类可读的消息,指示有关错误的详细信息。 | 
ProtectedApplicationList
包含 ProtectedApplication 资源的列表。
| 字段 | 说明 | 
|---|---|
| apiVersion字符串 | gkebackup.gke.io/v1 | 
| kind字符串 | ProtectedApplicationList | 
| metadataListMeta | 如需了解 metadata的字段,请参阅 Kubernetes API 文档。 | 
| itemsProtectedApplication 数组 | 
ProtectedApplicationSpec
定义属于 ProtectedApplication 的相关资源,以及必须如何备份或恢复指定应用。
来源: - ProtectedApplication
| 字段 | 说明 | 
|---|---|
| resourceSelectionResourceSelection | 属于相应 ProtectedApplication的资源。 | 
| components组件数组 | 相应受保护应用的组件。 | 
ProtectedApplicationStatus
定义相应 ProtectedApplication 资源的状态。
来源: - ProtectedApplication
| 字段 | 说明 | 
|---|---|
| readyToBackup布尔值 | 指定此 ProtectedApplication资源是否已准备好进行备份。如果ProtectedApplication资源包含任何错误,则表示该资源未就绪。 | 
| errorProtectedApplicationError 数组 | 与此受保护的应用相关的错误。例如,某个组件配置无效。 | 
ResourceKind
底层类型: string
定义资源类型。
来源: - 组件
ResourceSelection
定义如何识别属于相应应用的资源。
来源: - ProtectedApplicationSpec
| 字段 | 说明 | 
|---|---|
| typeResourceSelectionType | 应用来源的类型。 Type字段必须是ApplicationName或Selector。这是联合判别器。 | 
| applicationName字符串 | 同一命名空间内 sig-apps 应用的名称。数据保护规范所适用的应用。 | 
| selectorLabelSelector | 与所选 ProtectedApplication资源位于同一命名空间中的资源。数据保护规范已应用于这些资源。 | 
ResourceSelectionType
基础类型: string
选择的类型。
来源: - ResourceSelection
RestoreJob
定义 RestoreJob API 的架构
来源: - RestoreJobList
| 字段 | 说明 | 
|---|---|
| apiVersion字符串 | gkebackup.gke.io/v1 | 
| kind字符串 | RestoreJob | 
| metadataObjectMeta | 如需了解 metadata的字段,请参阅 Kubernetes API 文档。 | 
| specRestoreJobSpec | |
| statusRestoreJobStatus | 
RestoreJobList
包含 RestoreJob 资源的列表。
| 字段 | 说明 | 
|---|---|
| apiVersion字符串 | gkebackup.gke.io/v1 | 
| kind字符串 | RestoreJobList | 
| metadataListMeta | 如需了解 metadata的字段,请参阅 Kubernetes API 文档。 | 
| itemsRestoreJob 数组 | 
RestoreJobSpec
定义恢复的期望状态。
来源: - RestoreJob
| 字段 | 说明 | 
|---|---|
| restoreName字符串 | RestoreName 是 RestoreJob 正在执行的控制平面恢复名称。该名称不可更改。 | 
RestoreJobStatus
定义恢复作业的观测状态。
来源: - RestoreJob
| 字段 | 说明 | 
|---|---|
| phaseRestoreJobPhase | 恢复的当前状态。 | 
| message字符串 | 人类可读的消息,指示有关备份恢复处于此状态的原因的详细信息。 | 
| reason字符串 | 一个驼峰式大小写字符串,用于描述任何更新,供机器解析和整洁显示。 | 
策略
定义了特定组件的备份和恢复方式。必须是 BackupAllRestoreAll、BackupOneRestoreAll 或 DumpAndLoad 中的一个。
来源: - 组件
| 字段 | 说明 | 
|---|---|
| typeStrategyType | 备份和恢复策略的类型。值只能是 BackupAllRestoreAll、BackupOneRestoreAll或DumpAndLoad。请注意,Pod资源类型仅支持BackupAllRestoreAll策略。这是联合判别器。 | 
| backupAllRestoreAllBackupAllRestoreAll | 一种策略,用于备份此组件中选择的所有内容,并在恢复期间恢复所有内容。 | 
| backupOneRestoreAllBackupOneRestoreAll | 一种策略,仅备份相应组件中一个 Pod 的卷,并在恢复期间恢复到所有其他 Pod。此策略适用于部署在高可用性配置(一个主实例和一个或多个辅助实例)中的应用。此策略仅适用于使用已定义的 volumeClaimTemplate资源来预配卷的StatefulSet组件。 | 
| dumpAndLoadDumpAndLoad | 一种策略,其中使用特定于应用的工具(例如 MySQL 的 mysqldump或 PostgreSQL 的pg_dump)来转储和加载数据,从而实现组件的备份和恢复。内存转储文件存储在专用卷中。对于此策略,必须仅选择专用卷进行备份。转储目标和加载目标可能不同。此策略仅适用于使用已定义的volumeClaimTemplate资源来预配卷的StatefulSet组件。 | 
StrategyType
底层类型: string
定义组件的备份和恢复策略。
来源: - Strategy