rgw bucket sync

本文详细介绍了Ceph RGW的数据同步流程,包括全量同步和增量同步的过程,并对比了亚马逊云中Bucket的跨区域备份机制。还提供了S3命令同步及文件复制的具体用法。

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

1. c创bucket à(元数据是否同步到对端?)—>disableà(已同步的元数据是否还在)—>写数据(数据是否同步到对端)àenable(刚才写入的数据是否同步到对端了)àdisable(写入的数据还在对端?)

结果:rados ls -p second.rgw.meta --namespace root 两端可以看到由新建的bucket信息>再次执行命令两端可以看到由新建的bucket信息-à写入的数据没有同步到对端,在对端bucket list看不到写入的文件且bucket statsusage是空的à刚才写的数据同步到对端了且bucket list/stats正常à数据还在对端且bucket list/stats正常

2. 2个线程用于sync : BucketsSyncThread ,UserSyncThread

rgw data sync同步过程:

full sync(per shard):

1. 依次处理这个shard里的bucket:

(1)读出bucketmarker

(2)同步每个object,对于同步失败的object会被记录在replica log,之后会尝试sync

(3)同步完成后把bucket_name,bucket_marker,需要重试syncobject列表存入目的cephreplica log

2. 这个shard里的bucket都处理完后:

(1) shard_num,需要重试syncbucket列表更新到目的cephreplica log

 

incremental sync:

1. 查看replica log里的各个datalog shard找到需要重试syncbucket,获取bucket 当前marker

2. 通过读取datalog shard找到有变化的bucket

3. 依次处理各个bucket:

(1) replica log中需要重试syncobject

(2) 读取bucketbilog ,起点是replica log读出的marker

(3) 开始同步object

(4) 更新已经同步了的最新marker和需要再次尝试syncobject列表到replica log

4. 各个bucket处理完成后:

(1) 生成新marker并把需要再次尝试syncbucket列表更新到replica log

 

1. 亚马逊云:bucket跨区域备份:

(1) /目标bucket开启versioning

(2) 对源bucket全部备份或者选择备份指定前缀的文件

(3) 目标bucket必须由可以访问源的对象列表权限

(4) 可在目标bucket上设置lifecycle来管理删除旧版本

(5) 只能在不同的region里使用(对应12版本的zonegroup?

(6) 可监视源bucket上的对象变化,因此只能备份新文件,需要复制已有对象可使用copy功能

2. S3同一个集群内的bucket 复制桶名后面要加/

s3cmd sync s3://from/this/bucket/ s3://to/this/bucket/

s3cmd sync -r -v --dry-run --delete-removed  s3://cos-test-private-bucket/./

s3cmd sync -r -v --dry-run --delete-removed ./  s3://ft-cos-test-private-bucket/

aws s3 sync s3://mybucket s3://backup-mybucket

3. bucket1的文件拷贝到bucket2

1. 同步/home/sen/tmp 文件到bucket里(只同步有差异的文件):

s3cmd sync /home/sen/tmp s3://slboat/tmp

"--dry-run"参数后,仅列出需要同步的项目,不实际进行同步

" --delete-removed"参数后,会在bucket里删除本地不存在的文件

" --skip-existing"参数后,不进行MD5校验,bucket里直接跳过本地已存在的文件

为了保持保留文件属性,如日期/时间等使用 -p -preserve 参数

排除、包含规则(--exclude --include

 

 

 

ch

 

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值