elasticsearch

1. es 快照备份和还原 原理

es 快照.png

版本兼容
官网说明https://www.elastic.co/guide/en/elasticsearch/reference/7.17/snapshot-restore.html

ES8 版本兼容.png

es 快照兼容.png

2. 下载查插件的地址

https://artifacts.elastic.co/downloads/elasticsearch-plugins/repository-hdfs/repository-hdfs-7.12.0.zip

3. 下载后放入到elasticsearch 安装目录中的elasticsearch/plugins 中

[root@basenode repository-hdfs]# pwd
/root/tools/elasticsearch/plugins/repository-hdfs
[root@basenode repository-hdfs]# ll
总用量 18628
-rw-r--r-- 1 root root   41123 7月   3 2019 commons-cli-1.2.jar
-rw-r--r-- 1 root root  335042 7月   3 2019 commons-codec-1.11.jar
-rw-r--r-- 1 root root  588337 7月   3 2019 commons-collections-3.2.2.jar
-rw-r--r-- 1 root root  298829 7月   3 2019 commons-configuration-1.6.jar
-rw-r--r-- 1 root root  185140 7月   3 2019 commons-io-2.4.jar
-rw-r--r-- 1 root root  284220 7月   3 2019 commons-lang-2.6.jar
-rw-r--r-- 1 root root   62050 7月   3 2019 commons-logging-1.1.3.jar
-rw-r--r-- 1 root root 1648200 7月   3 2019 guava-11.0.2.jar
-rw-r--r-- 1 root root   45930 3月  26 2020 hadoop-annotations-2.8.5.jar
-rw-r--r-- 1 root root  123295 3月  26 2020 hadoop-auth-2.8.5.jar
-rw-r--r-- 1 root root   29917 3月  26 2020 hadoop-client-2.8.5.jar
-rw-rw-r-- 1 root root 3948772 3月  18 2021 hadoop-common-7.12.0.jar
-rw-r--r-- 1 root root 4857023 3月  26 2020 hadoop-hdfs-2.8.5.jar
-rw-r--r-- 1 root root 4093994 3月  26 2020 hadoop-hdfs-client-2.8.5.jar
-rw-r--r-- 1 root root 1485102 7月   3 2019 htrace-core4-4.0.1-incubating.jar
-rw-r--r-- 1 root root   34447 3月  18 2021 LICENSE.txt
-rw-r--r-- 1 root root   63731 7月   3 2019 log4j-1.2-api-2.11.1.jar
-rw-r--r-- 1 root root   23241 7月   3 2019 log4j-slf4j-impl-2.11.1.jar
-rw-rw-r-- 1 root root  165628 3月  18 2021 NOTICE.txt
-rw-rw-r-- 1 root root    1748 3月  18 2021 plugin-descriptor.properties
-rw-r--r-- 1 root root    3739 3月  18 2021 plugin-security.policy
-rw-r--r-- 1 root root  533455 7月   3 2019 protobuf-java-2.5.0.jar
-rw-rw-r-- 1 root root   34685 3月  18 2021 repository-hdfs-7.12.0.jar
-rw-r--r-- 1 root root  105112 7月   3 2019 servlet-api-2.5.jar
-rw-r--r-- 1 root root   25689 7月   3 2019 slf4j-api-1.6.2.jar
[root@basenode repository-hdfs]# 

3. 重启Elasticsearch 并且验证

docker restart 949389b28b4e

3.1验证:

GET /_cat/plugins?v
http://192.168.1.180:9200/_cat/plugins?v

es插件验证.png

4. 创建仓库

hdfs 创建仓库文件夹 hdfs dfs -mkdir -p /elasticsearch/backups/my_hdfs_repository

[root@node01 ~]# hdfs dfs -mkdir -p /elasticsearch/backups/my_hdfs_repository
[root@node01 ~]# hdfs dfs -ls /
Found 28 items
drwxr-xr-x   - Administrator hdfs            0 2021-12-27 00:50 /FlinkFileSink
drwxrwxrwt   - yarn          hadoop          0 2020-08-07 03:02 /app-logs
drwxr-xr-x   - hdfs          hdfs            0 2020-08-07 00:40 /apps
drwxr-xr-x   - yarn          hadoop          0 2020-08-06 23:58 /ats
drwxr-xr-x   - hdfs          hdfs            0 2020-08-07 00:04 /atsv2
drwxr-xr-x   - root          hdfs            0 2021-10-02 18:25 /cdc-test
drwxr-xr-x   - hdfs          hdfs            0 2021-10-02 18:57 /cdc2.0-test
drwxr-xr-x   - root          hdfs            0 2022-07-30 21:34 /elasticsearch
drwxr-xr-x   - Administrator hdfs            0 2020-11-12 00:20 /fink-checkpoint
drwxr-xr-x   - root          hdfs            0 2022-02-09 23:08 /flink
drwxr-xr-x   - Administrator hdfs            0 2021-12-27 00:50 /flink-checkpoint
drwxr-xr-x   - root          hdfs            0 2022-02-13 20:53 /flink-hudi
drwxr-xr-x   - hdfs          hdfs            0 2020-08-07 00:21 /warehouse
[root@node01 ~]# 

