3.10. bucket 生命周期
作为存储管理员,您可以使用存储桶生命周期配置来管理对象,以便它们在整个生命周期中有效地存储。例如,您可以将对象转换为成本较低的存储类、存档甚至根据您的用例删除它们。
radosgw-admin lc reshard
命令在 Red Hat Ceph Storage 3.3 中已弃用,Red Hat Ceph Storage 4 及更新的版本中不被支持。
3.10.1. 创建生命周期管理策略 复制链接链接已复制到粘贴板!
您可以使用标准 S3 操作来管理 bucket 生命周期策略配置,而不是使用 radosgw-admin
命令。RADOS 网关仅支持应用于 bucket 的 Amazon S3 API 策略语言的子集。生命周期配置包含为一组 bucket 对象定义的一个或多个规则。
先决条件
- 正在运行的红帽存储集群。
- 安装 Ceph 对象网关.
- Ceph 对象网关节点的根级别访问权限.
- 已创建一个 S3 存储桶。
- 创建的用户具有访问权限的 S3 用户。
-
使用安装的
AWS CLI
软件包访问 Ceph 对象网关客户端。
流程
为生命周期配置创建 JSON 文件:
示例
vi lifecycle.json
[user@client ~]$ vi lifecycle.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 文件中添加特定生命周期配置规则:
示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 生命周期配置示例在 images 目录中过期对象,这些对象超过 1 天。
在存储桶上设置生命周期配置:
语法
aws --endpoint-url=RADOSGW_ENDPOINT_URL:PORT s3api put-bucket-lifecycle-configuration --bucket BUCKET_NAME --lifecycle-configuration file://PATH_TO_LIFECYCLE_CONFIGURATION_FILE/LIFECYCLE_CONFIGURATION_FILE.json
aws --endpoint-url=RADOSGW_ENDPOINT_URL:PORT s3api put-bucket-lifecycle-configuration --bucket BUCKET_NAME --lifecycle-configuration file://PATH_TO_LIFECYCLE_CONFIGURATION_FILE/LIFECYCLE_CONFIGURATION_FILE.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
aws --endpoint-url=http://host01:80 s3api put-bucket-lifecycle-configuration --bucket testbucket --lifecycle-configuration file://lifecycle.json
[user@client ~]$ aws --endpoint-url=http://host01:80 s3api put-bucket-lifecycle-configuration --bucket testbucket --lifecycle-configuration file://lifecycle.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在本例中,cluster
.json
文件存在于当前目录中。
验证
检索存储桶的生命周期配置:
语法
aws --endpoint-url=RADOSGW_ENDPOINT_URL:PORT s3api get-bucket-lifecycle-configuration --bucket BUCKET_NAME
aws --endpoint-url=RADOSGW_ENDPOINT_URL:PORT s3api get-bucket-lifecycle-configuration --bucket BUCKET_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 可选:在 Ceph 对象网关节点中登录 Cephadm shell 并检索存储桶生命周期配置:
语法
radosgw-admin lc get --bucket=BUCKET_NAME
radosgw-admin lc get --bucket=BUCKET_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow