将elasticsearch(es)备份快照导入本地es并根据业务查询范例

20 篇文章 0 订阅
6 篇文章 3 订阅

1. 首选用官方网站下载es以及kibana安装包

https://www.elastic.co/cn/downloads/past-releases#elasticsearch

 

https://www.elastic.co/cn/downloads/past-releases#kibana

我这里下载了7.6.2版本,下载后解压

[wasadm@ydt-dmcp-etl02 ~]$ ls -l  *7.6.2*gz
-rw-r--r-- 1 wasadm wasadm 296477546 Jan  9 17:01 elasticsearch-7.6.2-linux-x86_64.tar.gz
-rw-r--r-- 1 wasadm wasadm 249555386 Jan 20 11:00 kibana-7.6.2-linux-x86_64.tar.gz

tar -xvf elasticsearch-7.6.2-linux-x86_64.tar.gz

tar -xvf kibana-7.6.2-linux-x86_64.tar.gz

2. 看一下es的快照整体情况,一般情况下,自己导出或者从别处拷贝过来的es快照目录结构大致如下:

[root@ydt-dmcp-etl02 backup]# ll
total 48
-rw-rw-r-- 1 wasadm wasadm  1924 Jan 12 21:49 index-0
-rw-rw-r-- 1 wasadm wasadm     8 Jan 12 21:49 index.latest
drwxrwxr-x 7 wasadm wasadm   156 Jan 12 20:48 indices
-rw-rw-r-- 1 wasadm wasadm 35050 Jan 12 21:49 meta-YhkQS7p5THCWa3etmONzAg.dat
-rw-rw-r-- 1 wasadm wasadm   283 Jan 12 21:49 snap-YhkQS7p5THCWa3etmONzAg.dat

[root@ydt-dmcp-etl02 backup]# pwd
/mnt/disk7/es_back/backup

有indices目录、index文件、.dat文件,注意:在能看到这些文件的目录位置,看一下当前所在的路径

当前情况下  pwd获取路径为: /mnt/disk7/es_back/backup

 注册仓库indices目录上一层目录名<backup>作为仓库名即可,仓库对应路径为indices目录所在的绝对路径< /mnt/disk7/es_back/backup>

3. 启动es前   打开es的配置文件

[root@ydt-dmcp-etl02 config]# pwd
/ztsoft/usr/wasadm/elasticsearch-7.6.2/config
[root@ydt-dmcp-etl02 config]# cat elasticsearch.yml |grep -vE "^#|^$"
path.data: /mnt/disk7/esdata
path.repo: ["/mnt/disk7/es_back"]

path.data: /mnt/disk7/esdata                          # 表示存储es的数据data目录地址,根据实际情况配置即可,这个路径指的是es实时在存储数据用的路径地址
path.repo: ["/mnt/disk7/es_back"]                  # 表示快照仓库的路径,这个路径指的是当前需要导入快照配置的路径(注意:这个仓库路径是仓库名backup的上一层,也就是仓库所在的路径)

这两个配置没有内在关系

改完配置文件启动es

[wasadm@ydt-dmcp-etl02 ~]$ cd elasticsearch-7.6.2/
[wasadm@ydt-dmcp-etl02 elasticsearch-7.6.2]$ ./bin/elasticsearch -d

[wasadm@ydt-dmcp-etl02 elasticsearch-7.6.2]$ netstat -tnlpu|grep 9200
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
tcp6       0      0 127.0.0.1:9200          :::*                    LISTEN      88203/java          
tcp6       0      0 ::1:9200                :::*                    LISTEN      88203/java  

4. 注册仓库

# 注册仓库【注意】: 下面的内容都是命令行入手指令,不要输入少了

[root@ydt-dmcp-etl02 backup]# curl -H "Content-Type: application/json" -XPUT  http://localhost:9200/_snapshot/backup -d '
{
    "type": "fs",
    "settings": {
        "location": "/mnt/disk7/es_back/backup"
    }
}
'

#  获取仓库路径信息,验证一下

[root@ydt-dmcp-etl02 backup]# curl -XGET "localhost:9200/_snapshot/backup?pretty"
{
  "backup" : {
    "type" : "fs",
    "settings" : {
      "location" : "/mnt/disk7/es_back/backup"
    }
  }
}

5.获取仓库快照

#  查看仓库中所有快照

[root@ydt-dmcp-etl02 es_back]# curl -XGET "localhost:9200/_snapshot/backup/_all?pretty"
{
  "snapshots" : [
    {
      "snapshot" : "sifa",
      "uuid" : "YhkQS7p5THCWa3etmONzAg",
      "version_id" : 7060299,
      "version" : "7.6.2",
      "indices" : [
        "court_announcement",
        "open_announce",
        "dishonest_person",
        "court_cpws",
        "be_performed"
      ],
      "include_global_state" : true,
      "state" : "SUCCESS",
      "start_time" : "2021-01-12T12:47:29.026Z",
      "start_time_in_millis" : 1610455649026,
      "end_time" : "2021-01-12T13:48:24.290Z",
      "end_time_in_millis" : 1610459304290,
      "duration_in_millis" : 3655264,
      "failures" : [ ],
      "shards" : {
        "total" : 50,
        "failed" : 0,
        "successful" : 50
      }
    }
  ]
}

 "snapshot" : "sifa"    代表这个快照别处导出来时,这个目录仓库中有一个名为 sifa的快照

  indices中的参数是索引

