4.4. 备份 Fuse Online 环境
您可以将 Fuse Online 配置为定期备份:
- Fuse Online 存储连接和集成的内部 PostgreSQL 数据库。
-
syndesis-operator
创建以及运行 Fuse Online 所需的 OpenShift 资源。这包括但不限于配置映射、部署配置和服务帐户。
在安装 Fuse Online 之前,您可以为 Fuse Online 环境配置备份,或者您可以更改 Fuse Online 环境的配置以启用备份。
当 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
文件以启用备份。在安装 FuseOnline 前,
请参阅编辑复合自定义资源。安装 Fuse Online 后,将根据您在自定义资源中指定的调度来备份作业。如果 Fuse Online 正在运行,
您必须编辑复合
自定义资源:调用以下命令,它会在编辑器中打开
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 在线备份作业。
后续步骤
如果需要安装 Fuse Online,请编辑 default-cr.yml
文件,以启用任何其他所需的功能或设置任何其他参数。当 default-cr.yml
文件包含您想要的所有设置时,请在您在创建 OpenShift secret 时指定的项目中安装 Fuse Online。