elasticsearch 快照存储库--腾讯云COS
背景
ELK 本地集群只保留一个月的数据,一个月之前数据要迁移到云上进行备份,生产环境需要使用AWS S3进行对接,这里先使用腾讯云COS进行测试。。。
elasticsearch 版本
[root@elk-node2 ~]# rpm -qa elasticsearch
elasticsearch-7.5.0-1.x86_64
插件路径
/usr/share/elasticsearch/plugins
查看插件列表
[root@elk-node1 ~]# cd /usr/share/elasticsearch
[root@elk-node1 elasticsearch]# ./bin/elasticsearch-plugin list
在线安装
安装repository-s3插件
bin/elasticsearch-plugin install repository-s3
安装完成后需要重启服务!!!
清除repository-s3插件
bin/elasticsearch-plugin remove repository-s3
清除插件需要先停止服务!!!
离线安装
下载repository-s3插件(需要下载对应es 版本的插件)
https://artifacts.elastic.co/downloads/elasticsearch-plugins/repository-s3/repository-s3-7.5.0.zip
本地文件系统安装repository-s3插件
bin/elasticsearch-plugin install file:///opt/repository-s3-7.5.0.zip
注意,ELK 集群内所有主机都需要安装repository-s3插件!!!
重启服务
systemctl restart elasticsearch
查看repository-s3插件
[root@elk-node2 elasticsearch]# curl -uelastic:TcqinZLhbJDFFgCqXF8r http://192.168.10.235:9200/_cat/plugins
elk-node1 repository-s3 7.5.0
elk-node2 repository-s3 7.5.0
腾讯云 cos 存储
存储桶为elkcos-1253844254,SecretId 和 SecretKey 在秘钥管理配置!!!
将access_key和secret_key 秘钥添加到elasticsearch.keystore
使用keystore添加参数时,keystore没对添加的参数做校验,对于不合法的(没有被某个plugin或者es本身用到的参数)会导致Elasticsearch启动失败。
cd /usr/share/elasticsearch
bin/elasticsearch-keystore add s3.client.default.access_key
xxxxxxx
bin/elasticsearch-keystore add s3.client.default.secret_key
xxxxxxx
注意,ELK集群内主机都需要生成秘钥,可在一台主机生成后将elasticsearch.keystore 文件拷贝到其他主机!!!
重新加载安全秘钥,使keystore中的参数生效(kibana 上执行)
POST _nodes/reload_secure_settings
每个群集节点上解密并重新读取整个密钥库,但仅应用可重新加载的安全设置。
官方链接
https://www.elastic.co/guide/en/elasticsearch/reference/7.5/secure-settings.html#reloadable-secure-settings
创建快照仓库
PUT _snapshot/cos_repository
"type": "s3",