Elasticsearch-5.2.2单机安装,部署步骤和各种坑及解决方法

一 、准备相关安装文件包

下载Elasticsearch地址:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.2.2.tar.gz

下载Kibana:

https://artifacts.elastic.co/downloads/kibana/kibana-5.2.2-linux-x86_64.tar.gz

二、安装Elasticsearch

1、解压Elasticsearch 安装包 tar -zxvf elasticsearch-5.2.2.tar.gz

2、在解压后的文件夹目录下执行 ./elasticsearch 报错如下

[2017-01-14T18:35:29,164][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:125) ~[elasticsearch-5.1.2.jar:5.1.2]
    at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:112) ~[elasticsearch-5.1.2.jar:5.1.2]
    at org.elasticsearch.cli.SettingCommand.execute(SettingCommand.java:54) ~[elasticsearch-5.1.2.jar:5.1.2]
    at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:122) ~[elasticsearch-5.1.2.jar:5.1.2]
    at org.elasticsearch.cli.Command.main(Command.java:88) ~[elasticsearch-5.1.2.jar:5.1.2]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:89) ~[elasticsearch-5.1.2.jar:5.1.2]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:82) ~[elasticsearch-5.1.2.jar:5.1.2]
Caused by: java.lang.RuntimeException: can not run elasticsearch as root
    at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:100) ~[elasticsearch-5.1.2.jar:5.1.2]
    at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:176) ~[elasticsearch-5.1.2.jar:5.1.2]
    at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:306) ~[elasticsearch-5.1.2.jar:5.1.2]
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:121) ~[elasticsearch-5.1.2.jar:5.1.2]
    ... 6 more

原因:Elasticsearch必须使用非 root 账号启动 

解决办法:为Elasticsearch创建专属账号

1、创建用户组

groupadd elsearch

2创建用户

useradd elsearch -g elsearch -p elasticsearch

3更改elasticsearch-5.2.2 文件夹及内部文件的所属用户及组为elsearch:elsearch

chown -R elsearch:elsearch /data/www/search/es/elasticsearch-5.2.2

切换到elsearch用户下进行执行,启动elasticsearch

停止 elasticsearch

修改配置文件elasticsearch.yml

cluster.name: es522

node.name: node

network.host: 192.168.1.1

http.port: 9200

 多次启动以后,由于每一个线程启动以后占用文件个数限制导致elasticsearch无法启动,报错如下

ERROR: bootstrap checks failed
max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
[2017-01-14T18:50:27,955][INFO ][o.e.n.Node               ] [node-3] stopping ...
[2017-01-14T18:50:27,965][INFO ][o.e.n.Node               ] [node-3] stopped
[2017-01-14T18:50:27,965][INFO ][o.e.n.Node               ] [node-3] closing ...
[2017-01-14T18:50:27,977][INFO ][o.e.n.Node               ] [node-3] closed

解决方法:

修改文件个数

vi /etc/sysctl.conf

vm.max_map_count=655360

fs.file-max = 6815744

并执行命令:

sysctl -p

修改文件限制数和进程限制数

vi /etc/security/limits.conf

* soft nofile 65536

* hard nofile 131072

* soft nproc 2048

* hard nproc 4096

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

修改如下内容:

* soft nproc 1024

#修改为

* soft nproc 2048

 3、修改完以上配置信息后再次启动

控制台无错误信息输出访问

http://192.168.1.1:9200/

出现如下信息,代表ES安装成功;

{
  "name" : "node1",
  "cluster_name" : "es522",
  "cluster_uuid" : "MnQRBEqvQN-Qz6k84bj3Eg",
  "version" : {
    "number" : "5.2.2",
    "build_hash" : "f9d9b74",
    "build_date" : "2017-02-24T17:26:45.835Z",
    "build_snapshot" : false,
    "lucene_version" : "6.4.1"
  },
  "tagline" : "You Know, for Search"
}

三、安装Kibana

1、解压Elasticsearch 安装包 tar -zxvf kibana-5.2.2-linux-x86_64.tar.gz

2、修改配置文件,添加如下三个配置信息

server.port: 5601
server.name: "es522"
elasticsearch.url: "http://192.168.1.1:9200"

3、启动Kibana(命令末尾添加 & 代码后台启动,如不添加则当前窗口启动,窗口关闭,服务停止)

/bin/kibana &

 启动成功后访问 http://192.168.1.1:5601

 kibana安装成功!

  

猜你喜欢

转载自blog.csdn.net/wangguoqing_it/article/details/125696521