Storage Transfer Service agent-based transfers support Cloud Storage regional endpoints. When a Cloud Storage regional endpoint is specified, all data transfer traffic through the agent to or from a Cloud Storage bucket remains within that Google Cloud region. Any Cloud Storage buckets involved in the transfer, including intermediate buckets for inter-file system transfers, must be located in the specified region, or the transfer fails.
When a regional endpoint is not specified, the transfer agent connects to the global endpoint, which routes traffic optimally but does not guarantee regional confinement of the data in transit.
Regional endpoints are not supported in agentless transfers.
Specify a regional endpoint
Endpoints are specified at the transfer agent level. The agent must be installed
using the docker
command.
To specify a regional endpoint, use the --gcs-api-endpoint
flag when
installing a transfer agent using docker run
:
sudo docker run --ulimit memlock=64000000 -d --rm \ --volumes-from gcloud-config \ -v HOST_DIRECTORY:CONTAINER_DIRECTORY \ gcr.io/cloud-ingest/tsop-agent:latest \ --project-id=PROJECT_ID \ --hostname=$(hostname) \ --agent-pool=POOL_NAME \ --gcs-api-endpoint=storage.LOCATION.rep.googleapis.com
The flag accepts all Cloud Storage single regions, as well as the
US
multi-region and the EU
multi-region. See
Bucket locations for a complete list.
Regional endpoint consistency in agent pools
When specifying an agent pool for a transfer agent, be aware that Storage Transfer Service doesn't enforce uniform regional endpoints across all agents in that pool. This means you could inadvertently mix agents that have a specific regional endpoint with agents that don't within the same pool; as a result, the pool may route traffic through the global endpoint.
To ensure traffic remains within the desired region, only include agents with the same regional endpoint in a given agent pool.