6. 恢复快照

#  执行仓库中对应快照恢复备份

[root@ydt-dmcp-etl02 es_back]# curl -XPOST http://localhost:9200/_snapshot/backup/sifa/_restore
{"accepted":true}

按照上面一步步下来逻辑都对上,那么恢复备份命令执行 返回{"accepted":true},则意味着已经开始了备份

# 查看恢复快照进度,等所有的进度100%即完成恢复

[root@ydt-dmcp-etl02 backup]# curl -XGET http://localhost:9200/_recovery/

最后完成后,记得浏览一下索引信息

[root@ydt-dmcp-etl02 ~]# curl localhost:9200/_cat/indices?v
health status index                    uuid                   pri rep docs.count docs.deleted store.size pri.store.size
green  open   open_announce            MBXcM-ELQ0qYixVkpEua7g  10   0   47620119      3354786     20.8gb         20.8gb
green  open   court_cpws               SXtEQv8NSke3l2AdCgpWHw  10   0   92522437     18703282    266.2gb        266.2gb
red    open   dishonest_person         2hP3quRmTlOkz_j2Y6jx0g  10   0   16387480      4721698      9.5gb          9.5gb
green  open   court_announcement       IbhnnTx2QZegMMrHCPxnFA  10   0    6251455      1376423      5.6gb          5.6gb
green  open   .kibana_task_manager_1   2qFnpd6_TBmZbNcXu65PZA   1   0          2            2     20.9kb         20.9kb
green  open   .apm-agent-configuration SwZwwCUsT16FbfaliNPf_A   1   0          0            0       283b           283b
green  open   .kibana_1                fXENFBO3TAGjkjWISMp0NA   1   0         11         9772    848.6kb        848.6kb
green  open   be_performed             H0d2HgUyQxe9-pGu11IzeA  10   0   40760556     13450502     18.6gb         18.6gb

 

7. 使用kibana

查看kibana配置文件信息并启动,server.host 是本机的在用ip,用于本地环境url访问,因为es在本机,所以es直接localhost

[root@ydt-dmcp-etl02 config]# cat kibana.yml |grep -vE "^$|^#"
server.host: "11.14.10.1"
elasticsearch.hosts: ["http://localhost:9200"]

[wasadm@ydt-dmcp-etl02 kibana-7.6.2-linux-x86_64]$ nohup bin/kibana &

【注意】:

# 如果你拿到的快照,之前环境使用过kibana,那么本地kibana第一次使用,应该是注册不进索引的,需要执行如下命令,否则kibana启动不起来,命令相当于清除原有的kibana旧索引

如果需要执行kibana索引重建,则操作完需要把kibana重启

[root@ydt-dmcp-etl02 ~]# curl -X DELETE http://localhost:9200/.kibana*

浏览器输入 http://11.14.10.1:5601/

数据查询地址URL根据自己实际情况的IP地址打开
        左侧栏 --> Dev Tools (左边扳手图标)

# 常用查询示例

======================================
# 初始模板语句
GET /court_cpws/_search
{
  "query": {
    "match_all": {}
  }
}

======================================
# 初始模板相当于不带条件查询所有记录的方法   类似select*
GET /court_cpws/_search
{
  "query": {
    "match_all": {}
  }
}
======================================

#带关键字条件查询 PS title这个字段中含有周某1与汤某抚养费纠纷一审民事判决书  (匹配越精准越靠前)
GET /court_cpws/_search
{
"query":{
"match": {
"title": "周某1与汤某抚养费纠纷一审民事判决书"
}
}
}

======================================
#带排序查询   PS 地区为广东省的数据   再按照id正排序和procedure倒序
GET /court_cpws/_search
{
    "query":{
        "term":{
            "area":"广东省"
        }
    },
    "sort":[
        {"id":{"order":"asc"}},
        {"procedure":{"order":"desc"}}
    ]
}

======================================
#查询5条记录   类似limit  area为广东省的5条记录
GET /court_cpws/_search
{
    "from":0,
    "size":5,
    "query":{
        "term":{
            "area":"广东省"
        }
    }
}

======================================
#联合查询  查询causeName含有金融借款合同纠纷且caseType不为民事案件的结果
GET /court_cpws/_search
{
  "query": {
    "bool": {
      "must": {
        "match": {
          "causeName": "金融借款合同纠纷"
        }
      },
      "must_not": {
        "match": {
          "caseType": "民事案件"
        }
      }
    }
  }
}

#联合查询  查询caseType中为执行案件且procedure为首次执行且area不是上海市的结果
GET /court_cpws/_search
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "caseType": "执行案件"
          }
        },
        {
          "match": {
            "procedure": "首次执行"
          }
        }
      ],
	  "must_not": {
        "match": {
          "area": "上海市"
        }
      }
    }
  }
}

#联合查询  查询caseType中为执行案件且procedure为首次执行且area不是上海市的结果后再按照id进行正向排序
GET /court_cpws/_search
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "caseType": "执行案件"
          }
        },
        {
          "match": {
            "procedure": "首次执行"
          }
        }
      ],
	  "must_not": {
        "match": {
          "area": "上海市"
        }
      }
    }
  },
  "sort": [
    {
      "id": {
        "order": "asc"
      }
    }
  ]
}

======================================

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王亭_666

感觉对你有帮助,谢谢支持一下~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值