报错:
linux
Unexpected response code [500] from calling GET http://172.17.0.3:9200/_security/_authenticate?pretty
It doesn't look like the X-Pack security feature is enabled on this Elasticsearch node.
Please check if you have enabled X-Pack security in your elasticsearch.yml configuration file.
ERROR: X-Pack Security is disabled by configuration.
Elasticsearch X-Pack安全功能未启用的解决方案
问题诊断
您遇到的错误表明Elasticsearch节点的X-Pack安全功能未启用,导致无法进行身份验证。错误信息明确指出:
- 返回了500错误代码
- X-Pack安全功能被配置禁用
- 无法执行安全认证请求
解决方案
1. 启用X-Pack安全功能
在elasticsearch.yml配置文件中添加以下设置:
xpack.security.enabled: true
配置文件位置取决于安装方式:
- 压缩包安装:$ES_HOME/config/elasticsearch.yml
- 包管理安装:/etc/elasticsearch/elasticsearch.yml
2. 单节点集群额外配置
如果是单节点集群,还需添加:
discovery.type: single-node
3. 重启Elasticsearch服务
修改配置后必须重启服务:
- 压缩包安装:从ES_HOME目录运行./bin/elasticsearch
- 系统服务:sudo systemctl restart elasticsearch
4. 设置内置用户密码
服务重启后,执行以下命令设置密码:
./bin/elasticsearch-setup-passwords auto
或使用交互模式:
./bin/elasticsearch-setup-passwords interactive
后续配置
Kibana连接配置
-
在kibana.yml中添加:
elasticsearch.username: "kibana_system"
-
创建Kibana密钥库并添加密码:
./bin/kibana-keystore create
./bin/kibana-keystore add elasticsearch.password
验证步骤
-
测试Elasticsearch连接:
curl -u elastic:密码 http://localhost:9200
-
访问Kibana:http://localhost:5601 使用elastic用户登录
注意事项
- 生产环境多节点集群必须配置TLS加密
- 密码设置命令只能执行一次
- 确保Elasticsearch和Kibana版本一致