欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2024-01-19 19:14:58
...

安装环境: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插件安装

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

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插件安装

 当然也通过浏览器以外网访问。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插件安装

解决办法:

#你报错什么版本,就对应什么版本
npm install aaa@qq.com --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插件安装

到此安装结束!

 

 

相关标签: Elastic Stack