ES:记录curator+nfs进行索引备份、创建快照的一次实践

ES:记录curator+nfs进行索引备份、创建快照的一次实践,第1张

ES:记录curator+nfs进行索引备份、创建快照的一次实践 1. 安装curator工具

下面是我离线安装的过程
https://blog.csdn.net/weixin_43736084/article/details/121775484?spm=1001.2014.3001.5501

2.使用fs建立es存储库

我们使用NFS,下面是官网给出的几种仓库类型

2.1 fs建立存储库的注意事项

注意事项,要不然后面创建仓库会失败:

  1. 各台机器之间使用的用户的uid和gid必须一样(启动es的用户),我这里uid=1000 gid=1003,不一样需要进行修改

查看:

# 各台机器都是一样的1000和1003
[root@localhost yuantek]# id es
uid=1000(es) gid=1003(xyc) groups=1003(xyc)

修改:

usermod  -u 1000 es
groupmod -g  1003 es
2.2 NFS建立共享文件夹

在某一台节点上创建目录, 注:快照数据会全部写入到当前节点的当前目录下,并不是分布式的,注意磁盘空间

# 来查看下所要备份的索引的大小,我这里1.1T的大小
GET /_cat/indices?v
green  open   xxxx  RGagjw1FSnSB5Y38kV-JaF  12   1  154756020   34013577   1.1tb    567.3gb
  1. 创建目录
[root@localhost ~]# mkdir /chun/snapshot -R es:es

如果已经创建了好了,就修改权限
[root@localhost ~]# chown es:es /chun/snapshot
  1. 编辑 nfs 配置文件
[root@localhost /]# cat /etc/exports
/chun/snapshot *(insecure,rw,sync,no_root_squash,anonuid=1000,anongid=1003)
  1. 查看共享目录和状态
[root@localhost /]#  exportfs  -rv
exporting *:/chun/snapshot

4.其他节点挂在共享目录:(在其他节点上执行)

在(192.168.2.132,192.168.2.133上分别执行)

[root@localhost ~]# mount -t nfs 192.168.2.131:/chun/snapshot /chun/snapshot

5.开机挂载(因为开机后失效)

开机挂载NFS目录(在其他节点上执行)

#编辑fstab文件
[root@localhost ~]# cat  /etc/fstab  |grep  nfs
192.168.2.131:/chun/snapshot           /chun/snapshot       nfs     defaults,_netdev  0 0
2.3 修改ES配置文件,每台节点都加入

添加存储库路径,添加:path.repo: ["/chun/snapshot"]

[root@localhost ~]# cat  /opt/elasticsearch-6.5.1/config/elasticsearch.yml |grep  path.repo
path.repo: ["/chun/snapshot"]
3.3 重启ES集群,使配置生效

1.最好是一台一台重启,防止es重新索引时间过长,导致集群长时间red
2.关闭分片

PUT /_cluster/settings
{
  "transient": {
    "cluster.routing.allocation.enable":"none"
  }
}

3.kill掉es进程

jps -l |grep Elastic |awk '{print }' |xargs kill -9

4.重启es

su es;./elasticsearch -d

5.开启分片

PUT /_cluster/settings
{
  "transient": {
    "cluster.routing.allocation.enable":"all"
  }
}

6.等待集群green后,重复上述步骤,重启其他节点,master最后再重启就行

3.4 创建快照库

location如果是相对路径就是在path.repo配置的目录下创建快照库文件
如果是绝对路径父目录也要是path.repo,/chun/snapshot/chun_backup

PUT /_snapshot/chun_backup
{
  "type": "fs",
  "settings": {
    "location": "chun_backup",
    "compress": true
  }
}
参数介绍,根据实际情况选择,默认速率是20MB
{

"type": "fs",	#共享文件夹

"settings": {

"location": "chun_backup",         #存储库位置

"max_restore_bytes_per_sec":"10mb",       #恢复最大速率

"compress":"true",                     #是否压缩

"max_snapshot_bytes_per_sec":"10mb",        #创建最大速率

"chunk_size":"100mb"                       #压缩块大小 
}

查看快照库
POST /_snapshot/chun_backup/_verify

3.5 curator备份索引

工具安装在最上面
文件如何写参照官网配置,下面是我实际使用的:

创建curator.yml文件

---
# Remember, leave a key empty if there is no value.  None will be a string,
# # not a Python "NoneType"
client:
 #es集群ip
  hosts:
    - 192.68.2.131
    - 192.68.2.132
    - 192.68.2.133
  port: 9201
  url_prefix:
  use_ssl: False
  certificate:
  client_cert:
  client_key:
  ssl_no_validate: False
  username: elastic
  password: chunchun
  timeout: 30
  master_only: False

logging:
  loglevel: INFO
  #日志路经
  logfile: /chun/curator-5.8.4/log/run.log
  logformat: default
  blacklist: ['elasticsearch', 'urllib3']

创建action.yml文件

actions:
  1:
    action: snapshot
    description: >-
      Back up the index, and then solve the inconsistency between ES and Hbase data.
    options:
      repository: web_back
      # Leaving name blank will result in the default 'curator-%Y%m%d%H%M%S'
      name:
      wait_for_completion: True
      max_wait: 3600
      wait_interval: 10
    filters:
    - filtertype: pattern
      kind: prefix
      value: 'chun'

执行:

命令:
curator --config config.yml action.yml

**最好在后台执行,防止备份时间长想要关闭终端导致失败,使用screen

建立一个后台终端
[root@localhost ~]# screen -S esbak

执行备份命令
[root@localhost curator-5.8.4]# curator --config curator.yml action.yml

退出此终端
按快捷键 ctrl + a + d

查看创建的screen终端
[root@localhost ~]# screen -ls
There is a screen on:
	37910.esbak	(Detached)
1 Socket in /var/run/screen/S-root.

重新进入
[root@localhost ~]# screen -r esbak

至此整个备份过程就结束了。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5669965.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存