针对很多用户在平台选型时,需要将数据存储在多家存储厂商以保证服务的可用性,又拍云推出了融合云存储。它以又拍云存储作为主存储,自动将增量文件同步到第三方存储厂商(如:阿里云 OSS、七牛云存储等),并在又拍云存储变动时,启用第三方存储源,保证您服务的高可用。
基础架构
-
当又拍云存储正常时,终端服务上传文件到又拍云存储,又拍云存储自动同步文件到第三方存储厂商。用户访问文件时,通过又拍云 CDN 访问又拍云存储上的文件。
-
当又拍云存储出现变动(异常)时,CDN 感知到云存储变动,去第三方存储厂商获取文件,分发给用户。同时,终端服务的文件需要上传到第三方存储厂商。待又拍云存储恢复后,自动同步该期间上传到第三方存储厂商的文件到又拍云存储。
使用融合云存储需要做两方面事情:
功能配置
您在使用控制台进行功能配置之前,请确保您已经注册又拍云账号并完成实名验证,请确保您已经创建云存储服务。
配置入口
1)「工具箱」 > 「融合云存储」。
2)「服务」 列表 > 「融合云」。特别地,只有源站是 「又拍云」的服务,才有「融合云」 这个入口。
添加服务
进入配置列表页面后,点击右上角的 「添加服务」。
配置
1)选择需要融合的服务
通过左侧的选项,选择您需要配置融合云存储的又拍云服务,支持通过关键字进行搜索筛选,以便快速找到您要配置的服务。
2)选择第三方存储厂商
目前仅支持阿里云 OSS 和七牛云存储,且单个服务只能选择一家第三方存储厂商。
3)创建空间并输入
在第三方存储厂商的管理中心创建一个新的具备公共读权限的空间用于又拍云服务增量文件同步,不同厂商需要提供的配置项不同。
-
阿里云 OSS 需要提供 BucketName 、所属地区、同步凭证(AccessKeyId 、AccessKeySecret)。
-
七牛云存储需要提供空间名称、同步凭证(UploadToken)。
特别地,不要使用一个第三方存储厂商空间配置又拍云的多个服务,避免文件同名覆盖。同步凭证获取,见同步凭证生成指南。
4)启用第三方存储源
根据需要,选择是否启用第三方存储源。如果开启,需要输入第三方厂商配置的空间对应回源地址。
-
阿里云 OSS 是空间对应的外网域名。
-
七牛云存储是空间对应的外链域名。需向七牛申请不带加速的外链域名,否则可能会引起 CDN 服务在多家 CDN 厂商进行调度,最终影响体验。
5)验证配置
点击提交,会验证您的配置是否有效。配置验证无误,提示:验证成功,服务配置成功!
配置列表
配置成功后,会显示在配置列表中。
其他操作
1) 日志
您可以通过该功能查看增量同步的日期和同步进度,并可以点击 「下载」,把日志保存到本地。
2)禁用/启用
您可以通过该功能随时对您的配置进行禁用和启用。禁用后将会停止向第三方存储厂商进行增量同步,第三方回源也将禁用。
3)修改
您可以对配置进行修改,更换第三方厂商或空间。更换第三方厂商将会按照当前同步时间开始重新进行增量同步。
4)删除
您可以对配置进行删除操作。删除后增量同步将会停止,第三方回源也将禁用。
SDK
当前,融合云存储上传 SDK 仅包括 iOS 和 Android。其他语言的实现,需要用户自行处理。
同步凭证生成指南
同步凭证的生成各存储厂商的方式和方法各不相同。这里推荐:阿里云 OSS 可通过 RAM 的方式生成,七牛可手动生成。
阿里云 OSS
阿里云提供了 RAM 和 STS 两种权限管理系统。RAM 主要的作用是控制账号系统的权限,通过使用 RAM 可以在主账号的权限范围内创建子用户,给不同的子用户分配不同的权限从而达到授权管理的目的。STS 是一个安全凭证(Token)的管理系统,用来授予临时的访问权限,完成对于临时用户的访问授权。由于 STS 方式具有临时性,不适用于本方案,故推荐使用 RAM 的方式来生成同步凭证。
生成步骤
1)通过阿里云 RAM 管理平台创建用户;
2)自动生成 AccessKey,保存 AK 信息;
3)添加授权策略(可指定单个 OSS 空间权限);
4)授权策略配置好之后,在 AK 信息里面便可以找到 AccessKeyID 和 AccessKeySecret 信息。
详情请参考阿里云 OSS RAM 使用指南。
注意事项
1)需要授权对指定的空间资源具有公共读权限;
2)在限制条件方面,授权的时间要尽可能的长。否则授权时间失效之后,又拍云存储无法进行上传同步操作。
七牛云存储
七牛云存储提供一对主和从 Access Key 和 Secret Key 作为权限管理基础,上传、下载等操作的授权凭证,通过对应的空间与 Access Key 和 Secret Key 生成。其中,上传操作的上传凭证 UploadToken,即是融合云存储配置中需要的同步凭证。
生成步骤
1)构造上传策略;
2)将上传策略序列化成为 JSON 格式;
3)对 JSON 编码的上传策略进行 URL 安全的 Base64 编码,得到待签名字符串 encodedPutPolicy;
4)使用SecretKey对上一步生成的待签名字符串计算 HMAC-SHA1 签名;
5)对签名进行 URL 安全的 Base64 编码,得到值:encodedSign;
6)将 AccessKey、encodedSign 和 encodedPutPolicy 用英文符号 : 连接起来,得到 UploadToken。
详情请参考七牛上传凭证生成指南。
注意事项
1) 在构造上传策略时,授权的生效时间需要尽可能的长,否则授权时间截止,文件将不能够进行同步。
2)指定上传的目标资源空间(Bucket)和资源键名(Key),需要和融合云存储配置中指定的空间名一致。
常见问题
Q:什么是融合云存储?
融合云存储是又拍云结合自有云存储服务,同时融合第三方云存储服务,推出的多源存储方案。
Q:融合云存储方案只能对增量文件进行同步,存量文件同步可以支持吗?
目前仅支持增量文件同步,存量文件不支持。
Q:是否支持对增量文件删除的同步?
不支持。
Q:融合云存储方案收费吗?
在公测阶段该方案不收取任何流量和资源消耗费用,完全免费开放给用户使用。
Q:融合云存储方案中同步凭证有什么作用?
主要是对增量文件同步上传进行授权的,各存储厂商会用来验证上传请求合法性的机制,此处授权其实就是通过 「同步凭证」 来实现。
Q:使用融合云存储方案后,是否支持使用第三方云存储厂商的云处理服务?
仅支持融合七牛云图片处理服务,如有需要,请联系售后或您的商务经理。
如有疑问请 联系我们