Elasticsearch1.7升级到2.3实践总结

升级分为Elasticsearch server升级和Elasticsearch client api升级

为什么要迁移

当前团队内多个业务方公用一套ES集群,容易被影响,重要业务应该独自搭建一套集群

迁移的优势:

降低业务耦合性,加强不同业务隔离;

丰富的资源提供更好的服务支撑;

为什么选择ES2.3

在1.X系列之上,ES2.X算是开启了又一个重要的里程碑,文档的展示样式也体现了该版本的重要性,当然了这只是冰山一角;

Elasticsearch1.7升级到2.3实践总结

下边是增强说明(下边两幅图说明了同一个观点:更优秀的功能集成在了2.X版本上):

Elasticsearch1.7升级到2.3实践总结

Elasticsearch1.7升级到2.3实践总结

附上地址:https://www.elastic.co/blog/release-we-have   新功能

我们既然决定了迁移,那就一起升级到优秀的版本,2.3.3是当时最新的版本,算是比较稳定的版本,看他最近一次提交是5.17;

Elasticsearch1.7升级到2.3实践总结

迁移的效果如何

Elasticsearch1.7升级到2.3实践总结

Elasticsearch1.7升级到2.3实践总结

上边两个接口的迁移效果

因为上周中间才开始,还在观察期,中间的几个突兀是期间来回切换重启,缓存失效引起,当然,这个效果是ES Server在基本上没怎么调优的情况下的效果,之后会一遍观察,一遍调优,找出适合我们自己的配置;

ES升级方案 升级策略

搭建自己业务独立的ES集群(2.3.3)

API更新换代

配置文件

*以下列表中的参数可支持自动化配置,其余未列出来皆用默认配置(如有不妥,请及时纠偏,尤其是 配置节点类型一列)

配置参数功能简介配置节点类型自动化配置建议配置所属模块
cluster.name   集群名称  

data

master

      cluster  
node.name   节点名称  

data

master

     

node

 

node.master

  是否是master  

data

master

     

node.data

  是否是data  

data

master

     

index.number_of_shards

  索引分片数  

data

master

     







index

 

index.number_of_replicas

  索引备份数  

data

master

     

index.refresh_interval

  refresh时间  

data

master

     

index.merge.scheduler.max_thread_count

  merge线程数  

data

master

    Χ  

index.unassigned.node_left.delayed_timeout

  一个node脱离集群后多长时间之外才开始进行一系列的备份操作  

data

master

     

index.search.slowlog.threshold.query.warn

  query慢日志时间设置  

data

     

index.search.slowlog.threshold.fetch.warn

  fetch慢日志时间设置  

data

     

index.indexing.slowlog.threshold.index.warn

  index慢日志时间设置  

data

     

monitor.jvm.gc.old.warn

  gc时间设置



 

data

master

     




monitor

 

monitor.jvm.gc.old.info

 

data

master

     

monitor.jvm.gc.young.warn

 

data

master

     

monitor.jvm.gc.young.info

 

data

master

     

script.inline

  是否支持script表达式搜索

 

data

    Χ  

script

 

script.indexed

 

data

    Χ  

path.logs

  log日志路径  

data

master

    Χ  

path

 

path.data

  存储数据路径  

data

master

    Χ  

network.host

  对外发布本机ip  

data

master

  Χ   Χ  

network


 

transport.tcp.port

  通信端口  

data

master

    Χ  

http.port

  http端口  

data

master

    Χ  

discovery.zen.ping.multicast.enabled

  是否开启相同集群名称则组成集群  

data

master

  Χ   Χ  

discovery


 

discovery.zen.ping.unicast.hosts

  单播机器列表  

data

master

    Χ  

discovery.zen.minimum_master_nodes

  组成master集群的最小节点数  

master

    Χ  

gateway.recover_after_data_nodes

  full restart 参数设置






 

data

    Χ  

gateway






 

gateway.expected_data_nodes

 

data

    Χ  

gateway.expected_master_nodes

 

master

    Χ  

gateway.recover_after_master_nodes

 

master

    Χ  

gateway.expected_nodes

 

data

master

    Χ  

gateway.recover_after_nodes

 

data

master

    Χ  

gateway.recover_after_time

 

data

master

    Χ  

action.disable_delete_all_indices

  是否允许全部删除  

data

master

  Χ   Χ  

action

 

action.destructive_requires_name

  是否允许正则表达式删除  

data

master

  Χ   Χ  

shield.enabled

  是否支持shield  

data

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/084b860f97b97c0daebe2f6a20e606bb.html