在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

bucket删除中的细节有哪些

109次阅读
没有评论

共计 2129 个字符,预计需要花费 6 分钟才能阅读完成。

bucket 删除中的细节有哪些,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

问题描述

社区群里有人说删除 bucket 以后还有部分数据残留,用的 ceph 10.2.x 版本做的验证

测试用例

from boto.s3.connection import S3Connection
import boto
conn = boto.connect_s3(
 aws_access_key_id =  ,
 aws_secret_access_key =  ,
 host =  s3.cephbook.com ,
 port = 80,
 is_secure = False,
 calling_format = boto.s3.connection.OrdinaryCallingFormat(),
 )
bucket = conn.create_bucket(foo)
#bucket.delete()

删除前

root@demohost:/home/user# rados ls -p rgw.root
.bucket.meta.foo:70af9a54-20bb-480b-92f4-cbdeef0b775c.217357.1

删除后

root@demohost:/home/user# rados ls -p rgw.root
.bucket.meta.foo:70af9a54-20bb-480b-92f4-cbdeef0b775c.217357.1 # 残留

原因分析

对 meta file 的删除操作需要根据是否开启了多集群同步来决定

# src/rgw/rgw_rados.cc
 op_ret = store- delete_bucket(s- bucket, ot);# 入口
 ....
 /* if the bucket is not synced we can remove the meta file */
 if (!is_syncing_bucket_meta(bucket)) {
 RGWObjVersionTracker objv_tracker;
 string entry = bucket.get_key();
 r= rgw_bucket_instance_remove_entry(this, entry,  objv_tracker);
 if (r   0) {
 return r;
 }
 /* remove bucket index objects*/
 map int, string ::const_iterator biter;
 for (biter = bucket_objs.begin(); biter != bucket_objs.end(); ++biter) { index_ctx.remove(biter- second);
 }
 }

满足下面 4 种情况是不会进行 meta file 的删除操作
当前 period 不是最新版本  zonegroup 为非 master zonegroup
当前集群只有单个 zonegroup,且只有一个 zone  当前 zone 不是 master zone

/**
 * Check to see if the bucket metadata could be synced
 * bucket: the bucket to check
 * Returns false is the bucket is not synced
 */
bool RGWRados::is_syncing_bucket_meta(rgw_bucket  bucket)
 /* no current period */
 if (current_period.get_id().empty()) {
 return false;
 }
 /* zonegroup is not master zonegroup */
 if (!get_zonegroup().is_master) {
 return false;
 }
 /* single zonegroup and a single zone */
 if (current_period.is_single_zonegroup(cct, this)   get_zonegroup().zones.size() == 1) {
 return false;
 }
 /* zone is not master */
 if (get_zonegroup().master_zone.compare(zone_public_config.id) != 0) {
 return false;
 }
 return true;
}

解决方案

rados 命令手工删除对应的 obj,但是要注意相应的 bucket 一定是不再需要的,最好是在多个集群上确认最终操作,确保数据一致性。

修改集群配置,满足上面 4 点需求之一。

最后非标准操作去删除 bucket 可能破坏底层数据一致性,起手无悔,一定要慎重。

看完上述内容,你们掌握 bucket 删除中的细节有哪些的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注丸趣 TV 行业资讯频道,感谢各位的阅读!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-16发表,共计2129字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 久久精品无码精品免费专区 | 伦埋琪琪电影院久久 | 综合区小说区图片区在线一区 | 天堂国产一区二区三区 | 欧美性xxxx极品少妇 | 最近中文字幕视频在线资源 | 无码熟妇人妻av影音先锋 | 亚洲综合精品成人啪啪 | 久久精品中文騷妇女内射 | 色翁荡息又大又硬又粗又视频图片 | 亚洲精品久久玖玖玖玖 | 国产区在线观看视频 | 午夜影院在线 | 国产精品任我爽爆在线播放66 | 亚洲欧美视频一区二区 | 欧美综合激情 | 国产精品久久久久久久久岛 | 日本免费大片免费视频 | 欧美精品一区二区久久 | 国产成人免费av片在线观看 | 午夜伦理片免费观看在线 | 亚洲天堂欧美 | 一区二区三区网站在线免费线观看 | 亚洲欧美牲交 | 亚洲av成人精品网站在线播放 | 精品少妇人妻av免费久久洗澡 | 国模和精品嫩模私拍视频 | 九九九免费观看视频 | 久操视频在线观看 | 亚洲精品久久久久中文字幕一福利 | 奥门一级片| 萌白酱香蕉白丝护士服喷浆 | 97porm自拍视频区原创 | 亚洲图片欧美色图 | 日韩激情中文字幕 | 四虎成人影院 | 青青国产在线 | 四虎影音在线 | 亚洲99爱| 成人欧美一区二区三区 | 一级做a爰片性色毛片新版的 |