中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

elasticsearch 索引數據快照備份和恢復

發布時間:2020-07-06 14:45:29 來源:網絡 閱讀:1243 作者:我不是三爺 欄目:系統運維

最近線上的ES集群埋點數據量暴漲,機器的內存磁盤空間眼看就要炸了。但這部分數據又是冷數據,現時不需要查詢,但又不能直接delete,需保留日后數據分析。由于前期急于上線,業務代碼沒有合理分配索引按月切割,全年數據丟進單個索引,導致單索引數據暴漲到100G+
為解決磁盤空間的瓶頸,針對不常用的分片數據,做快照冷存儲。
應用場景:
三節點的ES集群:192.168.85.39 ,192.168.85.36,192.168.85.33

找一臺有磁盤空間的服務器,搭建NFS,用于共享目錄掛載。已192.168.85.63為例

應用場景:ES集群三節點 192.168.85.39,192.168.85.33,192.168.85.36
NFS存儲服務器:192.168.5.63

一.搭建NFS共享存儲服務器 (5.63上操作)

1.安裝 nfs服務  
yum install -y nfs-utils

2. 開機啟動
systemctl enable rpcbind.service
systemctl enable nfs-server.service

3.  分別啟動rpcbind和nfs服務:
systemctl start rpcbind.service
systemctl start nfs-server.service

4.firewalld 防火墻針對es節點內網ip開放NFS服務監聽端口:
111 udp端口    20048 tcp端口    2049 tcp 和 udp全開

5.創建本地數據共享目錄 并設置權限  
mkdir /data/db/elasticsearch/backup
chmod 777 /data/db/elasticsearch/backup
chown -R elasticsearch:elasticsearch /data/db/elasticsearch/backup

6.配置NFS目錄訪問權限
vim etc/exports
/data/db/elasticsearch/backup 192.168.85.39(rw,sync,all_squash)     192.168.85.33(rw,sync,all_squash) 192.168.85.36(rw,sync,all_squash)
exports -r //生效
exports -s //查看

7.es節點上安裝客戶端(85.39 85.33 85.36 上操作)
     yum -y install showmount
開啟服務:
     systemctl enable rpcbind.service
     systemctl start rpcbind.service
8.創建掛載目錄(85.39 85.33 85.36 上分別操作)
mkdir /mnt/elasticsearch
chmod 777 elasticsearch

掛載共享目錄到本地
mount -t nfs 192.168.5.63:/data/db/elasticsearch/backup  /mnt/elasticsearch

df -h //查看確認是否成功掛載

二.創建快照倉庫

curl -XPUT http://192.168.85.39:9002/_snapshot/backup -d'
{
"type": "fs",
"settings": {
"location": "/mnt/elasticsearch/backup",
"compress": true,
"max_snapshot_bytes_per_sec" : "50mb",
"max_restore_bytes_per_sec" : "50mb"
}
}'

備注說明:
1.可在es任一節點操作
2.backup: 指定倉庫名稱為backup  ,生成的備份文件存放路徑為/mnt/elasticsearch/backup
3.max_snapshot_bytes_per_sec,max_restore_bytes_per_sec 限定備份和恢復的數據字節內容大小為50mb,
為了防止磁盤IO過高。數值越大,備份恢復速度越快。50mb為推薦值,IO性能高的機器可不限制

curl -XPUT http://192.168.85.39:9002/_snapshot/backup -d '
{
    "type": "fs",
    "settings": {
        "location": "/mnt/elasticsearch/backup",
        "compress": true
    }
}'

三.創建快照備份
1.針對全索引快照備份

curl -XPUT 192.168.85.39:9002/_snapshot/backup/snapshot_all?pretty

備注說明:
1.指定備份到倉庫backup
2.快照名稱為 snapshot_all

2.針對指定某個單獨索引快照備份(為了區分不同索引備份目錄,建議倉庫用索引名稱命名)

單獨快照備份user_event_201810這個索引
2.1先針對索引創建倉庫
curl -XPUT http://192.168.85.39:9002/_snapshot/user_event_201810 -d'
{
"type": "fs",
"settings": {
"location": "/mnt/elasticsearch/user_event_201810",
"compress": true,
"max_snapshot_bytes_per_sec" : "50mb",
"max_restore_bytes_per_sec" : "50mb"
}
}'

2.2 快照備份索引user_event_201810操作
curl -XPUT http://192.168.85.39:9002/_snapshot/user_event_201810/user_event_201810?wait_for_completion=true -d '
{
"indices":"user_event_201810",
"ignore_unavailable": "true",
"include_global_state": false
}'

備注說明:
1.創建的倉庫名為user_event_201810
2.存放的文件目錄為/mnt/elasticsearch/user_event_201810
3.indices:指定索引源為user_event_201810
4.增加?wait_for_completion=true參數是為了執行完成返回結果狀態

四.恢復快照備份數據到es集群
1.針對全索引快照備份的恢復操作

curl -XPOST http://192.168.85.39:9200/_snapshot/backup/snapshot_all/_restore

備注說明:
1.指定倉庫名稱backup
2.指定快照備份名稱snapshot_all

2.針對某個指定索引的快照備份恢復操作

針對索引user_event_201810快照恢復
curl -XPOST http://192.168.85.39:9002/_snapshot/user_event_201810/user_event_201810/_restore

備注說明:
1.指定倉庫名稱user_event_201810
2.指定快照備份名稱user_event_201810

五:輔助操作命令
1.查看已存在倉庫

curl 192.168.85.39:9002/_cat/repositories?

2.查看已存在快照

curl -XGET http://192.168.85.39:9002/_snapshot?   //查看全部
curl -XGET http://192.168.85.39:9002/_snapshot/user_event_201810/user_event_201810//查看指定索引

3.刪除快照

curl -XDELETE http://192.168.85.39:9002/_snapshot/user_event_201810/user_event_201810
//刪除快照user_event_201810

4.刪除倉庫

curl -XDELETE http://192.168.85.39:9002/_snapshot/user_event_201810
//刪除倉庫user_event_201810

elasticsearch其中一節點配置文件

cluster.name: my-application1
node.name: node-3
path.data: /data/db/elasticsearch
path.logs: /data/log/elasticsearch/logs
path.repo: ["/mnt/elasticsearch"]
network.host: 192.168.85.33
http.port: 9002
transport.tcp.port: 9102
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ["192.168.85.39:9102","192.168.85.36:9102","192.168.85.33:9102"]
discovery.zen.minimum_master_nodes: 2
indices.query.bool.max_clause_count: 10240
http.cors.enabled: true
http.cors.allow-origin: "*"

NFS
mount -t nfs 192.168.5.63:/data/db/elasticsearch/backup /mnt/elasticsearch

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

逊克县| 田阳县| 邹城市| 德庆县| 定州市| 米泉市| 固原市| 盈江县| 邳州市| 玉溪市| 长海县| 蒙自县| 固阳县| 无棣县| 财经| 华宁县| 马龙县| 浦城县| 九寨沟县| 莱西市| 定边县| 固安县| 陈巴尔虎旗| 壤塘县| 赞皇县| 香港| 扶绥县| 江安县| 华宁县| 保靖县| 阿拉善左旗| 沭阳县| 融水| 三台县| 阳东县| 穆棱市| 紫金县| 浦城县| 娱乐| 泰安市| 广西|