springBoot 集成阿里云Elasticsearch

背景

    原系统使用tcp方式接入ES,使用 ElasticsearchTemplate API方式交互ES。原springes的yml配置如下:

spring:
  data:
    elasticsearch:
      cluster-nodes: 192.168.10.11:9300
      cluster-name: xxxxxes集群名称

        由于接入阿里云的ES,且加上了X-PACK验证模式,必须有用户名和密码。故拉取新的分支支持阿里云ES的配置。

springMvc模式配置

        由于A项目是SpringMvc方式的配置,下面讲一下遇到的问题以及最后的配置,服务器阿里云用的是ES5。故参考了阿里云官网的配置。x-pack-transport 5.3.3。在配置是一开始仅引入了x-pack-transport。并未引入elasticsearch 5.3.3。部署就发生了 NoClassFound后者 not exists method等错误。诸如此类的问题都是x-pack-transport 和springboot里自带的ealsticsearch不兼容所致。使用mvn:dpendency:tree查看 项目的pop依赖,看出来有jar包冲突,主要涉及:elasticsearch和transport-nettyx-client。x-pack-transport中引入了transport-netty3-client。故排除原springboot的配置,自行引入相应版本。

        在解决ES的冲突问题时,其实也很烦,一方面不知道该引入具体什么版本,另一方面是在是网络欠佳,工具欠佳不知道具体的每个artifactId有什么版本。

 <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
                <version>2.1.7.RELEASE</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.elasticsearch.client</groupId>
                        <artifactId>transport</artifactId>
                    </exclusion>
                        <exclusion>
                            <groupId>org.elasticsearch</groupId>
                            <artifactId>elasticsearch</artifactId>
                        </exclusion>
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值