Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Enjoy members-only rewards and discounts
  • Create and access a list of your products

ECS:存储桶管理 — 概览和故障处理

Summary: 本文介绍存储桶的管理方法、注意事项和故障处理。

This article applies to   This article does not apply to 

Symptoms

本文介绍存储桶、存储桶管理和基本的故障处理方法。

Cause

N/A

Resolution

存储桶管理

什么是存储桶?

存储桶是在命名空间中创建的对象容器,有时被视为子租户的逻辑容器。在 S3 中,容器被称为存储桶,此术语已被 ECS 采用。在 Atmos 中,相当于存储桶的是子租户;在 Swift 中,相当于存储桶的是容器;对于 CAS 来说,存储桶是 CAS 池。在 ECS 中,存储桶是全局资源。每个存储桶在命名空间中创建,每个命名空间在复制组 (RG) 中创建。

存储桶是可以跨多个站点的全局资源。创建存储桶涉及将存储桶分配给命名空间和 RG。存储桶级别是启用所有权和文件或 CAS 访问权限的级别。

您可同时通过不同的工具访问存储桶,即使用 GeoDrive 和 S3 浏览器访问同一存储桶。


如何创建存储桶?

ECS 提供了多种创建存储桶的方法。要创建存储桶,必须完成以下操作:
  1. 上传 ECS 许可证。
  2. 选择一组节点以创建至少一个存储池。
  3. 创建一个 VDC。
  4. 创建至少一个复制组。
  5. 创建至少一个命名空间。
可以通过 ECS GUI 或 Rest API 创建存储桶:
  • ECS GUI
使用浏览器登录到 ECS 系统,然后在 ECS GUI 中选择 ECS Help(“?”图标),它链接到《ECS 管理指南》-“ECS 入门”-“创建存储桶”
  • Rest API
有关管理和对象操作,请参阅 ECS REST API 指南


支持哪些协议?

创建对象用户时(“Manage”-“User”-“New Object User”),可使用以下协议选项:
  • S3 
  • Atmos
  • Swift
  • CAS
  • 通过 NFSv3 访问文件 (S3)
  • 通过 GeoDrive 访问 CIFS 文件 (S3)


支持哪些存储桶选项?- 存储桶创建

创建新存储桶时(“Manage”-“Buckets”-“New Bucket”),有以下选项可用:
 
文件系统
NFSv3 必需选项。在创建存储桶时需要此选项。请注意,一旦创建存储桶,就无法更改此选项的设置。

请参阅文章 ECS:装载 NFS 导出的最佳实践,了解更多信息。
CAS
对于 CAS 操作,在创建存储桶时必须设置此选项。无法使用其他协议访问 CAS 存储桶,并且在创建存储桶时必须设置 CAS 选项。

请参阅文章 ECS:CAS 用户和存储桶管理最佳实践,了解更多信息。
元数据搜索
启用基于用户和系统元数据的对象索引编制,并且在保存后无法启用。

请参阅 ECS GUI 中的 ECS Help(“?”图标),它链接到《ECS 管理指南》-“存储桶”-“在 ECS 门户中使用存储桶”-“存储桶设置”-“元数据搜索字段”
在中断期间进行访问 (ADO)
ECS 允许您将存储桶配置为在其中一个 VDC 出现故障时仍可访问。

请参阅文章 ECS:ADO(在中断期间进行访问)参数的重要性,了解更多信息。
服务器端加密
启用以允许静态数据加密,这会对存储磁盘上的数据进行加密,以降低磁盘被盗导致数据丢失的风险。

请参阅 ECS GUI 中的 ECS Help(“?”图标),它链接到《ECS 管理指南》-“存储桶”-“在 ECS 门户中使用存储桶”-“存储桶设置” 
配额
可以在存储桶或命名空间级别分配软配额和硬配额。

请参阅文章 ECS:如何增加在 ECS 存储桶上设置的配额,了解更多信息。
存储桶标记
存储桶标签是可与存储桶关联的键值对。每个存储桶最多可以有 10 个标签。

