ceph rgw lifecycle( 对象存储 对象生命周期)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ceph rgw lifecycle( 对象存储 对象生命周期)相关的知识,希望对你有一定的参考价值。
1、简介
1.1 介绍
????对于 存储 来说,容量 当然是 越大越好了,最好 可以 无限 写入(哈哈,哪有 那么 好的 事);但是 我们 可以 删除 老旧 无用的数据,不过 总不能 时时刻刻 的手动 删除 数据吧;我们 可以 根据 一定的规则 删除 老旧的数据,此时 就可以 设置 对象 生命周期规则,制定 数据 删除 规则,对于 客户来说,集群 好像 就可以 无限量 写入了(哈哈哈,所以 后端 才是 真实的,但是 删除 数据 有风险,谨慎操作哦!!!)
????
1.2 前提 条件
????你要 设置 对象 生命 周期,说明 你的 集群 已经 在 正常 使用了,对象 网关 服务 正常 对外 提供服务
????
2、服务端 配置
????不管 进行 什么 配置,你都需要 对你的 服务进程 进行 相关 的配置吧,ceph 对象网关 生命周期 也是一样的道理,需要 对 提供 对象 网关 服务的
????
????
## 配置 设置
# vim /etc/ceph/ceph.conf
...
## 运行的时间段
rgw_lifecycle_work_time = "00:00-24:00"
## 时间 间隔
rgw_lc_debug_interval = "10"
...
## 重启 对象网关 服务
# systemctl restart ceph-radosgw.target
????
????
3、s3 browser 设置 生命周期(Windows 客户端)
????通过 s3 browser 客户端 软件(这个 暂时 不想 详细描述,后期 编写 文章 单独 介绍)
????
4、设置 生命周期(Linux 客户端)
4.1 安装 boto3
????安装 boto3,也可以 安装 boto;(但是本文 的 后续 脚本 是 根据 boto3 编写的,boto 需要的 自己 写写喽,差别不大,或者 联系我哦,免费 帮助!!!)
????
# pip install boto3
????
4.3 配置 脚本(python)
# cat rgw_lifecycle_set.py
#!/usr/bin/env python2.7
#-*- coding: utf-8 -*.
import boto3
from botocore.client import Config
import datetime
## 根据 对象 网关 用户 信息
aws_access_key_id = ‘XXX‘
aws_secret_access_key = ‘XXX‘
## 需要 设置 规则 的 bucket
bucket_name = ‘XXX‘
# aws2
s3 = boto3.client(‘s3‘, region_name=None,
use_ssl=False,
## url 根据 实际 情况 配置
endpoint_url=‘{http://ceph.com}‘,
aws_access_key_id=aws_access_key_id,
aws_secret_access_key=aws_secret_access_key,
config=Config(s3={‘addressing_style‘: ‘path‘}))
print s3.put_bucket_lifecycle(
Bucket=bucket_name,
LifecycleConfiguration={
‘Rules‘: [
{
‘Status‘: ‘Enabled‘,
‘Prefix‘: ‘/‘,
‘Expiration‘:
{
‘Days‘: 1
},
‘ID‘: ‘79m9n5aucsjb1nqi1687nzcbelqdkli3qwbtgzsm7n4nkfv6‘
}
],
}
)
print s3.get_bucket_lifecycle(Bucket=bucket_name)
以上是关于ceph rgw lifecycle( 对象存储 对象生命周期)的主要内容,如果未能解决你的问题,请参考以下文章