ES集群搭建(多机集群)
一、基本介绍
集群是为一组互联的完整计算机,一起作为一个统一的计算资源而工作,给人以一台机器的感觉。
集群有三大优点,所以很多系统都以集群的形式出现:
高性价比:使用普通的计算机来构建集群,能够以非常低的价格,获得比大型机更高的性能。
高可用性:因为集群中的每个节点都是一台独立的计算机(或者部署在其上),集群服务都有容错能力,所以某一个节点的故障不意味着集群服务的失败。
可伸缩性:可以通过横向调整集群节点的伸缩,实现集群的服务能力。
elasticsearch以集群的形式服务也是基于上面原因。
其中192.168.37.132这台机器为master,192.168.37.131这台机器为slave
注意事项:如果安装包中之前存入过数据,那么在data文件夹中会生成相关文件,需要将其删除然后再按照下面内容进行配置启动,否则将报读取数据不一致问题!
二、配置文件内容
修改132中ES安装包中的config/elasticsearch.yml文件内容如下:
修改131中ES安装包中的config/elasticsearch.yml文件内容如下:
以上的discovery.zen.ping.unicast.hosts:属性,需要将集群中所有节点内容弄都加入进去,以便配合使用!!!
三、启动
先启动那一台机器都可以,但是先启动的机器会被选为master
四、查看
通过head插件进行查看:
ES集群搭建(单机多节点)
一、基本介绍
从ElasticSearch官方的多份文档中可以看到,官方并不建议部署ES时为实例指定超过32GB的内存,但是现在内存的价格非常便宜,一台实体机服务器仅用32G内存显然是非常浪费的。所以我们要尝试在一个服务器上开多个ES实例,以便达到充分利用资源的目的。本文提供了一些ES单机双实例的配置要点,可扩展至单机多实例。
二、基本配置
Node-2依然为主节点,只需要将安装包拷贝一份,修改/config/elasticsearch.yml文件中的内容(node.name、http.port、transport.tcp.port、node.master)即可,如下图:
以上的discovery.zen.ping.unicast.hosts:属性,需要将集群中所有节点内容弄都加入进去,以便配合使用!!!
三、启动
先启动那一台机器都可以,但是先启动的机器会被选为master
四、查看
总结
针对于单机多节点的问题,只是提高了ES服务器cpu的利用率,当该服务器出问题之后依然会影响所有节点访问的情况,所以还是建议利用多机集群的形式。
配置elasticsearch.yml文件的时候要用node.master属性的默认值,要是强制指定的话,如果指定的master挂掉了,那么整个集群将不能够使用!!!
通过简单的实践完之后,心中豁然开朗,继续前行啦~