一 、准备相关安装文件包
下载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、修改完以上配置信息后再次启动
控制台无错误信息输出访问
出现如下信息,代表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安装成功!