ElasticSearch01--安装ElasticSearch服务(Linux)

2019-08-09 00:00:00 ElasticSearch01

linux系统上安装ElasticSearch服务

Linux系统要求:

1centos6centos7

2jdk1.8及以上

 

1、 新建用户

新建一个用户

useradd yuank

修改用户密码

passwd yuank

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

切换到yuank用户

su – yuank

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

rz 上传安装包elasticsearch-6.2.2.tar.gz

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

《ElasticSearch01--安装ElasticSearch服务(Linux)》

解压缩

tar xvf elasticsearch-6.2.2.tar.gz

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

《ElasticSearch01--安装ElasticSearch服务(Linux)》

 

解压完成后,删除安装包

rm -rf elasticsearch-6.2.2.tar.gz

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

我们把目录重命名

mv elasticsearch-6.2.2/ elasticsearch

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

进入config目录

cd elasticsearch/config/

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

 

2、 修改配置文件

修改 jvm.options文件(实际开发中一般不用改,因为内存够用,我们自己电脑玩的话还是建议改一下,如果是土豪那么请忽略)。

vim jvm.options

我们看到默认配置是2g

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

我们调小一点

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

修改elasticsearch.yml文件

vi elasticsearch.yml

找到数据目录位置和日志目录位置

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

修改数据和日志目录:改成我们新建用户的文件夹下。如果不修改会有自动创建这两个目录。目录在哪自行百度。

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

接着不要退出,往下看,找到网络

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

修改为任何网络都可以访问

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

修改完我们退出保存

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

3、 创建data目录

回到elasticsearch目录创建datalogs目录,logs目录默认已经存在可以不用创建

cd ..

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

创建data目录

mkdir data

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

 

4、 启动运行

进入elasticsearch/bin目录,可以看到下面的执行文件:

cd bin

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

输入启动命令:

./elasticsearch

4.1 报错一

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

这是一个内核过低的错误

使用centos6,其linux内核版本为2.6。而Elasticsearch的插件要求至少3.5以上版本。不过没关系,我们禁用这个插件即可。如果使用的是centos7则没有这个报错。

修改elasticsearch.yml文件,在最下面添加以后配置:

bootstrap.system_call_filter: false

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

修改完再次输入命令启动运行

./elasticsearch

4.2 报错二、三、四

这次一下报了三个错误,我们逐一分析下

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

[1] : max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]

问题翻译过来就是:yuank用户拥有的可创建文件描述的权限太低,至少需要65536;我们用的是yuank用户,而不是root,所以文件权限不足。

 

切换到root用户。

su – root

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

然后修改配置文件:

vim /etc/security/limits.conf

添加如下内容

#可打开的文件描述符的最大数(软限制)

* soft nofile 65536  

 #可打开的文件描述符的最大数(硬限制)

* hard nofile 131072

#单个用户可用的最大进程数量(软限制)

* soft nproc 4096
 
#单个用户可用的最大进程数量(硬限制)

* hard nproc 4096

《ElasticSearch01--安装ElasticSearch服务(Linux)》

 

[2] : max number of threads [1024] for user [leyou] is too low, increase to at least [4096]

这是线程数不够。

继续修改配置:

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

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

 

[3] : max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]

问题翻译过来就是:elasticsearch用户拥有的最大虚拟内存太小,至少需要262144

继续修改配置文件:

vim /etc/sysctl.conf

添加下面内容:

vm.max_map_count=655360

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

改完退出保存

 

然后执行命令:

sysctl -p

 

4.3 重启终端窗口

所有错误修改完毕,一定要重启你的 Xshell终端(或者SecureCRT,否则配置无效。

4.4 再次切到yuank用户,进入bin目录,输入命令启动

./elasticsearch

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

启动成功了

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

可以看到绑定了两个端口:

 

– 9300:集群节点间通讯接口,接收tcp协议

– 9200:客户端访问接口,接收Http协议

 

4.5 验证是否启动成功:

 

在浏览器中访问:http://192.168.10.128:9200/,如果不能访问,则需要关闭虚拟机防火墙。或者开放9200端口

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

开放9200端口:

克隆一个会话

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

4.6 修改防火墙配置文件

vi /etc/sysconfig/iptables

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

添加9200端口

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

修改完保存退出

重启防火墙服务

service iptables restart

 

刷新页面,访问成功

 《ElasticSearch01--安装ElasticSearch服务(Linux)》

 

PS:关闭虚拟机防火墙

方式二:关闭虚拟机防火墙

CentOS6查看防火墙的状态:

service iptables status

 

CentOS 6关闭防火墙

servcie iptables stop                    —临时关闭防火墙

chkconfig iptables off                    —永久关闭防火墙

 

CentOS7

查看防火墙:firewall-cmd –state  

 

关闭防火墙:systemctl stop firewalld.service

 

禁止开机启动防火墙:systemctl disable firewalld.service 

相关文章