zoukankan      html  css  js  c++  java
  • rgw配置删除快速回收对象

    前言

    做rgw测试的时候,经常会有删除文件的操作,而用默认的参数的时候,rgw是通过gc回收机制来处理删除对象的,这个对于生产环境是有好处的,把删除对业务系统的压力分摊到不同的时间点,但是测试的时候,可能需要反复的写入删除,而这种情况下,可能希望能够迅速的回收对象,那么就需要修改几个参数了

    参数

    主要调整下面的几个参数

    rgw_gc_obj_min_wait = 30
    rgw_gc_processor_max_time = 180
    rgw_gc_processor_period = 2
    

    删除的步骤如下

    1、删除以后进入gc队列
    2、等待rgw_gc_obj_min_wait时间后开始处理
    3、执行rgw_gc_processor_max_time时间的gc操作
    4、等待rgw_gc_processor_period时间进入下一次gc操作
    

    调整以后,删除就能够很快的回收了

    查询删除以后执行gc的时间

    [root@lab201 ~]# radosgw-admin gc list --include-all|grep time;date
            "time": "2020-09-08 17:26:20.0.873326s",
    Tue Sep  8 17:25:52 CST 2020
    

    可以看到上面执行删除操作后,通过命令查询下一次gc的时间与当前的时间差就是30s左右

    上面的gc相关的参数是哪里控制的

    做了一个实验,通过给不同的rgw网关配置不同的gc参数,然后通过不同的网关去删除数据,可以看到,这个删除是由网关决定的,下面的是默认的参数做了删除操作以后查看删除的时间,可以看到是两个小时以后才开始删除,也就是rgw_gc_obj_min_wait = 7200

    [root@lab201 ~]# radosgw-admin gc list --include-all|grep time;date
            "time": "2020-09-08 19:31:01.0.24764s",
    Tue Sep  8 17:31:10 CST 2020
    

    那么这里实际上是可以给不同的网关配置不同的参数的,如果想要立刻回收空间的时候,可以配置回收快的参数,然后通过这个网关的端口去删除

    控制删除线程的参数

    rgw_gc_max_concurrent_io = 10
    

    大量删除的时候可以考虑增大这个参数

    变更记录

    Why Who When
    创建 武汉-运维-磨渣 2020-09-08
  • 相关阅读:
    bootstrap select动态赋值与赋默认值
    json学习
    JsonObject学习遇到的一个奇葩的问题,当value为空时,key不见了
    servlet+jsp实现文件上传,和图片预览
    解决webstorm运行vue项目时不能同步的问题
    webStrom配置less且自动生成.css和自动压缩为.min.css
    怎么升级本地vue版本
    css这一段时间学习中遇到的比较有用,但是容易忘记的属性
    vue.js将unix时间戳转换为自定义时间格式
    文档碎片——createDocumentFragment
  • 原文地址:https://www.cnblogs.com/zphj1987/p/13631440.html
Copyright © 2011-2022 走看看