zoukankan      html  css  js  c++  java
  • 【问题排查过程】vmbackup的snapshots导致磁盘满

    使用中发现,vm-storage节点仅仅过了6天,就占用了800GB的硬盘空间。很不正常。下面是排查过程:

    1.查看磁盘占用情况:

    先登录容器,执行:
    df -h

    /dev/vdb               1012.8G    870.2G    142.7G  86% /var/victoria-metrics/data
    

    2.查看节点上的time series总数:

    • 为了方便使用,我在vm-storage节点上部署了vm-select:
      curl -G "http://127.0.0.1:8481/select/0/prometheus/api/v1/series/count"
    {"status":"success","isPartial":false,"data":[71273032]}
    

    才7000万,并不算多。

    2.研究究竟是哪些文件夹占用空间多

    du /var/victoria-metrics/data/ -h -d 4

    3.3G    /var/victoria-metrics/data/data/small/2022_01
    285.5G  /var/victoria-metrics/data/data/small/snapshots   #太多的快照了
    288.8G  /var/victoria-metrics/data/data/small
    110.9G  /var/victoria-metrics/data/data/big/2022_01
    323.9G  /var/victoria-metrics/data/data/big/snapshots      #太多的快照了
    434.8G  /var/victoria-metrics/data/data/big
    723.6G  /var/victoria-metrics/data/data
    

    很奇怪,我备份的时候,是指定了deleteURL的。备份脚本如下:

    ./vmbackup-prod \
      -configFilePath="/etc/cos/config.ini" \
      -credsFilePath="/etc/cos/creds.ini" \
      -customS3Endpoint="https://cos.ap-guangzhou.myqcloud.com" \
      -dst="s3://bucket-125800000/tenant/Production/formal/vm-storage/0/2022-01-06" \
      -origin="s3://bucket-125800000/tenant/Production/formal/vm-storage/0/2022-01-06" \
      -storageDataPath="/data" \
      -httpListenAddr="0.0.0.0:8420" \
      -memory.allowedBytes=2GB \
      -concurrency=5 \
      -maxBytesPerSecond=20MB \
      -snapshot.createURL="http://127.0.0.1:8482/snapshot/create" \
      -snapshot.deleteURL="http://127.0.0.1:8482/snapshot/delete" &
    

    那么有可能备份完成后,vmbackup并没有去删除快照。

    3.手动删除所有快照

    curl -G "http://127.0.0.1:8482/snapshot/delete_all"
    再看磁盘空间:

    /dev/vdb               1012.8G    148.3G    864.6G  15% /var/victoria-metrics/data
    

    这下正常了。

    于是提了一个issue给VictoriaMetrics.

    目前看来,备份完成后立即执行delete_all才行。

  • 相关阅读:
    MySQL CREATE EVENT创建任务计划 定时执行任务
    MYSQL 的一些基本操作
    PHP mktime() 函数
    php格式化数字:位数不足前面加0补足
    浅析大数据量高并发的数据库优化
    使用SquirrelMQ打造一个千万级数据更新量的应用
    MySQL行锁深入研究
    MySQL 学习笔记 一
    利用C#操作配置文件(转)
    每个分类取最新的几条的SQL实现(转载记录)
  • 原文地址:https://www.cnblogs.com/ahfuzhang/p/15789877.html
Copyright © 2011-2022 走看看