命令:

PUT _snapshot/my_hdfs_repository
{
  "type": "hdfs",
  "settings": {
    "uri": "hdfs://192.168.1.161:8020",
    "path": "/elasticsearch/backups/my_hdfs_repository",
    "conf.dfs.client.read.shortcircuit": "false"
  }
}
--------------------------------------------------------
{
  "acknowledged" : true
}

4.1 查看仓库快照

  # 查看仓库快照 
GET /_cat/repositories 
---------------------------------
my_hdfs_repository hdfs

4.2 指定索引创建快照

PUT /_snapshot/my_hdfs_repository/my_hdfs_repository_snapshot100
{
  "indices": "wudbes",
  "ignore_unavailable": false,
  "include_global_state": true,
  "partial": false
}

--------------------------------------------------
{
  "accepted" : true
}

4.3 全部索引快照

PUT /_snapshot/my_hdfs_repository/my_hdfs_repository_snapshot101
{
  
}
--------------------------------------------------
{
  "accepted" : true
}

4.4 查看快照进度

 GET /_cat/snapshots/my_hdfs_repository?v&s=id

-------------------------------------------------
id                              status start_epoch start_time end_epoch  end_time duration indices successful_shards failed_shards total_shards
my_hdfs_repository_snapshot100 SUCCESS 1659193380  15:03:00   1659193384 15:03:04     3.2s       5                 5             0            5
my_hdfs_repository_snapshot101 SUCCESS 1659193454  15:04:14   1659193456 15:04:16     2.4s       9                 9             0            9

4.5 查看快照状态

   GET /_snapshot/my_hdfs_repository/my_hdfs_repository_snapshot100/_status

-------------------------------------------------
{
  "snapshots" : [
    {
      "snapshot" : "my_hdfs_repository_snapshot100",
      "repository" : "my_hdfs_repository",
      "uuid" : "iaZaOgATR9GNsYZYhCmlsw",
      "state" : "SUCCESS",
      "include_global_state" : true,
      "shards_stats" : {
        "initializing" : 0,
        "started" : 0,
        "finalizing" : 0,
        "done" : 5,
        "failed" : 0,
        "total" : 5
      },
      "stats" : {
        "incremental" : {
          "file_count" : 107,
          "size_in_bytes" : 2342202
        },
        "total" : {
          "file_count" : 107,
          "size_in_bytes" : 2342202
        },
        "start_time_in_millis" : 1659193380831,
        "time_in_millis" : 3207
      },
      "indices" : {
        ".kibana_task_manager_7.12.0_001" : {
          "shards_stats" : {
            "initializing" : 0,
            "started" : 0,
            "finalizing" : 0,
            "done" : 1,
            "failed" : 0,
            "total" : 1
          },
          "stats" : {
            "incremental" : {
              "file_count" : 71,
              "size_in_bytes" : 111765
            },
            "total" : {
              "file_count" : 71,
              "size_in_bytes" : 111765
            },
            "start_time_in_millis" : 1659193381232,
            "time_in_millis" : 2806
          },
          "shards" : {
            "0" : {
              "stage" : "DONE",
              "stats" : {
                "incremental" : {
                  "file_count" : 71,
                  "size_in_bytes" : 111765
                },
                "total" : {
                  "file_count" : 71,
                  "size_in_bytes" : 111765
                },
                "start_time_in_millis" : 1659193381232,
                "time_in_millis" : 2806
              }
            }
          }
        },
        ".apm-custom-link" : {
          "shards_stats" : {
            "initializing" : 0,
            "started" : 0,
            "finalizing" : 0,
            "done" : 1,
            "failed" : 0,
            "total" : 1
          },
          "stats" : {
            "incremental" : {
              "file_count" : 1,
              "size_in_bytes" : 208
            },
            "total" : {
              "file_count" : 1,
              "size_in_bytes" : 208
            },
            "start_time_in_millis" : 1659193381433,
            "time_in_millis" : 0
          },
          "shards" : {
            "0" : {
              "stage" : "DONE",
              "stats" : {
                "incremental" : {
                  "file_count" : 1,
                  "size_in_bytes" : 208
                },
                "total" : {
                  "file_count" : 1,
                  "size_in_bytes" : 208
                },
                "start_time_in_millis" : 1659193381433,
                "time_in_millis" : 0
              }
            }
          }
        },
        ".apm-agent-configuration" : {
          "shards_stats" : {
            "initializing" : 0,
            "started" : 0,
            "finalizing" : 0,
            "done" : 1,
            "failed" : 0,
            "total" : 1
          },
          "stats" : {
            "incremental" : {
              "file_count" : 1,
              "size_in_bytes" : 208
            },
            "total" : {
              "file_count" : 1,
              "size_in_bytes" : 208
            },
            "start_time_in_millis" : 1659193380831,
            "time_in_millis" : 401
          },
          "shards" : {
            "0" : {
              "stage" : "DONE",
              "stats" : {
                "incremental" : {
                  "file_count" : 1,
                  "size_in_bytes" : 208
                },
                "total" : {
                  "file_count" : 1,
                  "size_in_bytes" : 208
                },
                "start_time_in_millis" : 1659193380831,
                "time_in_millis" : 401
              }
            }
          }
        },
        "wudbes" : {
          "shards_stats" : {
            "initializing" : 0,
            "started" : 0,
            "finalizing" : 0,
            "done" : 1,
            "failed" : 0,
            "total" : 1
          },
          "stats" : {
            "incremental" : {
              "file_count" : 10,
              "size_in_bytes" : 12709
            },
            "total" : {
              "file_count" : 10,
              "size_in_bytes" : 12709
            },
            "start_time_in_millis" : 1659193381232,
            "time_in_millis" : 1403
          },
          "shards" : {
            "0" : {
              "stage" : "DONE",
              "stats" : {
                "incremental" : {
                  "file_count" : 10,
                  "size_in_bytes" : 12709
                },
                "total" : {
                  "file_count" : 10,
                  "size_in_bytes" : 12709
                },
                "start_time_in_millis" : 1659193381232,
                "time_in_millis" : 1403
              }
            }
          }
        },
        ".kibana_7.12.0_001" : {
          "shards_stats" : {
            "initializing" : 0,
            "started" : 0,
            "finalizing" : 0,
            "done" : 1,
            "failed" : 0,
            "total" : 1
          },
          "stats" : {
            "incremental" : {
              "file_count" : 24,
              "size_in_bytes" : 2217312
            },
            "total" : {
              "file_count" : 24,
              "size_in_bytes" : 2217312
            },
            "start_time_in_millis" : 1659193381232,
            "time_in_millis" : 2806
          },
          "shards" : {
            "0" : {
              "stage" : "DONE",
              "stats" : {
                "incremental" : {
                  "file_count" : 24,
                  "size_in_bytes" : 2217312
                },
                "total" : {
                  "file_count" : 24,
                  "size_in_bytes" : 2217312
                },
                "start_time_in_millis" : 1659193381232,
                "time_in_millis" : 2806
              }
            }
          }
        }
      }
    }
  ]
}

