本页面介绍了如何将对象上传到 Google Distributed Cloud (GDC) 气隙存储分区以及从其中下载对象。
准备工作
项目命名空间用于管理 Management API 服务器中的存储桶资源。您必须拥有项目才能使用存储分区和对象。
您还必须拥有相应的存储桶权限才能执行以下操作。请参阅授予存储桶访问权限。
对象命名准则
请遵循以下准则为对象命名:
- 为对象命名时,请使用 UTF-8 字符。
- 请勿包含任何个人身份信息 (PII)。
将对象上传到存储分区
控制台
- 在导航菜单中,点击对象存储。
- 点击要将对象上传到的存储桶的名称。
- 可选:如果您想创建一个文件夹来存储对象,请依次点击创建文件夹 > 输入文件夹名称 > 点击创建。
- 直接点击上传文件,或进入您刚刚创建的文件夹,然后点击上传文件。
- 选择所需文件,然后点击打开。
- 等待上传成功的确认消息。
CLI
如需上传对象,请运行以下命令:
gdcloud storage cp LOCAL_PATH s3://REMOTE_PATH
gdcloud storage cp s3://REMOTE_SOURCE_PATH s3://REMOTE_MOVE_DESTINATION_PATH
gdcloud storage mv s3://REMOTE_SOURCE_PATH s3://REMOTE_MOVE_DESTINATION_PATH
以下命令需要 FULLY_QUALIFIED_BUCKET_NAME。使用查看存储桶配置部分中的 GET
或 DESCRIBE
命令获取完全限定的存储桶名称。
以下命令会将本地目录中的所有文本文件上传到存储桶:
gdcloud storage cp *.txt s3://FULLY_QUALIFIED_BUCKET_NAME
以下命令会将本地目录中的多个文件上传到存储桶:
gdcloud storage cp abc1.txt abc2.txt s3://FULLY_QUALIFIED_BUCKET_NAME
如需将文件夹上传到存储桶,请使用 --recursive 选项复制整个目录树。以下命令会上传目录树 dir:
gdcloud storage cp dir s3://FULLY_QUALIFIED_BUCKET_NAME --recursive
针对大型对象执行分段上传,或者在要上传的文件大于 15 MB 时自动使用分段上传。 在这种情况下,文件会拆分为多个部分,每个部分的大小为 15 MB。 最后一部分较小。每个部分会单独上传,并在转移完成后在目标位置重建。
如果某个部分的上传失败,您可以重新开始上传,而不会影响已上传的任何其他部分。
以下是与多部分上传相关的两个选项:
--disable-multipart
:针对所有文件停用分段上传。--multipart-chunk-size-mb=SIZE
:设置多部分上传中每个块的大小。
大于 SIZE 的文件会自动以多线程分段方式上传。较小的文件使用传统方法上传。SIZE 以兆字节为单位。默认块大小为 15 MB。允许的最小块大小为 5 MB,最大块大小为 5 GB。
从存储分区下载对象
控制台
- 在导航菜单中,点击对象存储。
- 点击包含对象的存储桶的名称。
- 选中要下载的对象名称旁边的复选框。
- 点击下载。
CLI
如需从存储桶中获取对象,请执行以下操作:
gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/OBJECT LOCAL_FILE_TO_SAVE
如需将存储桶中的所有文本文件下载到当前目录,请运行以下命令:
gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/*.txt .
如需将文本文件 abc.txt
从存储桶下载到当前目录,请执行以下操作:
gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/abc.txt .
如需下载文件的旧版本,请先列出文件的所有版本:
gdcloud storage ls s3://FULLY_QUALIFIED_BUCKET_NAME/abc.txt --all-versions
输出示例:
s3://my-bucket/abc.txt#OEQxNTk4MUEtMzEzRS0xMUVFLTk2N0UtQkM4MjAwQkJENjND
s3://my-bucket/abc.txt#ODgzNEYzQ0MtMzEzRS0xMUVFLTk2NEItMjI1MTAwQkJENjND
s3://my-bucket/abc.txt#ODNCNDEzNzgtMzEzRS0xMUVFLTlDOUMtQzRDOTAwQjg3RTg3
然后,将存储桶中的特定版本的文本文件 abc.txt
下载到当前目录:
gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/abc.txt#OEQxNTk4MUEtMzEzRS0xMUVFLTk2N0UtQkM4MjAwQkJENjND .
使用自定义 AEADKey
如需进行更精细的自定义,您可以创建自己的 AEADKey,并在加密存储桶中的对象时直接使用该密钥。这样一来,您就可以完全控制加密密钥,从而绕过默认设置。按照创建密钥中的说明创建一个新的 AEADKey,并确保该密钥与您打算使用的存储桶位于同一 Namespace
中。然后,每次发送请求时,请确保 HEADER
配置为 x-amz-server-side-encryption: SSE-KMS
和 x-amz-server-side-encryption-aws-kms-key-id: NAMESPACE_NAME/AEADKey_NAME