01
—
面对这一问题,管理员需采取有效的措施恢复或重置ES集群的访问权限。这通常涉及到对Elasticsearch内部机制的理解,包括但不限于节点间通信加密、用户认证插件(如X-Pack或Elastic Security)的角色权限管理等。本文旨在探讨在不慎遗忘ES集群密码时,如何通过安全且符合最佳实践的方式找回或重置密码,以确保ES集群的稳定运行和数据安全。在整个过程中,我们将严格遵循最小权限原则,并尽量减小对线上服务的影响。
02
—
1. 停止所有ES节点
sh elasticsearch.sh stop
2. 修改所有ES节点配置, 将Xpack参数注释
vim config/elasticsearch.yml
3. 启动所有ES节点
sh elasticsearch.sh start
4. 在Master删除存储ES安全特性数据的索引
curl http://10.68.43.110:9200/_cat/indices |grep security
curl -X DELETE http://10.68.43.110:9200/.security-7
5. 停止所有ES节点
sh elasticsearch.sh stop
6. 取消所有节点的Xpack的配置参数注释
vim config/elasticsearch.yml
7. 删除所有节点的elasticsearch.keystore和elastic-certificates.p12文件
ls -l config/elasticsearch.keystore config/certs/elastic-certificates.p12
rm -f config/elasticsearch.keystore config/certs/elastic-certificates.p12
8. 在Master上重新生成ES自签证书
./bin/elasticsearch-certutil cert -out config/certs/elastic-certificates.p12 -pass
9. 复制Master的证书到数据节点上
scp config/certs/elastic-certificates.p12 node2:/home/elastic/elasticsearch/config/certs/
scp config/certs/elastic-certificates.p12 node3:/home/elastic/elasticsearch/config/certs/
10. 启动所有ES服务
sh elasticsearch.sh start
11. 在Master节点上重新设置密码
./bin/elasticsearch-setup-passwords interactive

12. 验证
curl -u "elastic:elastic" http://10.68.60.110:9200/_cat/nodes?v
MUSIC

♬..♩~ ♫. ♪..
END


推荐阅读

原文始发于微信公众号(Linux运维之旅):ES集群密码遗忘?看这篇就够了
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/273797.html