Elasticsearch 可以通過(guò)快照命令對(duì)索引或者整個(gè)集群進(jìn)行快照和恢復(fù),第一個(gè)快照會(huì)是一個(gè)數(shù)據(jù)的完整拷貝,但是所有后續(xù)的快照只存儲(chǔ)已存快照和新數(shù)據(jù)之間的差異。這意味著后續(xù)備份會(huì)相當(dāng)快速,因?yàn)樗鼈冎粋鬏敽苄〉臄?shù)據(jù)量。
快照和恢復(fù)模塊允許創(chuàng)建單個(gè)索引或者整個(gè)集群的快照到各種各樣的后臺(tái)倉(cāng)庫(kù),本文主要介紹將快照存儲(chǔ)到共享文件系統(tǒng)
。
在共享文件系統(tǒng)上創(chuàng)建快照需要執(zhí)行以下步驟:
創(chuàng)建集群的共享目錄;
修改ES配置,添加對(duì)共享目錄的設(shè)置;
創(chuàng)建備份倉(cāng)庫(kù);
創(chuàng)建快照;
查看快照狀態(tài);
必要時(shí)從快照恢復(fù)數(shù)據(jù)。
2. 通過(guò) NFS 設(shè)置共享目錄
NFS 文件共享能解決在集群環(huán)境下圖片、附件等文件共享的問(wèn)題,這里主要用于創(chuàng)建搜索集群的快照共享文件夾。
2.1 角色分配
主機(jī)名 | IP | 角色 |
---|---|---|
zk-master01 | 192.168.1.190 | NFS服務(wù)端 |
zk-slaver01 | 192.168.1.224 | NFS客戶端 |
zk-slaver02 | 192.168.1.48 | NFS客戶端 |
2.2 配置 NFS 服務(wù)端
以下操作只在
zk-master01(192.168.1.190)
上執(zhí)行。
2.2.1 檢查安裝 NFS 服務(wù)
1
2
如果組件沒(méi)有安裝,請(qǐng)執(zhí)行下面的命令進(jìn)行安裝:
1
2.2.2 設(shè)置開(kāi)機(jī)自動(dòng)啟動(dòng)
CentOS 6 可以通過(guò)下面的命令設(shè)置開(kāi)機(jī)啟動(dòng)服務(wù):
1
2
CentOS 7 可以通過(guò)下面命令設(shè)置開(kāi)機(jī)自動(dòng)啟動(dòng):
1
2
2.2.3 啟動(dòng)服務(wù)
CentOS 6 執(zhí)行下面命令:
1
2
CentOS 7 執(zhí)行下面命令:
1
2
2.2.4 創(chuàng)建共享目錄
1
2
3
2.2.5 修改配置文件
1
2
3
*
:允許所有的網(wǎng)段訪問(wèn)rw
:讀寫權(quán)限sync
:資料同步寫入內(nèi)在和硬盤no_root_squash
:nfs客戶端共享目錄使用者權(quán)限
更多配置詳情如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2.2.6 刷新配置立即生效
1
2
3
4
5
2.3 配置客戶端
以下指令在
zk-slaver01(192.168.1.224)和zk-slaver02(192.168.1.48)
上執(zhí)行。
請(qǐng)執(zhí)行配置服務(wù)端的 1-4
步驟;NFS 安裝部署完成后,啟動(dòng) NFS,創(chuàng)建備份文件夾。
2.3.5 掛載目錄
1
2
3
4
5
2.3.6 設(shè)置開(kāi)機(jī)自動(dòng)掛載
1
2
3
4
5
6
3. 修改 ES 配置
配置完共享目錄后,需要修改 ES 配置,并重啟 ES 使其生效。
1
2
4. 創(chuàng)建備份倉(cāng)庫(kù)
4.1 打開(kāi)快照管理界面
ES 插件 kopf 提供了圖形化的界面來(lái)創(chuàng)建管理快照,安裝 kopf 插件的集群直接訪問(wèn):http://es-ip:9200/_plugin/kopf/#!/snapshot
即可進(jìn)入快照管理界面。
當(dāng)然也可以通過(guò)點(diǎn)擊菜單進(jìn)入界面。
4.2 創(chuàng)建備份倉(cāng)庫(kù)
在快照界面左側(cè)的文本框添加備份倉(cāng)庫(kù)信息后點(diǎn)擊create
按鈕即可完成創(chuàng)建,各個(gè)文本框字段的作用:
repository name
:倉(cāng)庫(kù)名稱type
:請(qǐng)務(wù)必選擇fs
location
:請(qǐng)?zhí)顚懝蚕砟夸浢?code style="box-sizing: border-box; outline: 0px; margin: 0px; padding: 2px 4px; font-family: "Source Code Pro", "DejaVu Sans Mono", "Ubuntu Mono", "Anonymous Pro", "Droid Sans Mono", Menlo, Monaco, Consolas, Inconsolata, Courier, monospace, "PingFang SC", "Microsoft YaHei", sans-serif; font-size: 14px; line-height: 22px; color: rgb(199, 37, 78); background-color: rgb(249, 242, 244); border-radius: 2px; word-wrap: break-word;">/data/elastic/bak/backup_esmax_restore_bytes_per_sec
:數(shù)據(jù)恢復(fù)時(shí)速度限制,默認(rèn)(40m/s)max_snapshot_bytes_per_sec
:創(chuàng)建備份復(fù)時(shí)速度限制,默認(rèn)(40m/s)chunk_size
:分片大小,默認(rèn)不限制compress
:是否啟用壓縮
當(dāng)然也可以通過(guò) REST 客戶端執(zhí)行下面請(qǐng)求來(lái)創(chuàng)建備份倉(cāng)庫(kù)。
1
2
3
4
5
6
7
8
9
10
5. 創(chuàng)建快照
5.1 創(chuàng)建快照
在快照界面右側(cè)的snapshot name
文本框填寫快照名稱,repository
選擇剛才創(chuàng)建的倉(cāng)庫(kù)es_bak_20180710
;ignore_unavailable
勾選true
;include_global_state
勾選false
;最后選擇需要參與備份的索引(不選擇表示全部索引,按住ctrl
鍵可以進(jìn)行多選),點(diǎn)擊create
按鈕即可創(chuàng)建快照。
當(dāng)然也可以通過(guò) REST 客戶端執(zhí)行下面請(qǐng)求來(lái)創(chuàng)建快照。
1
2
3
4
5
6
5.2 查看快照
直接在地址欄訪問(wèn)下面的地址即可查看ss_2018_07_10
快照的信息。
1
等待一段時(shí)間重新訪問(wèn),提示創(chuàng)建成功。
6. 從快照恢復(fù)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18