4.6 es 备份hdfs 的目录文件

es-备份hdfs.png

4.7 删除快照

DELETE /_snapshot/my_hdfs_repository/smy_hdfs_repository_snapshot100

--------------------------------------------------
{
  "accepted" : true
}

5. 快照还原

要先将快照删除之前的索引在还原,如果是全部的索引 还原 就将全部的索引删除,但是.kibana的索引无法删除要用poostmain 删除 就不会建了 因为用kibana 会自动创建索引。

POST /_snapshot/my_hdfs_repository/my_hdfs_repository_snapshot100/_restore
{
 "indices": "wudbes",
  "index_settings": {
    "index.number_of_replicas": 0
  },
  "ignore_index_settings": [
    "index.refresh_interval"
  ]
}
------------------------------------------

{
  "accepted" : true
}

查看

GET /_cat/indices?v
health status index                           uuid                   pri rep docs.count docs.deleted store.size pri.store.size
green  open   .kibana_task_manager_7.12.0_001 fj0u3Mi9Th-i4bjgiA3JQw   1   0          9          335    165.8kb        165.8kb
green  open   .apm-custom-link                Q-Aexfq3TV2rt7G_YdALyQ   1   0          0            0       208b           208b
green  open   .apm-agent-configuration        z19tPJXYRKeppcMT_r3xnw   1   0          0            0       208b           208b
green  open   wudbes                          SlWWdlztRci3BPY6HGSVwg   1   0          3            0     12.4kb         12.4kb
green  open   .kibana_7.12.0_001              fFsDUjaNSjuWq1-13tQMGw   1   0         60           36      4.2mb          4.2mb
green  open   .kibana-event-log-7.12.0-000001 OsA26AZESX6wvi1Jvy1xTQ   1   0          1            0      5.6kb          5.6kb
yellow open   wudl_book                       qfo8coDoTYuTzLitaNEAUA   1   1          3            0     14.2kb         14.2kb
yellow open   wubigdata                       rgLSb-jESwWMebzacl0ESw   1   1          4            1     10.8kb         10.8kb

已经还原成功

POST /_snapshot/repository1/snapshot-20211214-001/_restore
{
}
------------------------------------------

{
  "accepted" : true
}
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,080评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,422评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,630评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,554评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,662评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,856评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,014评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,752评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,212评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,541评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,687评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,347评论 4 331
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,973评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,777评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,006评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,406评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,576评论 2 349

推荐阅读更多精彩内容