安装ElasticSearch 和ElasticSearch_head插件

先说一下今天比较郁闷的事,今天下午本来是已经安装了,但总感觉哪里不对。

第一是因为安装好后怎么让head插件后台挂起因为以前是windows安装的直接随es启动的。

第二是根据原来的运维安装的和自己在Windows上安装的插件路径不对

这是今天我的最大收获就是将这2个以为解决了,下面会有说明为什么解决了。接下来进入安装吧。

 

先安装ElasticSearch

一:先安装ES的yum公钥

rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch

二:因为没有es的yum源,所以需要配置

执行命令:vim /etc/yum.repos.d/elasticsearch.repo

因为我的Spring boot项目使用的是spring-data-elasticsearch 当时还不支持5.x的版本,所以用的是2.x的版本;

将一下内容复制进入文本即可:

[esticsearch-2.x]

name=Elasticsearch repository for 2.x packages

baseurl=http://packages.elastic.co/elasticsearch/2.x/centos

gpgcheck=1

gpgkey=http://packages.elastic.co/GPG-KEY-elasticsearch

enabled=1

复制到上面即可!!!!

三:更新yum

yum makecache

四:安装ES

yum install elasticsearch

会安装到你的 /usr/share/下面如果没错的话。

五:接下来配置启动ES的服务进程

/sbin/chkconfig --add elasticsearch

这一步还可以写脚本,我对照着网上大神的也写了一个。如果想要的话可以留言。

因为ES不支持ROOT账户启动,所以需要创建一个账号:

1.创建分组:groupadd es(es是分组名,这一步可以忽略,不设置分组,直接设置用户也就是第2步)

2.创建用户:useradd -g es es(第一个es是分组名,第二个es是我的用户名)

3.passwd es 设置密码

现在就可以进入/etc/init.d/ 下面启动 ./elasticsearch start 随后 会让你输入 用户名es

我就是嫌这个麻烦才又写了一个启动脚本,脚本内切换了es用户,直接启动不需要在手动输入es账号了。

 

5776499-466ab347899230aa.png

如何通过IP访问需要修改配置文件

vim /usr/share/elasticsearch/config/elasticsearch.yml

 

5776499-f3e8659bab7a04fb.png

上面还有一个cluster.name 和node 也可以配置自己的名字

同时,最下面加上这两句话 ,这是因为head和ES分开装的原因解决2个服务的跨域问题。

http.cors.enabled: true

http.cors.allow-origin: "*"

5776499-5191276b762b6565.png

安装head插件

第一种安装方式

    一:https://nodejs.org/en/download/ 因为他需要node的支持

在 /usr/local/ 下面自己创建文件夹执行以下命令

wget https://nodejs.org/dist/v10.13.0/node-v10.13.0-linux-x64.tar.xz

完成支持然后解压,并将该路径配置到环境变量中我的路径是:/usr/local/myNodes/node-v10.13.0-linux-x64/bin

 

5776499-5a5d410b46870fe2.png

然后source /etc/profile

验证node就可以了

5776499-0658a049ba8bc687.png

下载head需要安装git 如果已经安装过的忽略

安装git :yum install git

需要分四步完成

1、git clone git://github.com/mobz/elasticsearch-head.git

 2、cd elasticsearch-head

3、npm install -g grunt -cli 

 4、npm install

 5、npm run start

 

进入 ElasticSearch_head 的目录下。编辑:vim Gruntfile.js

 

5776499-489be6647dde4730.png

进入:/usr/local/elasticsearch-head/_site 目录下修改 vim app.js  下图改成自己的ip

5776499-ee7c07554de9fda5.png

最后运行:./grunt server & 就可以后台挂起运行了。

验证:http://localhost:9100/ 

这里就是为什么我开篇写的有2个疑惑,

原因:因为我们公司原来的运维是在ElasticSearch bin/plugin目录下直接运行

./plugin install mobz/elasticsearch-head 

命令,他会直接下载head组件并在ElasticSearch下面的plugins文件夹中所以,只要es启动head就会启动。不要考虑挂起的问题。

这就是为什么我觉得我安装的和运维安装不一样

为什么会这样?

答案是因为 5.X之后ES不希望 将head插件装到 ES中,所以现在网上很多都是分开装的