请参阅 ECS GUI 中的 ECS Help(“?”图标),它链接到《ECS 管理指南》-“存储桶”-“在 ECS 门户中使用存储桶”-“存储桶设置”-“存储桶标记”
保留
可以在存储桶或命名空间级别设置保留。保留适用于 CAS 和 S3 存储桶。

请参阅 ECS GUI 中的 ECS Help(“?”图标),它链接到《ECS 管理指南》-“命名空间”-“在 ECS 门户中使用命名空间”-“命名空间设置”-“保留期和策略”


支持哪些存储桶选项?- 存储桶编辑

创建存储桶后,可以通过使用“Edit Bucket”下拉菜单中的“Edit ACL”和“Edit Policy”修改存储桶设置。请参阅 ECS GUI 中的 ECS Help(“?”图标),它链接到《ECS 管理指南》-“管理”-“存储桶”-“编辑存储桶”。

用户在访问存储桶时拥有的权限是使用访问控制列表 (ACL) 设置的。您可以为一个用户、一组预定义组(例如所有用户)和自定义组分配 ACL。当您创建存储桶并为其分配所有者时,将创建一个 ACL,它会向存储桶所有者分配一组默认权限。默认情况下,所有者会获得完全控制权限。您可以修改分配给所有者的权限,也可以通过为存储桶选择“编辑 ACL”操作来为用户添加新权限:
 
编辑 ACL
S3 允许设置以下权限:
 
读取 允许用户列出存储桶中的对象。
读取 ACL 允许用户读取存储桶 ACL。
写入 允许用户创建或更新存储桶中的任何对象。
写入 ACL 允许用户写入存储桶的 ACL。
执行 设置作为文件系统访问时的执行权限。使用 ECS 对象协议访问对象时,此权限无效。
完全控制 允许用户读取、写入、读取 ACL 和写入 ACL。
提醒:如果已授予该权限,非对象所有者可以读取、写入、读取 ACL 和写入 ACL,否则只能列出对象。
特权写入 允许用户在没有正常写入权限时执行对存储桶或对象的写入操作。CAS 存储桶的必需权限。
删除 允许用户删除存储桶和对象。CAS 存储桶的必需权限。
用户对存储桶没有权限。

可以创建具有不同权限的多个用户。请参阅 ECS GUI 中的 ECS Help(“?”图标),它链接到《ECS 管理指南》-“存储桶”-“在 ECS 门户中使用存储桶”-“设置 ACL”

对于 CAS,请参阅文章 ECS:为 CAS 设置存储桶 ACL,了解更多信息。

存储桶策略提供比 ACL 更高的灵活性,并支持精细控制存储桶操作的权限以及对存储桶中对象的操作的权限。策略条件用于为符合条件的一系列对象分配权限,并用于自动将权限分配给新上传的对象。您可以修改分配给对象的权限,也可以通过选择“编辑策略”操作来为存储桶添加新权限:
 
编辑策略

ECS GUI 提供存储桶策略编辑器,用于为现有存储桶创建存储桶策略。策略以 JSON 格式定义,用于策略的语法与用于 Amazon AWS 的语法相同:

kA23a000000GG6FCAW_1_0
您可以在以下典型场景中使用存储桶策略:

  • 向一个用户授予存储桶权限
  • 向所有用户授予存储桶权限
  • 自动向创建的对象分配权限

有关上述操作的示例,请参阅 ECS GUI 中的 ECS Help(“?”图标),它链接到《ECS 管理指南》-“存储桶”-“在 ECS 门户中使用存储桶”-“设置存储桶策略”-“存储桶策略场景”。


如何测试存储桶?

有多种方法可以测试 S3 连接,以下是访问方法的几个示例。通过 S3 浏览器访问 S3 存储桶的最简单方法。
 
WinSCP:   ECS:使用 WINSCP 连接 ECS 存储桶
s3test.sh 脚本:  ECS:如何使用 s3test.sh 脚本测试 S3 创建存储桶、上传对象、读取对象、删除对象、删除存储桶
S3curl:     ECS:如何使用 s3curl.pl 脚本在 ECS 3.x 上执行基本 s3 操作。
S3Browser:   ECS:如何使用 S3Browser 连接 ECS?


存储桶有哪些限制?

存储桶受存储桶所在系统配置的最大容量的限制。

