注意:
- 此教程需要访问 Oracle Cloud。要注册免费账户,请参阅开始使用 Oracle Cloud Infrastructure Free Tier 。
- 它使用 Oracle Cloud Infrastructure 身份证明、租户和区间示例值。完成实验室时,请将这些值替换为特定于云环境的值。
使用 Rclone 将数据迁移到 Oracle Cloud Infrastructure Object Storage
简介
Oracle Cloud Infrastructure (OCI) 对象存储服务是一个 Internet 规模的高性能存储平台,可提供经济高效的数据持久性。对象存储服务可以存储任意内容类型的无限制非结构化数据,包括分析数据以及图像和视频等丰富内容。
Rclone 是一个多功能命令行程序,用于将文件和目录同步到各种云存储提供商或本地到云之间。Rclone 是将数据迁移到 OCI 对象存储的有效工具。它以其简单、高效和对包括 OCI 对象存储在内的众多云服务的广泛支持而闻名。Rclone 支持以下功能和用例。
- 备份(和加密)到云存储,并从云存储还原(和解密)文件。
- 可以利用多线程下载到本地磁盘功能。
- 将云数据镜像到其他云服务或本地。
- 将数据迁移到 OCI、云存储供应商与 OCI 之间,或者从本地迁移到 OCI。
- 将多个加密、缓存或多种云存储装载为磁盘。
- 传输操作可以随时重新启动。
- 将新文件或更改的文件复制到 OCI 对象存储。
- 同步选项(单向),使目录相同。
- 隐含服务器端传输以最大限度地减少本地带宽的使用。
- 检查源与 OCI 对象存储之间是否缺少文件。
- 支持在验证/验证后将文件移至 OCI 对象存储,删除源/本地文件。
- 保留时间戳并验证校验和。
- 无需本地磁盘或本地数据副本。
- 在 Windows、MacOS、Linux 和 FreeBSD 平台上以磁盘形式挂载任何本地、云或虚拟文件系统。
- 支持 SFTP、HTTP、WebDAV、FTO 和 DLNA 协议。
- 通过有限带宽的间歇连接进行传输。
Rclone Architecture 概览
Rclone 架构适用于两种不同的用例。
-
将 Rclone 作为集中式或网关解决方案:您可以在 Oracle Linux 9 集中式位置或网关中部署 Rclone,挂载来自不同操作系统、源或网络连接存储 (Network File System,NFS) 或服务器消息块 (Server Message Block,SMB) 共享,然后利用 Rclone 将数据从本地源复制到 OCI 对象存储。

-
部署在 NFS 或 SMB 服务器中的克隆:您可以直接在 NFS 或 SMB 服务器上部署 Rclone,将数据从本地源直接复制到 OCI 对象存储。此模型不需要在集中位置的服务器上运行 Rclone。

目标读者
系统管理员、应用管理员、系统和应用所有者、数据库所有者和希望将数据迁移到 OCI 对象存储的开发人员。
目标
- 使用 Rclone 将数据有效传输到 OCI 对象存储。
先决条件
-
Oracle Linux 8 或 9 服务器或 Windows 平台服务器。
注:Rclone 支持多个操作系统。有关当前支持的操作系统的更多信息,请参见 Rclone install documentation 。
-
访问 Oracle Cloud Infrastructure 账户和 OCI 控制台。
-
OCI 配置文件。有关更多信息,请参见 SDK and Configuration File 。
-
OCI Object Storage 存储桶:OCI Object Storage 中将传输数据的存储桶。有关详细信息,请参阅创建 OCI 对象存储桶。
-
本地数据:从本地服务器、NFS 或 SMB 共享。
-
Rclone 软件。
-
libsmbclient.x86_64:在 Linux 上,需要最新版本的 SMB 客户机库,请检查版本并使用以下命令安装该版本。
任务 1:在 Windows 上安装 Rclone
注:如果使用 Linux,请跳至任务 2。
-
下载并安装适用于 Windows 的 Rclone 最新版本。有关更多信息,请参见 Rclone 。
-
提取文件并将提取的文件添加到 Windows 系统 PATH 环境变量,以便轻松访问命令行。
任务 2:在 Linux 上安装 Rclone
-
第一种方法是运行 curl 安装脚本。运行以下
curl命令下载并安装 Rclone。curl https://rclone.org/install.sh | sudo bash或者
通过预编译的二进制文件进行克隆安装。下载预编译的二进制文件。
curl -O https://downloads.rclone.org/rclone-current-linux-amd64.zip or wget https://downloads.rclone.org/rclone-current-linux-amd64.zip注:如果已使用
curl命令安装 Rclone,请转至任务 3。 -
解压缩二进制文件并转到二进制目录。
unzip rclone-current-linux-amd64.zip cd rclone-*-linux-amd64 -
将二进制文件复制到
/usr/bin/并设置权限。cp rclone /usr/bin chown root:root /usr/bin/rclone chmod 755 /usr/bin/rclone -
安装 Rclone 手册页。
mkdir -p /usr/local/share/man/man1 cp rclone.1 /usr/local/share/man/man1/ mandb
任务 3:为 OCI 对象存储配置 Rclone
-
打开 Oracle Linux CLI 并运行
rclone config命令。此命令将启动交互式设置过程。
-
为 OCI 对象存储创建新的远程名称,在菜单中键入
n,然后为您的 OCI 远程配置输入新名称(例如:oci-object-01)。
-
选择存储类型,选择与 Oracle Cloud Infrastructure Object Storage
34对应的编号。
-
选择要由 Rclone 使用的验证提供程序。例如,我们将使用选项
2。
-
输入对象存储名称空间、对象存储区间 ID、对象存储区域和对象存储 API 的端点。

