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

Linux环境下ElasticSearch单节点以及集群的安装

程序员文章站 2022-03-26 18:05:46
...

环境:

Linux:CentOS6.6

JDK: 1.8.0_141

ElasticSearch:  elasticsearch-6.2.4.tar.gz

在安装es之前需要提前配置好JAVA_HOME

 

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------

(一)单节点的安装

1、由于新版本的es提高了安全性,不支持在root用户下启动es,所以要先创建一个用户和用户组

# 创建一个用户

useradd gygh

# 给用户设置一个密码

echo gygh123 | passwd --stdin gygh

补充:
passwd  用户名 之后再根据提示输入两次密码也可以

#将gygh添加到sudoers

echo "gygh ALL = (root) NOPASSWD:ALL" | tee /etc/sudoers.d/gygh
chmod 0440 /etc/sudoers.d/gygh

#解决sudo: sorry, you must have a tty to run sudo问题,在/etc/sudoer注释掉 Default requiretty 一行
sudo sed -i 's/Defaults    requiretty/Defaults:gygh !requiretty/' /etc/sudoers

#创建es需要的相关目录

mkdir /{bigdata,data}

#给目录添加权限

chown -R gygh:gygh /{bigdata,data}

2、下载、上传、解压es安装包(略)

3、修改配置文件

#修改配置文件

#注意:在修改配置文件属性时注意:后面有空格的不能去掉

 vi /bigdata/elasticsearch-6.2.4/config/elasticsearch.yml 

#修改以下内容:

cluster.name: es_gygh

node.name: node04

path.data: /data/es/data

path.logs: /data/es/logs

network.host: node04




4、切换到gygh用户,尝试启动es

/bigdata/elasticsearch-6.2.4/bin/elasticsearch 

5.出现异常:

Linux环境下ElasticSearch单节点以及集群的安装

解决办法:

  • 第1个错误:

切换到root用户,编辑limits.conf 添加类似如下内容

vi /etc/security/limits.d/90-nproc.conf 

修改如下内容:

* soft nproc 1024

#修改为

* soft nproc 4096(具体值参考异常上的大小)

  • 至于第2个错误:

是因为centos6.x操作系统不支持SecComp,而elasticsearch 5.5.2默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动。

在elasticsearch.yml中添加配置项:

bootstrap.memory_lock: false

bootstrap.system_call_filter为false:

 

6.重新启动

7.访问,查看是否成功

Linux环境下ElasticSearch单节点以及集群的安装

===========================================================

集群的安装

集群的安装和单节点类似,

在将单节点上配置好的安装包拷贝到其他节点上之后,需要在conf/elasticsearch.yml中配置:

discovery.zen.ping.unicast.hosts: ["node04", "node05"]并修改其他配置即可

安装完成之后,可以通过kibana去查看集群的情况。

补充:

kibana的安装:

下载、上传、解压、修改配置文件:

#配置本机ip
server.host: "ip"
#配置es集群url
elasticsearch.url: "http://ip:9200"

 

在bin里面启动kibana之后:http://node04:5601/