Elasticsearch集群的備份與恢復

2021-09-11 11:19:24 字數 2747 閱讀 2163

rootsecurity · 2016/02/03 10:47

在es集群上做乙個nfs,並掛載:

[[email protected] ~]# yum install nfs-utils*

[[email protected] ~]# vi /etc/exports

複製**

192.168.1.2(rw)

192.168.1.3(rw)

192.168.1.4(rw)

複製**

儲存退出,並啟動nfs服務

[[email protected] ~]# service nfs start

[[email protected] ~]# service rpcgissd start

[[email protected] ~]# service rpcbind start

複製**

掛載nfs

[[email protected] ~]# mount elasticsearch.master:/data/es/es_backup /data/es/es_backup

複製**

在elasticsearch.master端執行:

curl -xput '' -d '

}'複製**

備份操作,名字根據自己的情況修改

curl -xput /logstash-2016.01.01 -d '     

'複製**

檢視備份狀態:

curl –xget  /logstash-security-2016.01.01

複製**

刪除備份

curl -xdelete  /logstash-security-2016.01.01

複製**

恢復備份

curl -xpost /logstash-security-2016.01.01/_restore -d ' '

複製**

#!python

# -*- coding:utf-8 -*- #

"""自動備份elaticsearch

"""import sys,requests

import ******json

import time,os

import zipfile

url=""

bak_dir="/var/wd/elasticsearch_backup/data"

zip_dir="/var/wd/elasticsearch_backup/zip"

if __name__=='__main__':

date=time.strftime('%y.%m.%d',time.localtime(time.time()-86400))

data1=}

r1=requests.post(url,******json.dumps(data1))

print r1.text

index='logstash-sec-'+date

url=url+'/'+index

#開始備份指定index

data2=

r2=requests.post(url,******json.dumps(data2))

print r2.text

#查詢備份狀態

r3=requests.get(url)

dic=******json.loads(r3.text)

while (dic['snapshots'][0]['state']=='in_progress'):

print "%s backup is in_progress..." % index

time.sleep(10)

r3=requests.get(url)

dic=******json.loads(r3.text)

if dic['snapshots'][0]['state']=='success':

print '%s 備份成功' % index

try:

#壓縮檔案

zfile=zip_dir+'/'+index+'.zip'

z = zipfile.zipfile(zfile,'w',zipfile.zip_deflated,allowzip64=true)

print "開始壓縮檔案..."

for dirpath, dirnames, filenames in os.walk(bak_dir):

for filename in filenames:

z.write(os.path.join(dirpath,filename))

z.close()

os.system('rm -rf '+bak_dir) #刪除原檔案目錄

print "備份結束"

except exception,e:

print e

print "開始刪除index: %s" % index

os.system('curl -xdelete ""' % index)

else:

print '%s 備份失敗' % index

複製**

構建elasticsearch集群

初始化系統環境 在 etc security limits.conf 增加如下兩行 elasticsearch soft nofile 4096 elasticsearch hard nofile 65536 curl o elasticsearch 解壓軟體包 tar xvf elasticsea...

Elasticsearch集群搭建

1 主節點 儲存資料資訊 meta data 元資料 描述資料的資料,客戶端通過主節點獲取真正的資料位置,到資料節點datanode獲取資料分片 2 資料節點 只負責資料的讀和寫 3 負載均衡節點 當主節點連線的客戶端過多,可以引入負載均衡節點 分擔併發,既不是主節點,也不是資料節點 搭建另外兩台e...

Elasticsearch集群搭建

1 分發 scp 2.修改每一台機器的配置檔案 a 集群的名字 cluster.name my es b 節點名字 node.name node 1 c es儲存資料的路徑 path.data home zpark esdata data d es生成log資訊的路徑 path.logs home ...