https://www.elastic.co/downloads/elasticsearch
[root@localhost ~]$ tar -zxvf /usr/local/src/elasticsearch-6.3.1.tar.gz -C /opt/soft/
[root@localhost ~]$ cd /opt/soft/elasticsearch-6.3.1/
启动 elasticsearch
[root@localhost elasticsearch-6.3.1]$ bin/elasticsearch
返回
[2018-07-17T15:53:02,159][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:140) ~[elasticsearch-6.3.1.jar:6.3.1]
at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:127) ~[elasticsearch-6.3.1.jar:6.3.1]
at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-6.3.1.jar:6.3.1]
at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124) ~[elasticsearch-cli-6.3.1.jar:6.3.1]
at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-6.3.1.jar:6.3.1]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:93) ~[elasticsearch-6.3.1.jar:6.3.1]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:86) ~[elasticsearch-6.3.1.jar:6.3.1]
Caused by: java.lang.RuntimeException: can not run elasticsearch as root
at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:104) ~[elasticsearch-6.3.1.jar:6.3.1]
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:171) ~[elasticsearch-6.3.1.jar:6.3.1]
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:326) ~[elasticsearch-6.3.1.jar:6.3.1]
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:136) ~[elasticsearch-6.3.1.jar:6.3.1]
... 6 more
创建用户elastic
[root@localhost ~]# groupadd elastic
[root@localhost ~]# useradd elastic -g elastic
[root@localhost elasticsearch-6.3.1]# chown -R elastic:elastic /opt/soft/elasticsearch-6.3.1
创建ES的数据存放目录以及日志存放目录,建议在root的根目录下创建
[root@localhost soft]# cd /
[root@localhost /]# mkdir data
[root@localhost /]# chown -R elastic:elastic /data
[elastic@localhost /]$ cd data/
[elastic@localhost data]$ mkdir -p es/data
[elastic@localhost data]$ mkdir -p es/logs
[root@localhost elasticsearch-6.3.1]# su elastic
[elastic@localhost elasticsearch-6.3.1]$ vim config/elasticsearch.yml
# ----------------------------------- Paths ------------------------------------
#
# Path to directory where to store the data (separate multiple locations by comma):
#
#path.data: /path/to/data
path.data: /data/es/data
#
# Path to log files:
#
#path.logs: /path/to/logs
path.logs: /data/es/logs
#
# ---------------------------------- Network -----------------------------------
#
# Set the bind address to a specific IP (IPv4 or IPv6):
#
#network.host: 192.168.0.1
network.host: 0.0.0.0
#
# Set a custom port for HTTP:
#
#http.port: 9200
#
# For more information, consult the network module documentation.
#
**可能出现的问题解决办法:
[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
[root@localhost elasticsearch-6.3.1]# vim /etc/sysctl.conf
#添加配置
vm.max_map_count=262144
[root@localhost elasticsearch-6.3.1]# sysctl -p
vm.max_map_count = 262144
[root@localhost elasticsearch-6.3.1]# sysctl -a|grep vm.max_map_count
sysctl: reading key "net.ipv6.conf.all.stable_secret"
sysctl: reading key "net.ipv6.conf.default.stable_secret"
sysctl: reading key "net.ipv6.conf.eth0.stable_secret"
sysctl: reading key "net.ipv6.conf.lo.stable_secret"
vm.max_map_count = 262144
[2]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
[root@localhost elasticsearch-6.3.1]# vim /etc/security/limits.conf
#添加配置
* soft nofile 655350
* hard nofile 655350
启动elasticsearch
[elastic@localhost elasticsearch-6.3.1]$ bin/elasticsearch