elasticsearch7.5.1集群安装+head插件安装

安装环境:centos7

本次安装三个节点的集群为例,节点配置如下,ip不方便透露以文字代替

ip 节点名称 是否为master节点
ip1 node-1 true
ip2 node-2 false
ip3 node-3 false

一、elasticsearch集群安装

1、下载安装包

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.5.1-linux-x86_64.tar.gz

2、解压

tar -zxvf elasticsearch-7.5.1-linux-x86_64.tar.gz
3、修改配置文件

由于我的服务器内存较低。所以修改一下elasticsearch起动内存

分别在三台机器中进入到解压后的elasticsearch7.5.1目录

vim config/jvm.options   修改如下

elasticsearch7.5.1集群安装+head插件安装_第1张图片

分别在三个节点中修改主要配置项如下

vim config/elasticsearch.yml

node-1

#集群名称--在同一个集群中所有节点的名称都要一样
cluster.name: my-application
#节点名称--每个节点都不一样
node.name: node-1
#是否为主节点
node.master: true
#配置外网能访问
network.host: 0.0.0.0
#配置客户端访问端口
http.port: 9200
#配置用外网ip来进行节点间的通信,默认是内网,因为我的三台服务器内网ping不通
network.publish_host: ip1
#配置节点间通信的tcp端口
transport.tcp.port: 9300
#配置可跨域请求,用于head插件
http.cors.enabled: true
http.cors.allow-origin: "*"
#用于发现其他节点,写入节点ip端口为9300---注意逗号后面有个空格
discovery.seed_hosts: ["ip1:9300", "ip2:9300", "ip3:9300"]
#填主节点名称--可以为多个
cluster.initial_master_nodes: ["node-3"]

node-2

#集群名称--在同一个集群中所有节点的名称都要一样
cluster.name: my-application
#节点名称--每个节点都不一样
node.name: node-2
#是否为主节点
node.master: false
#配置外网能访问
network.host: 0.0.0.0
#配置客户端访问端口
http.port: 9200
#配置用外网ip来进行节点间的通信,默认是内网,因为我的三台服务器内网ping不通
network.publish_host: ip2
#配置节点间通信的tcp端口
transport.tcp.port: 9300
#配置可跨域请求,用于head插件
http.cors.enabled: true
http.cors.allow-origin: "*"
#用于发现其他节点,写入节点ip端口为9300---注意逗号后面有个空格
discovery.seed_hosts: ["ip1:9300", "ip2:9300", "ip3:9300"]
#填主节点名称--可以为多个
cluster.initial_master_nodes: ["node-3"]

node-3

#集群名称--在同一个集群中所有节点的名称都要一样
cluster.name: my-application
#节点名称--每个节点都不一样
node.name: node-3
#是否为主节点
node.master: false
#配置外网能访问
network.host: 0.0.0.0
#配置客户端访问端口
http.port: 9200
#配置用外网ip来进行节点间的通信,默认是内网,因为我的三台服务器内网ping不通
network.publish_host: ip3
#配置节点间通信的tcp端口
transport.tcp.port: 9300
#配置可跨域请求,用于head插件
http.cors.enabled: true
http.cors.allow-origin: "*"
#用于发现其他节点,写入节点ip端口为9300---注意逗号后面有个空格
discovery.seed_hosts: ["ip1:9300", "ip2:9300", "ip3:9300"]
#填主节点名称--可以为多个
cluster.initial_master_nodes: ["node-3"]

到此我们的elasticsearch集群配置已经完成,但是由于我们修改配置network.host: 0.0.0.0会导致elasticsearch服务启动不成功,所以我们需要修改服务器的配置,步骤如下:

错误一解决办法:

vim /etc/sysctl.conf

在文件中追加如下配置

vm.max_map_count=855360

保存后执行  sysctl -p命令使配置生效

错误二解决办法:

vim /etc/security/limits.conf

在文件中追加如下内容:

* soft nofile 65536
* hard nofile 65536
* soft nproc 4096
* hard nproc 4096

4、添加新用户

由于elasticsearch不允许用root用户启动elasticsearch,说以要新建一个用户用于启动elasticsearch

#添加名为es的用户
useradd es
#给es赋予elasticsearch目录的权限
chown -R es elasticsearch-7.5.1/

5、启动elasticsearch集群

切换到es用户:

su es

分别启动集群(没有顺序要求)

./elasticsearch-7.5.1/bin/elasticsearch

如果要后台启动就在启动命令后面加上  -d

./elasticsearch-7.5.1/bin/elasticsearch -d

启动好后测试下是否成功

随便在一台机器上请求如下:

curl localhost:9200/_cat/nodes?v

可以见到集群成功如下:

elasticsearch7.5.1集群安装+head插件安装_第2张图片

 当然也通过浏览器以外网访问。elasticsearch集群到这完成,接下来安装head插件

二、elasticsearch-head插件安装

head插件在其中有个节点安装就行

1.下载head插件:https://github.com/mobz/elasticsearch-head

2.解压安装包:unzip elasticsearch-head.zip 之后,将会出现一个elasticsearch-head文件夹

安装head插件前需要先安装nodejs和用nodejs安装grunt

#下载nodejs
wget https://nodejs.org/dist/v10.9.0/node-v10.9.0-linux-x64.tar.xz    
#解压
tar xf  node-v10.9.0-linux-x64.tar.xz       
#进入解压目录
cd node-v10.9.0-linux-x64/                  
#执行node命令 查看版本
./bin/node -v                               

配置一下nodejs的环境变量

vim /etc/profile

#nodejs所在目录
export NODE_HOME=/usr/local/nodejs/bin
export PATH=${NODE_HOME}:$PATH

#修改后及时生效
source /etc/profile 

安装grunt

npm install -g grunt-cli

如果遇到如下错误:

elasticsearch7.5.1集群安装+head插件安装_第3张图片

解决办法:

#你报错什么版本,就对应什么版本
npm install [email protected] --ignore-scripts

这个步骤做好后我们进入到elasticsearch-head目录

修改服务器监听地址(在目录elasticsearch-head-master/Gruntfile.js)修改如下部分内容:


                connect: {
                        server: {
                                options: {
                                        hostname: '0.0.0.0',
                                        port: 9100,
                                        base: '.',
                                        keepalive: true
                                }
                        }
                }

        });

修改连接地址:elasticsearch-head/_site/app.js

this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://ip地址:9200";

进入到elasticsearch-head执行如下命令启动head插件

npm imstall

npm run start  或   nohup npm run start(后台启动)

启动成功后就可以通过http://ip:9100即可访问:

访问如下:

elasticsearch7.5.1集群安装+head插件安装_第4张图片

到此安装结束!

 

 

你可能感兴趣的:(Elastic,Stack)