你可以的,加油

Elasticsearch5.5.3快照备份仓库比实际的es数据大

Elasticsearch | 作者 xuan2010feng | 发布于2019年09月19日 | 阅读数:1684

求教各位大佬,目前搭建了4个节点的集群,现在每个节点数据大概是50GB左右,总大小为200GB左右,每天对es进行快照增量备份,最近发现ES的备份数据已经远远超过实际的数据量,快照备份已经达到330GB,如下是创建仓库和备份脚本。
(1)创建仓库
curl -XPUT "$1/_snapshot/cms_cluster_backup" -H 'Content-Type: application/json' -d'
{
    "type": "fs",
    "settings": {
        "location": "/mnt/nasprod/cms_cluster_backup",
        "compress": true
    }
}'
(2)快照备份脚本:
#!/bin/bash
#以日期作为快照名:xx年xx月xx日

filename=`date +%Y%m%d%H%M%S`

echo -e "开始创建快照"

curl -XPUT "$1/_snapshot/cms_cluster_backup/$filename?wait_for_completion=true" -H 'Content-Type: application/json' -d' 

"ignore_unavailable": true, 
"include_global_state": false 
}'

echo -e "\n快照创建完成"

 
(3)按理说,备份的快照会有压缩,应该会比200GB小,但是不知道什么原因,数据量多了100多个GB
已邀请:

ziyou - 一个学习ELK的Java程序员

赞同来自:

你采用的是全索引的备份,每天备份一次,按照你的设计应该是一个快照每天增量备份,但是你的问题是你每次备份的备份文件名是随着日期变化的,这个实现就和你的设计有出入了,你的filename=`date +%Y%m%d%H%M%S`,其实就是你每天新建一个备份,每天备份所有的数据,每天多一个备份快照。
你的设计:一个备份快照每天增量备份。
你的实现:每天一个备份快照,备份快照增加。
所以你的实现没有满足你的设计,你备份快照如果想要一个备份快照增量备份的话应该在每天的备份中使用同一个快照存储备份,或者你换一种方式,每天新增一个备份,但是备份内容只备份今天新增的索引。

要回复问题请先登录注册