nacos-elasticsearch
这是一个elasticsearch的插件,实现将当前节点的http访问点注册到nacos,以便其他基于nacos注册中心的微服务得以访问elasticsearch。
欢迎提交PR和Issue
插件主要依赖nacos-client实现:
- 注册服务
- 保持服务心跳
- 周期性刷新nacos服务器列表
编译
mvn package
安装
将构建的target/nacos-elasticsearch-xx.zip包解压到每个es节点的plugins
目录,将外层文件夹重命名为nacos-elasticsearch
(注意权限),最终目录结构如下:
也可以用
elasticsearch-plugin
命令直接安装zip
plugins |--nacos-elasticsearch |--nacos-elasticsearch-1.0.0.jar |--plugin-descriptor.properties |--plugin-security.policy |--....
配置每个es节点,增加nacos相关配置项,并重启每个es节点,注意节点是否能正常启动。如果一切顺利,在nacos管理界面可以查看到elasticsearch的服务和实例。
当前构建的插件包,默认支持7.1.1的elasticsearch,如果需要适配其他版本,可以自行修改
plugin-descriptor.properties
但也有可能因为jar包冲突等问题,无法适配elasticsearch
配置
为每个elasticsearch增加了如下配置:
要开启插件功能,至少配置nacos.register.enabled: true
和nacos.server.addr
使用keystore安全地存储密码
支持通过elasticseach-keystore
将密码加密配置:
bin/elasticsearch-keystore add nacos.server.password.keystore Enter value for nacos.server.password.keystore:
插件会优先读取keystore中读取nacos.server.password.keystore
的值作为密码,如果没有密码,则从elasicsearch.yml
中尝试读取nacos.server.password