【es5.6.7】加密后无法启动es服务。

问题版本:

elasticsearch 5.6.7

问题现象/报错:

使用readonlyrest插件给es加密,上传插件和配置文件后,安装插件修改配置文件发现ES服务起来后又停了,其他节点正常,检查日志有相关提示:

排查思路/解决方案:

提示这个找不到readonlyrest,考虑安装已经正常,检查权限,/usr/share/elasticsearch/plugin下的readonlyrest权限是root:root 因为其他节点正常运行这个是没问题的,检查/etc/elasticsearch/readonlyrest.yml,权限也是root:root这个是由于上传时使用ftp,这里权限要求elasticsearch有权读取,是root:root的话读取不到配置所以日志报错。

修改权限:chown root:elasticsearch readonlyrest.yml,再重启elasticsearch服务:systemctl restart elasticsearch 就可以恢复了。

 

附:

ES5.6.7加密方法:

1、上传elasticsearch_readonlyrest5.6.7.zip和readonlyrest.yml,到ES服务器

# 如果是es5.6.13版本请使用readonlyrest1.37.0版本的包。操作方法一样

2、安装插件,/usr/share/elasticsearch/bin下有个elasticsearch-plugin脚本,使用该命令安装:

cd /usr/share/elasticsearch/bin

./elasticsearch-plugin  install  file:///root/elasticsearch_readonlyrest5.6.7.zip         (格式:  ./elasticsearch-plugin  install  file:// 插件路径)

安装时需要确认输入y

3、配置密码

将readonlyrest.yml放到/etc/elasticsearch/下(和elasticsearch.yml在一个目录下)注意权限

修改文件内容:auth_key字段后写账号:密码

 

4、重启验证

加密完成,重启elasticsearch服务,并访问验证

systemctl restart elasticsearch

curl  admin:password@192.168.1.51:9200

5、如果需要限制允许访问的ip,可以在配置文件添加hosts字段,ip用双引号和逗号隔开。

hosts: [“192.168.1.51”, “192.168.1.52”]

配置完后重启es服务生效

6、如果是集群加密,需要每个节点做以上相同配置即可。