首先在es集羣中創建倉庫 curl -H "Content-Type: application/json" -XPUT localhost:9200/_snapshot/<yourBackupName> -d' {"type": "oss", "settings": { "endpoint": "http://oss-cn-hangzhou-internal.aliyuncs.com", "access_key_id": "<yourAccesskeyId>", "secret_access_key":"<yourAccesskeySecret>", "bucket": "<yourBucketName>", "compress": true }}' 或者在kibana使用一下命令進行創建倉庫
PUT _snapshot/<yourBackupName>
{
"type": "oss",
"settings": {
"endpoint": "oss-cn-hangzhou-internal.aliyuncs.com",
"access_key_id": "<yourAccesskeyId>",
"secret_access_key": "<yourAccesskeySecret>",
"bucket": "<yourBucketName>",
"compress": true
}
}
爲全部索引創建快照
PUT _snapshot/my_backup/snapshot_1
查看快照信息
GET _snapshot/my_backup/_all
首先還是要創建相同的倉庫 這裏的配置和遷移端一致。 PUT _snapshot/<yourBackupName> { "type": "oss", "settings": { "endpoint": "oss-cn-hangzhou-internal.aliyuncs.com", "access_key_id": "<yourAccesskeyId>", "secret_access_key": "<yourAccesskeySecret>", "bucket": "<yourBucketName>", "compress": true } } 在目標端回覆快照 POST _snapshot/es_backup/snapshot_1/_restore {"indices":"*,-.monitoring*,-.security_audit*","ignore_unavailable":"true"}
GET /_cat/indices?v
-- 根據index 排序
GET /_cat/indices?v&s=index
- 首先是插件的版本和es的版本需要一致的問題。如果不一致會導致es起不來
- 在切換es版本的時候kibana 可能起不來。 這是因爲不同版本的 kibana 在es中的一些index不兼容導致的 這裏可以通過先停止kibana容器然後在es 刪除 舊版本的kibana index
curl -X DELETE http://localhost:9200/*kibana*
- 在使用通配表達式的時候 7.10版本爲了安全默認禁用了這種表達式會禁止使用這種表達式需要修改配置才能使上一步語句執行。 (報錯如:Wildcard expressions or all indices are not allowed)解決方案
1、可以在elasticsearch.yml 進行如下配置 action.destructive_requires_name: false 2、直接在kibana執行 PUT /_cluster/settings
{"persistent" : {"action.destructive_requires_name":false}}我用的是方法2.經過上述配置修改之後。就能使用正則進行批量刪除了。這裏建議遷移完畢之後上述參數還是要改成true 。
- 在恢復快照過程中如果當前目標es 存在快照相同的index ,恢復過程會被中斷。這裏我是按照提示重複的index進行刪除即可。