4.3. 备份 Fuse 在线环境
您可以将 Fuse Online 配置为定期备份:
- Fuse 在线存储连接和集成的内部 PostgreSQL 数据库。
-
syndesis-operator
创建且运行 Fuse Online 的 OpenShift 资源。这包括但不限于配置映射、部署配置和服务帐户。
在安装 Fuse Online 之前,您可以为 Fuse Online 环境配置备份,或者您可以更改 Fuse 在线环境的配置以启用备份。
当 Fuse Online 配置为执行备份时,Fuse Online zips 数据会放入一个文件中,并将该文件上传到您指定的 Amazon S3 存储桶。您可以将备份应用到新的 Fuse 在线环境(没有定义连接或集成),以恢复备份的 Fuse Online 环境。
先决条件
- OCP 在现场运行。
-
oc
客户端工具已安装并连接到运行 Fuse Online 的 OCP 集群。 - 具有集群管理权限的用户为您提供了在集群中具有访问权限的任何项目中安装 Fuse Online 的权限。
- 您有一个 AWS 访问密钥和 AWS secret 密钥。有关获取这些凭证的详情,请参阅 AWS 文档 管理 IAM 用户的访问密钥。
- 您知道您要上传到的 S3 存储桶的 AWS 区域。
- 您知道要上传备份的 S3 存储桶的名称。
流程
使用有权限安装 Fuse Online 的帐户登录 OpenShift。例如:
oc login -u developer -p developer
切换到正在运行您要为其配置备份的 Fuse Online 环境的 OpenShift 项目。例如:
oc project my-fuse-online-project
创建 OpenShift 机密。在命令行中:
-
指定
syndesis-backup-s3
,如以下命令格式所示。 将 AWS 变量替换为 AWS 访问密钥、AWS secret 密钥、存储桶所在的 AWS 区域,以及存储桶的名称。
使用以下命令格式创建 secret:
oc create secret generic syndesis-backup-s3 \ --from-literal=secret-key-id="my-aws-access-key" \ --from-literal=secret-access-key="my-aws-secret-key" \ --from-literal=region="aws-region" \ --from-literal=bucket-name="aws-bucket-name"
备份作业运行时必须存在此 secret。
-
指定
如果还没有安装 Fuse Online,您必须编辑
default-cr.yml
文件以启用备份。请参阅安装 Fuse Online 前编辑syndesis
自定义资源。安装 Fuse Online 后,将根据您在自定义资源中指定的时间表备份作业。如果 Fuse Online 正在运行,您必须编辑
syndesis
自定义资源:调用以下命令,它会在编辑器中打开
syndesis
自定义资源:oc edit syndesis
在
spec:
下添加以下内容:backup: schedule: my-backup-interval
将
my-backup-interval
替换为备份之间所需的持续时间。要确定如何指定备份之间的间隔,请参阅以下资源:- Cron 预定义的调度
不要在间隔前面指定
@
符号。例如,要配置每日备份,自定义资源将包含如下内容:apiVersion: syndesis.io/v1beta1 kind: Syndesis metadata: name: app spec: backup: schedule: daily
保存该文件。
这会向
syndesis-operator
添加一个备份作业。
结果
如果 Fuse Online 已在运行,则现在会根据您定义的时间表有一个 Fuse Online 备份作业。
后续步骤
如果需要安装 Fuse Online,请编辑 default-cr.yml
文件以启用任何其他所需功能或设置任何其他参数。当 default-cr.yml
文件具有您想要的所有设置时,请在创建 OpenShift secret 时指定的项目中安装 Fuse Online。