centos安装elasticsearch6.5与安装问题解决

版权声明:转载请注明出处 https://blog.csdn.net/wushichao0325/article/details/84823732

centos安装elasticsearch6.5与安装问题解决

前言

在安装elasticsearch之前需要保证系统已经配置了java环境,而且由于6.5版本在jdk1.7版本下运行是会提示1.8所有安装的javajdk版本需要1.8以上。

步骤

(一)安装java
我们采用懒人一键安装形式:借用yum安装,而且此方法安装也少去配置系统环境。
1.查看centos自带的jdk是否已安装,并确保是否为1.8版本以上
命令行输入:

yum list installed|grep java

查看是否带有java,如果没有则啥都不输出。
如果没有或者版本低想卸载则:
命令行输入:

卸载jdk相关文件输入:yum -y remove java-1.*.*-openjdk*
卸载tzdata-java输入:yum -y remove tzdata-java.noarch
注:前面两个*号代表根据不同版本的jdk,第三个“*”表示java-1.*.*下的所有openjdk相关文件

2.查看yum库中的java安装包
输入:

yum -y list java* 或者 yum -y search java*

3.安装所有相关java程序

yum -y install java-1.8.0-openjdk*

如果无错误信息,证明安装成功。
4.查看安装的java版本信息

java -version 可查看java版本
javac 可查看java的编辑器命令用法

(二)安装elasticsearch
1.es的yum安装配置
添加es在yum的本地源
(1)下载并安装公共签名密钥

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

(2)配置es的yum源
首先需要创建/etc/yum.repos.d/elasticsearch.repo
输入下面内容:

[elasticsearch-6.x]
name=Elasticsearch repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1

注:网上有的配置文件内容为:

[elasticsearch-5.x]
name = Elasticsearch repository for5.x packages
baseurl = http://packages.elastic.co/elasticsearch/5.x/centos
gpgcheck = 1
gpgkey = http://packages.elastic.co/GPG-KEY-elasticsearch
enabled = 1

但我用网上的配置内容,提示url不可用,所以使用了新的url。
2.安装elasticsearch
(1)更新yum的缓存

yum makecache

(2)安装ES

yum install elasticsearch

(3)添加到启动服务中

chkconfig --add elasticsearch

3.相关系统配置
vi /etc/security/limits.conf

添加如下内容:
* soft nofile 65536
* hard nofile 131072
* soft nproc 4096
* hard nproc 4096*”号代表所有非root用户文件数和进程数
注:一开始soft nproc输入的2048报数量太少,所以就提升为4096.

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

修改如下内容:
* soft nproc 1024
为:
* soft nproc 2048

vi /etc/sysctl.conf

添加下面配置:
vm.max_map_count=262144
并执行:
sysctl -p

vi /etc/elasticsearch/elasticsearch.yml

#集群名(同一个集群,名称必须相同)
cluster.name: my-application
#服务节点名(每个服务节点不一样)
node.name: node-1
#数据存储路径
path.data: /data/elasticsearch/data
#服务日志路径
path.logs: /data/elasticsearch/logs
#服务ip地址
network.host: 0.0.0.0
#服务端口
http.port: 9200
默认路径:/etc/sysconfig/elasticsearch
#设置为可用内存的50%
ES_HEAP_SIZE = 1g
#因为Centos6不支持SecComp,而ES默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动。
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
#

4.启动elasticsearch

service elasticsearch start

查看启动状态:

service elasticsearch status

如果想查看具体的log信息:

cat /var/log/elasticsearch/elasticsearch.log

5.启动elasticsearch6.5启动错误解决
(1)

Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocate memory' (errno=12)

由于elasticsearch6.5默认分配jvm空间大小为1g,修改jvm空间分配:
vim /etc/elasticsearch/jvm.options

-Xms1g
-Xmx1g
修改为:
-Xms512m
-Xmx512m

(2)

max number of threads [1024] for user [elasticsearch] is too low, increase to at least [2048]

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

*          soft    nproc     1024
修改为
*          soft    nproc     2048

(3)

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

vim /etc/sysctl.conf

追加:vm.max_map_count=262144
并执行命令:
sysctl -p

(4)

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

vi /etc/security/limits.conf

*        hard    nofile           65536
*        soft    nofile           65536

(5)

ERROR: bootstrap checks failed

原因:因为Centos6不支持SecComp,而ES默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动。
解决方法:
vi /etc/elasticsearch/elasticsearch.yml

bootstrap.memory_lock: false
bootstrap.system_call_filter: false

猜你喜欢

转载自blog.csdn.net/wushichao0325/article/details/84823732
今日推荐