尝试从logstash输出数据到弹性搜索时出现以下错误:
安装模板失败:[401] {“error”:“AuthenticationException [无法验证用户身份 [es_admin] for REST request [/ _template / logstash]]“,”status“:401} {:级别=>:错误}
我在logstash中有这样的配置:
esusers useradd <username> -p <password> -r logstash
我尝试使用以下命令添加用户:
localhost:9200
我也试过给角色管理员但是logstash也不适用于管理员用户。
transform: perspective
正在询问密码,输入密码后它可以正常工作,但是logstash会出错。
答案 0 :(得分:0)
我也有类似的问题。如果密码具有“@”符号,则存在elasticsearch的已知问题,可能会发生此问题。见以下链接:
https://github.com/logstash-plugins/logstash-output-elasticsearch/issues/232
还有一些关于elasticsearch的文档有指令在elasticsearch.yml中包含“shield”配置,但如果你只有一个屏蔽域,则不需要这样做。我在elasticsearch.yml中没有盾牌配置
答案 1 :(得分:0)
我看到您尝试使用logstash和admin用户但是失败了。
尝试使用管理员特权用户:
请确保您的/etc/elasticsearch/shield/roles.yml低于管理员角色的内容:
# All cluster rights
# All operations on all indices
admin:
cluster: all
indices:
'*':
privileges: all
然后测试如下的内容:
curl -u es_admin:es_admin_password localhost:9200/_cat/health
要使 logstash角色用户工作,需要在roles.yml上调整logstash角色。我将logstash配置为使用 admin特权用户写入elasticsearch。我希望这会有所帮助。