针对允许的进程 ID 数量的任何系统级或用户级限制条件(例如使用 ulimit -u 配置)必须考虑您计划运行的代理数量。每个代理进程最多可以创建数百个线程。我们建议在运行转移代理时移除进程 ID 限制。
使用 Podman 创建代理容器的客户应指定足够高的 --pids-limit 值,以容纳 Storage Transfer Service 代理线程。默认 --pids-limit 值为 2048,在运行多个代理时可能会导致问题。我们建议设置 --pids-limit=-1,以允许每个容器的进程 ID 数量不受限制。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-08-18。"],[],[],null,["# Requirements for file system transfers\n\nBefore you create a file system transfer job, you'll need to enable required\nAPIs and install Docker.\n\nIf you receive errors while performing first-time setup, confirm that the user\nyou logged in with has permissions required to perform the set up steps. In many\ncases, these permissions are not available to all users, and you may need to\ncontact a project administrator for assistance.\n\nSystem requirements\n-------------------\n\nTo use Storage Transfer Service for file system transfers, you need:\n\n- A POSIX-compliant source and/or destination.\n\n- A Cloud Storage bucket without a\n [retention policy](/storage/docs/bucket-lock). To transfer to a bucket with\n a retention policy, see\n [Transfer to a bucket with a retention policy](/storage-transfer/docs/on-prem-agent-details#retention_policy).\n\n- TCP port 443 (HTTPS) open for outbound connections.\n\nThe transfer agent machine requirements are listed below:\n\n- A [Docker](https://docker.com)-supported 64-bit Linux\n server or virtual machine that can access the data you plan to transfer.\n [Docker Community Edition](https://docs.docker.com/install/linux/docker-ce/binaries/),\n supports CentOs, Debian, Fedora, and Ubuntu operating systems.\n\n To use other Linux operating systems, see\n [Docker Enterprise](https://docs.docker.com/ee/supported-platforms/).\n- At least 8 GB of memory per container and at least four CPUs to be most\n effective.\n\n- Any system-level or user-level constraints on the number of allowed\n process IDs, such as configured with `ulimit -u`, must account for the\n number of agents you plan to run. Each agent process can create up to many\n hundreds of threads. We recommend removing process ID limits when running\n transfer agents.\n\n Customers using [Podman](https://podman.io/) to create agent containers\n should specify a\n `--pids-limit` value high enough to accommodate Storage Transfer Service agent\n threads. The default `--pids-limit` value is 2048, which may cause issues\n when running more than one agent. We recommend setting `--pids-limit=-1`\n to allow unlimited process IDs per container.\n\nScaling restrictions on jobs and agents\n---------------------------------------\n\nStorage Transfer Service has the following scale restrictions on transfer jobs and\nagents:\n\n- Fewer than one billion files per job\n- Bandwidth cap must be over 1MBps\n- Up to 100 agents per agent pool\n- Up to 800 agent pools per project\n\nEnable APIs\n-----------\n\n1.\n\n\n Enable the Google Storage Transfer API.\n\n\n [Enable the API](https://console.cloud.google.com/flows/enableapi?apiid=storagetransfer)\n\nInstall Docker\n--------------\n\nIf you're using Google Cloud CLI or Docker to\n[install and run transfer agents](/storage-transfer/docs/managing-on-prem-agents#install-agent),\ninstall Docker Engine on a physical or virtual Linux machine.\n\nIf you're using Podman to install and run transfer agents, skip directly to\nthe\n[Podman-specific installation instructions](/storage-transfer/docs/managing-on-prem-agents#podman). \n\n curl -fsSL https://get.docker.com -o get-docker.sh\n\n sudo sh get-docker.sh\n\n sudo systemctl enable docker --now\n\nIf you encounter an installation error, see\n[Troubleshooting](https://docs.docker.com/install/linux/linux-postinstall/#troubleshooting).\n\nAllow Docker to authenticate\n----------------------------\n\nTo allow the Docker container to authenticate with your `gcloud` default\ncredentials, create a Docker volume containing a file with your application\ndefault credentials by running the following command: \n\n sudo docker run -ti --name gcloud-config google/cloud-sdk gcloud auth application-default login\n\nWhat's next?\n------------\n\n- [Configure Google Cloud permissions](/storage-transfer/docs/file-system-permissions)\n- [Create an agent pool](/storage-transfer/docs/on-prem-agent-pools)\n- [Install transfer agents](/storage-transfer/docs/managing-on-prem-agents)\n- [Create a transfer job](/storage-transfer/docs/create-transfers)\n- [Maximize transfer agent performance](/storage-transfer/docs/on-prem-agent-best-practices)"]]