ceph 分布式存储操作指令

本文档详细列举了Ceph RGW(Rados Gateway)和S3命令,包括创建用户、列出用户和桶、查看桶属性、上传下载文件、设置生命周期规则、管理存储池和桶配额、检查同步状态以及执行垃圾回收等操作,是Ceph对象存储管理的实用参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

创建用户命令:

radosgw-admin user create --uid=[parameter] --display-name=[parameter] --access-key=[ak] --secret=[sk]

list所有用户

radosgw-admin metadata list user

list所有桶

radosgw-admin bucket list

查看当前桶的属性

radosgw-admin bucket stats --buckets=[bucket name]

列举所有桶

s3cmd ls  --access-key=[ak] --secret=[sk]

创建桶

s3cmd mb s3://[bucket name]  --access-key=[ak] --secret=[sk]

删除桶

s3cmd rb s3://[bucket name]  --access-key=[ak] --secret=[sk]

列举桶内容

s3cmd ls s3://[bucket name]  --access-key=[ak] --secret=[sk]

上传文件到桶

s3cmd put [file_name] s3://[bucket name] --access-key=[ak] --secret=[sk]

批量上传

s3cmd put ./* s3://[bucket name] --access-key=[ak] --secret=[sk]

批量下载

s3cmd get s3://[bucket name]   ./ --recursive  --access-key=[ak] --secret=[sk]

删除文件

s3cmd del s3://[bucket name]/[file name] --access-key=[ak] --secret=[sk]

获取桶所占的空间

s3cmd du -H s3://[bucket name] --access-key=[ak] --secret=[sk]

同步目录下的文件

s3cmd sync ./ s3://[bucket name] --access-key=[ak] --secret=[sk]

设置桶生命周期

s3cmd expire s3://[bucket name] --expiry-days=[days] --access-key=[ak] --secret=[sk]

存储池操作

查看当前集群的lc存储池
rados -p default.rgw.log --namespace=lc ls 

查看当前桶
rados -p default.rgw.meta ls --namespace root

查看桶的配置信息 user.rgw.lc对应的value就是该bucket的lifecycle rule列表。 
rados -p default.rgw.meta --namespace root listxattr [桶] 

radosgw-admin bucket stats --bucket=[桶]

桶生命周期配置

rgw_lifecycle_work_time = "00:00-6:00"      
执行lc时间窗口
rgw_enable_lc_threads = true                
允许启动lc线程,设置false表示关闭lc功能
rgw_lc_lock_max_time = 60               
某个lc线程每次可以执行的总时间,超过该时间没执行完,就等下次执行
rgw_lc_max_objs = 32                    
lc rados对象个数
rgw_lc_max_rules = 1000             
一个bucket可以设置的rule数
rgw_lc_debug_interval = -1              
这个参数很关键,>0时,会忽略设置的时间窗口去执行,立即执行,并且此时设置的过期天数,1天等于1s,也就是说你设置7天后过期,此时表示7s后过期。<=0时,则按照正常的来执行。该配置主要为了方便调试lc。
 

查看看用户信息

radosgw-admin user info --uid=[uid]

列举桶

radosgw-admin bucket list

查看桶状态

radosgw-admin bucket stats --bucket=[bucket]

通知其他节点发生reload

radosgw-admin period update --commit

获取对象stat

radosgw-admin object stat --bucket=[bucket] --object=[obj]

获取桶的stat

radosgw-admin bucket stats --placement-id default-placement

删除zonegroup

radosgw-admin zonegroup placement rm --rgw-zonegroup default --placement-id default-test

删除zone

radosgw-admin zone placement rm --rgw-zone default --placement-id id

列举zone

radosgw-admin zone list

获取zone

radosgw-admin zone get --rgw-zone=master

列举zonegroup

radosgw-admin zonegroup list

列举realm

radosgw-admin realm list

查看同步状态

radosgw-admin sync status

获取桶配额

radosgw-admin quota get --quota-scope bucket --bucket-id [bucket ]--uid [uid]

获取桶配额

radosgw-admin quota get --bucket [bucket] --quota-scope bucket --uid [uid]

修复桶配额

radosgw-admin bucket fix --bucket=[bucket]

获取用户配额

radosgw-admin quota get --uid [uid]

查看源站点同步状态

radosgw-admin data sync status --source-zone [slave]

查看datalog

radosgw-admin datalog status

获取桶元数据

radosgw-admin metadata list bucket

获取桶的instance

radosgw-admin metadata list bucket.instance

获取桶的instance信息

radosgw-admin metadata get bucket.instance:instance

删除oid

rados -p main.rgw.meta rm --namespace=heap .meta:bucket.instance:[bucket]:[bucket id]:[version]

查看对象状态

radosgw-admin object stat --object [obj] --uid [uid] --bucket [bucket]

修改用户信息

radosgw-admin user modify --uid [uid] --op-mask ["read,write,delete"]

获取所有池子

radosgw-admin pools list --pool-names

gc立即执行

radosgw-admin gc process --include--all

设置加密

radosgw-admin secret create --secret-name --secret-algo=<SM4/AES256>

radosgw-admin sse set --kms-id=[id] --bucket --uid --kms-algo

radosgw-admin sse enable --uid [uid] --bucket [bucket]

列举数据池

rados ls -p default.rgw.buckets.data

列举对象的xattr(桶分片+对象名)

radosgw-admin -p master.buckets.data listxattr xxx(桶分片+对象名)

获取对象的xattr

radosgw-admin -p rgw.buckets.data getxattr xxx(桶分片+对象名)xxx(属性名)

查看log池

rados -p .rgw.log ls 

查看datalog marker

rados -p .rgw.log listomapkeys data_log.x

获取命名空间的omapkeys

rados -p .rgw.log --namespace=lc listomapkeys lc.x

获取命名空间的omapheader

rados -p .rgw.log --namespace=lc getomapheader lc.x

获取池子中的所有数据

rados -p .rgw.meta ls --all | sort

列举用户的xattr

rados -p .rgw.meta listxattr [uid] --namespace=users.uid

获取用户的xattr

rados -p rgw.meta getxattr [uid] --namespace=users.uid .objclass.version

从数据池中读取数据

rados -p .rgw.buckets.data get data-name test

获取omapheader

rados -p .rgw.buckets.data getomapheader data-name

获取对象的xattr

rados -p .rgw.buckets.data listxattr data-name

从命名空间root中获取桶的xattr

rados -p .rgw.meta --namespace=root listxattr [bucket]

获取对象所在的位置

ceph osd map .data xxx(对象) --format json

获取当前分片的osd位置

ceph osd map .buckets.index .dir.xxxxxx

获取存储池 pg数量

ceph osd pool get buckets.data pg_num

查看存储池的pg

ceph pg ls [pool-id]

ceph pg ls-by-pool [pool-name]

根基pg id查看所在的osd

ceph pg ls-by-osd [osd-id]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值