Elasticsearch集群部署搭建笔记

ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
下面介绍Elasticsearch的集群部署的过程。

环境

  |     服务器    | 可以成为主节点 | 可以成为数据节点 |
  | 10.211.55.10 |      √       |      √        |
  | 10.211.55.11 |      √       |      √        |
  | 10.211.55.12 |      √       |      √        |
  | 10.211.55.13 |      √       |      √        |

软件版本

Elasticsearch 6.5.4
JDK 1.8

详细步骤

JDK安装

JDK的下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
解压JDK压缩包到:/usr/local/,重命名为jdk1.8,jdk的完整路径就是:/usr/local/jdk1.8
配置JDK环境变量:

vi /etc/profile 

export JAVA_HOME=/usr/local/jdk1.8 
export PATH=${JAVA_HOME}/bin:$PATH  

source /etc/profile

Elasticsearch安装

Elasticsearch下载地址:https://www.elastic.co/downloads/elasticsearch

下载Linux版本解压到/usr/local/elasticsearch-6.5.4目录。

由于Elasticsearch不能用root用户启动,所以创建一个叫es的用户,命令如下:
adduser es

修改密码:
passwd es
回车后输入es的密码。

更改目录权限:
sudo chmod 777 -R /usr/local/elasticsearch-6.5.4

更改文件:

vi /etc/security/limits.conf

* hard nofile 65536
* soft nofile 65536

vi /etc/sysctl.conf

vm.max_map_count=655360

更新完上面两个文件后执行以下命令更新:
sysctl -p

修改Elasticsearch的配置文件:

vi elasticsearch-6.5.4/config/elasticsearch.yml

network.host: 10.211.55.10 #对应机器的IP
http.port: 9200

切换到es用户,cd到Elasticsearch的bin目录下,后台模式启动Elasticsearch:
./elasticsearch -d

在浏览器访问:http://ip:9200/
出现Elasticsearch相关信息就说明Elasticsearch已经正确启动了。

其他节点都照着这个步骤搭建,把每台机的环境搭建起来。

配置集群信息

编辑elasticsearch-6.5.4/config/elasticsearch.yml文件,配置如下:

vi elasticsearch-6.5.4/config/elasticsearch.yml


#集群的名称
cluster.name: es6.5
#节点名称,其余两个节点分别为node-2 和node-3
node.name: node-1  #其他节点请改名为node-N
#指定该节点是否有资格被选举成为master节点,默认是true,es是默认集群中的第一台机器为master,如果这台机挂了就会重新选举master
node.master: true
#允许该节点存储数据(默认开启)
node.data: true
#索引数据的存储路径
path.data: /usr/local/elasticsearch-6.5.4/data
#绑定的ip地址
network.host: 10.211.55.10  #其他节点改为对应的服务器IP
#设置对外服务的http端口,默认为9200
http.port: 9200
# 设置节点间交互的tcp端口,默认是9300 
transport.tcp.port: 9300
#配置单播发现的主节点ip地址,其他从节点要加入进来,就得去询问单播发现机制里面配置的主节点我要加入到集群里面了,主节点同意以后才能加入,然后主节点再通知集群中的其他节点有新节点加入,这个是各个节点不同的配置,反正就是配置上排除自己再外的其他节点
discovery.zen.ping.unicast.hosts: ["192.168.8.101:9300", "192.168.8.103:9300", "192.168.8.104:9300"]
#这个参数控制的是,一个节点需要看到的具有master节点资格的最小数量,然后才能在集群中做操作。官方的推荐值是(N/2)+1,其中N是具有master资格的节点的数量(我们的情况是4,因此这个参数设置为3,但对于只有2个节点的情况,设置为2就有些问题了,一个节点DOWN掉后,你肯定连不上2台服务器了,这点需要注意)。
discovery.zen.minimum_master_nodes: 3

在各个节点都配置好后,切换到es用户进行启动,进入/usr/local/elasticsearch-6.5.4/bin,执行命令:
./elasticsearch -d
在浏览器输入http://10.211.55.10:9200/
可以看到:
imagepng

说明集群部署已经成功了。是不是很简单?!



 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值