在创建文件系统转移作业之前,您需要启用所需的 API 并安装 Docker。
如果您在执行首次设置时遇到错误,请确认您登录的用户具有执行设置步骤所需的权限。在许多情况下,并非所有用户都具备这些权限,因此您可能需要与项目管理员联系以获取帮助。
系统要求
如需使用 Storage Transfer Service 进行文件系统转移,您需要满足以下条件:
来源和/或目标符合 POSIX 标准。
没有保留政策的 Cloud Storage 存储分区。 如需转移到具有保留政策的存储桶,请参阅转移到具有保留政策的存储桶。
TCP 端口 80 (HTTP) 和 443 (HTTPS) 对于出站连接是开放的。
转移代理机器要求如下所示:
支持 Docker 且可以访问您计划转移的数据的 64 位 Linux 服务器或虚拟机。 Docker Community Edition,支持 CentOs、Debian、Fedora 和 Ubuntu 操作系统。
如需使用其他 Linux 操作系统,请参阅 Docker Enterprise。
每个容器至少需要 8 GB 内存,并且至少具有 4 个 CPU 才能实现最佳效果。
针对允许的进程 ID 数量的任何系统级或用户级限制条件(例如使用
ulimit -u
配置)必须考虑您计划运行的代理数量。每个代理进程最多可以创建数百个线程。建议在运行时移除进程 ID 限制 。使用 Podman 创建代理容器的客户应指定足够高的
--pids-limit
值,以容纳 Storage Transfer Service 代理线程。--pids-limit
的默认值为 2048,这可能会导致问题 运行多个代理时所需的资源。我们建议设置--pids-limit=-1
,以允许每个容器的进程 ID 数量不受限制。
作业和代理的扩容限制
Storage Transfer Service 对转移作业和代理有以下规模限制:
- 每个作业的文件少于 10 亿个
- 带宽上限必须大于 1MBps
- 每个代理池最多有 100 个代理
- 每个项目最多 800 个代理池
启用 API
-
Enable the Google Storage Transfer API.
安装 Docker
在物理或虚拟 Linux 机器上安装 Docker 社区版:
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo systemctl enable docker
如果您遇到安装错误,请参阅问题排查。
允许 Docker 进行身份验证
如需允许 Docker 容器使用您的 gcloud
默认凭据进行身份验证,请运行以下命令,创建一个包含带有应用默认凭据的文件的 Docker 卷:
sudo docker run -ti --name gcloud-config google/cloud-sdk gcloud auth application-default login