Linux环境下ElasticSearch单实例以及集群搭建

2020-06-17  本文已影响0人  科威舟VS求利

@[TOC]

什么是ElasticSearch

ES的应用场景

环境

es的安装

本节es的安装主要分为单实例安装以及集群的安装,下面我们就从这两部分分别介绍具体操作

单实例安装

es的head插件安装

es的查询结果是json结构,head插件解决帮我们解决了界面的问题,除此之外,它还可以实现基本信息的查看,restful请求的模拟,以及数据的基本检索。

安装

我们如果在一个控制台同时运行elasticSearch和head插件,那么需要先要将es采用后台的方式启动,加上-d参数就行了。

跨域问题及修改

因为es和head插件属于两个独立的进程的,所以访问的话会遇到跨域问题,因此需要进行一下跨域的修改。
vim config/elasticsearch.yml 我们在配置的最后面加上:

http.cors.enabled:true
http.cors.allow-origin:"*"

然后分别运行es和head插件,我们可以在localhost:9100界面上看见集群健康值,如果是绿色的代表很健康,黄色代表集群健康不是很好,但是可以正常使用,而红色代表集群的状况已经很差了,这个时候,虽然可以正常使用,但是已经出现了开始丢失数据的问题了。

分布式安装

head控制台不要关闭,然后我们新建一个窗口,我们尝试新建一个es的集群,这个集群包括三个节点,一个master和两个slave,master表示指挥官,slave就是这随从。

master节点的安装

把刚才那个作为master,修改elasticsearch.yml,在后面加上如下配置

#集群的名字
cluster.name: keweizhou
#master节点的名字
node.name: master
node.master: true

network.host: 127.0.0.1

我们找到原来的服务ps -ef | grep 'pwd',找到进程号xxx,然后kill xxx,然后我们重新启动一下原来的es服务,去浏览器检查一下我们的服务是否正常启动,http://localhost:9200。我们再用原生的API检查一下集群的名字,输入127.0.0.1可以看见,集群的名字已经变成keweizhou了。

slave节点的安装

cluster.name: keweizhou
node.name: slave1
network.host: 127.0.0.1
#指定一下es的端口号,不然会默认取9200端口,就会冲突
http.port: 8200 
#这个需要加,不然它就游离于集群之外了,找不到指挥官了
discovery.zen.ping.unicast.hosts: ["127.0.0.1"]

我们分别对它进行服务启动。./bin/elasticsearch -d
然后我们在head插件上就可以看见了:


在这里插入图片描述

遇到的问题

上一篇 下一篇

猜你喜欢

热点阅读