注:对象存储 API 的端点是可选的。留空以使用区域的默认端点。
-
输入 OCI 配置文件的完整路径和
config_profile信息。
-
高级配置选项不是必需的,请选择
n以接受默认参数。
-
将显示 Rclone 配置的概要,如果一切正常,请选择
y以保存配置。
-
使用
rclone ls命令继续迁移和批量数据传输活动之前,请先执行到 OCI 对象存储存储桶的连接测试。rclone ls OCIStorage:your-bucket-name
从本地 Linux 目录进行迁移的示例
在本例中,我们将 /source 目录用作 Oracle Linux 服务器中的本地存储源,并将名为 test-bucket 的 OCI 对象存储桶用作目标。Windows 平台上的用户可以通过创建名为 source 的文件夹并在要复制到 OCI 对象存储桶的文件夹中创建文件来跟进。
-
我们从名为
test-bucket的空 OCI 对象存储桶开始。
注:可以使用 OCI 控制台或 OCI CLI 创建存储桶。
-
/source目录中有五个文本文件。
注:您可以使用
touch命令或首选项的编辑器(例如vim)创建文本文件。如果使用的是 Windows 平台,则可以在名为source的文件夹中使用记事本创建文件,然后继续使用rclone命令。 -
使用
rclone copy命令将数据从 Oracle Linux 服务器上的/source文件夹传输到 OCI 对象存储桶test-bucket。rclone copy /path/to/local/data OCIStorage:your-bucket-name例如:
rclone copy /source/ oci:test-bucket -
从 OCI 控制台转至名为
test-bucket的存储桶的 OCI 对象存储详细信息页。存储桶现在将包含从 Oracle Linux 服务器上的/source目录迁移的文本文件。
-
使用
rclone delete命令删除 OCI 对象存储test-bucket中的所有文件。rclone delete oci:test-bucket -
下面的示例命令包括高级选项,例如多线程流、数据传输的进度、缓冲区大小等。了解克隆高级选项,以确定哪些选项最适合您的用例。
rclone -vvv --progress --stats-one-line --max-stats-groups 10 --log-format date,time,UTC,longfile --fast-list --buffer-size 256Mi --oos-no-check-bucket --oos-upload-cutoff 10Mi --multi-thread-cutoff 16Mi --multi-thread-streams 3000 --transfers 3000 --checkers 64 --retries 2 --oos-chunk-size 10Mi --oos-upload-concurrency 10000 --oos-attempt-resume-upload --oos-leave-parts-on-error sync /root/source/ oci:test-bucket注:定期更新 Rclone 以利用最新的功能和改进。
相关链接
确认
- 作者 - Anderson Souza(产品管理高级总监)
更多学习资源
浏览 docs.oracle.com/learn 上的其他实验室,或者通过 Oracle Learning YouTube 频道访问更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 以成为 Oracle Learning Explorer。
有关产品文档,请访问 Oracle 帮助中心。
Migrate Data to Oracle Cloud Infrastructure Object Storage Using Rclone
F91151-01
January 2024
Copyright © 2024, Oracle and/or its affiliates.