存储桶支持多协议,但 CAS 存储桶除外。CAS 存储桶不能共享。

在 TSO 期间,命名空间、存储桶和对象级别的客户端访问和 API 操作可用性受到在命名空间和存储桶级别设置的以下 ADO 选项的控制:
  • Off(默认值):在临时中断期间保持强一致性。
  • On:在临时站点中断期间允许最终一致的访问。
TSO 期间的数据一致性在存储桶级别实现。配置在命名空间级别设置,这会在创建新存储桶期间为 ADO 设置默认 ADO 设置,并且可以在创建新存储桶时覆盖;这意味着可以为某些存储桶(而不能为其他存储桶)配置 TSO。


如何删除存储桶?

要删除存储桶,请确保存储桶完全为空。这不仅包括当前对象,还包括任何已配置的版本和删除标记,你需要删除所有这些内容,然后才能删除该存储桶。

如果无法手动删除存储桶,则可以在存储桶上设置生命周期策略以将其删除。请参阅文章 ECS:如何使用生命周期策略删除包含许多对象的 S3 存储桶,了解更多信息。

Additional Information

注意事项

在创建存储桶之前,请记住某些选项之后无法更改:
  • 复制组
  • 服务器端加密
  • 文件系统
  • CAS
  • 元数据搜索
确保存储桶配置正确,否则可能需要迁移。

以下规则适用于 ECS 中的 S3 存储桶命名:
  • 长度必须介于 1 到 255 个字符之间。(S3 要求存储桶名称的长度为 1255 个字符)
  • 可以包含点 (.)、连字符 (-)、下划线 (_) 字符以及字母数字字符 ([a-zA-Z0-9])
  • 可以以连字符 (-) 或字母数字字符开头。
  • 不能以点 (.) 开头
  • 不能包含双点 (..)
  • 不能以点 (.) 结尾
  • 不能为 IPv4 地址格式。
  • 存储桶名称在一个命名空间中必须唯一。
  • 命名空间和存储桶名称应与 DNS 兼容,因为它们可能会显示在 DNS 记录中。

存储桶最佳实践:
  • 将存储桶用于特定环境、工作流或用途。例如:开发、测试、财务、运营等。
  • 在多站点部署中,在距离访问和更新对象的应用程序最近的 VDC 站点创建存储桶。如果对象的所有权在距离较远的站点,则检查最新拷贝会产生开销。
  • 为获得最佳性能,建议单个命名空间中的存储桶少于 1000 个

有关更多信息,请在 ECS GUI 中选择 ECS Help(“?”图标),它链接到《ECS 管理指南》

ECS 代码存储桶限制

有关针对存储桶限制实施的最新修复,请参阅最新的 ECS 发行说明

故障处理文章

协议错误代码

ECS:S3 错误代码和可能的原因
ECS:对 S3 读取/写入/删除问题进行故障处理
ECS:CAS (Centera) SDK 错误代码
ECS:对 Keystone 的 Swift 身份验证不起作用

配额

ECS:如何通过管理 API 更新存储桶配额

保留

ECS:ECS 中的 CAS 保留

删除问题

ECS:无法删除启用了 CAS 的空存储桶 — 错误 1013 (http: 400): Bad request body. Bucket {} is not empty.
ECS:客户无法删除存储桶

ACL

ECS:空白自定义组 ACL — 使用 create_subtenant.sh 创建的存储桶 — Atmos 
ECS:S3 浏览器中非所有者对象用户的存储桶和对象 ACL
ECS:存储桶非所有者对象用户的只读存储桶 ACL 无法在 S3 浏览器中下载上传的对象

生命周期策略

ECS:如何启用存储桶生命周期策略以处理不完整 MPU 的删除
ECS:对具有生命周期策略(没有前缀)的存储桶的 PUT/GET/DELETE 请求返回 500 错误
ECS:当多个策略对不同操作具有重叠前缀时,生命周期策略无效

MPU

ECS:如何使用 s3curl 执行 MPU(分段上传)

TSO

ECS:xDoctor:RAP051:检测到 TSO(临时站点中断)。

基本 URL

ECS:是否可以通过网页浏览器使用 baseURL 访问存储桶?

Affected Products

ECS Appliance