码迷,mamicode.com
首页 > 数据库 > 详细

Ceph levedb数据库too big处理

时间:2020-05-18 13:58:11      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:数据量   压缩   调整   lib   strong   clust   查看   mon   node节点   

问题现象:
Ceph集群(filestore版本)使用一段时间,有时候会产生告警如下:

    cluster 79d9b290-3261-4607-9a16-858e78d776b5
     health HEALTH_WARN
            mon.node-1 store is getting too big! 15360 MB >= 15360 MB

主要原因:
1.一方面集群使用时间过久,mon有大量的数据更新,导致mon的数据库leveldb超过15G大小。
2.另一方面leveldb的数据存储机制本身结构化问题,当mon有大量的更新时,数据库文件确认处理的效率不高导致。
解决途径:
node节点的leveldb数据库过大,超过默认的15G大小所致。可以采用数据库压缩的方法进行压缩,并同时修改该数据大小为20G(根据以往的经验,压缩只能暂时的解决告警,为了长远考虑,调整数据库总的可用空间大小)。
操作步骤
以node-1节点数据库too big为例:

  1. 切换mon节点(node-1),执行ceph –s 查看当前告警如下:
    mon.node-1 store is getting too big!
  2. 查看当前集群的容量大小,进行记录。
    du -sh /var/lib/ceph/mon/ceph-node-1/
  3. 执行数据库压缩命令操作,该步骤会会费一段时间,等待执行完毕即可。
    ceph tell mon.node-1 compact
  4. 再次执行步骤2,查看mon下的数据量大小,进行记录。
  5. 执行以下调整命令(确保node-1节点容量足够)。
    ceph tell mon.node-1 injectargs "--mon-data-size-warn 21474836480"
  6. 查看配置生效,切换node-1节点,执行:
    ceph daemon ???/var/run/ceph/ceph-mon.node-1.asok config show | grep mon_data_size_warn
  7. 添加node-1配置文件/etc/ceph/ceph.conf,保证即使node-1 mon重启依然生效。在global下边添加:
    mon_data_size_warn = 21474836480
  8. 重新执行ceph –s 进行检查,告警消失,变更完成。

Ceph levedb数据库too big处理

标签:数据量   压缩   调整   lib   strong   clust   查看   mon   node节点   

原文地址:https://blog.51cto.com/wendashuai/2496167

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!