1,安装配置JDK 8
参考:官方文档
#为什么是JDK1.8?在ElasticSearch6.2.4中提到:JDK版本必须为:1.8.0_131 以上
> 1,安装JDK1.8-161
#解压tar.gz
tar -zxvf jdk-8u161-linux-x64.tar.gz
> 2,配置环境变量
vim /etc/profile.d/dev.sh # Set Dev Path JAVA_HOME=/usr/local/java/jdk1.8.0_161/ export JAVA_HOME export PATH=$PATH:$JAVA_HOME/bin
#生效变量
source /etc/profile.d/dev.sh
[root@ gameServer local] java -version java version "1.8.0_161" Java(TM) SE Runtime Environment (build 1.8.0_161-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
2,增加用户(ElasticSearch不允许Root启动)
Root启动异常为:can not run elasticsearch as root
[root@gameServer local] #adduser payment [root@gameServer local]#passwd payment Changing password for user payment. New password: BAD PASSWORD: The password is shorter than 8 characters Retype new password: passwd: all authentication tokens updated successfully.
3,下载ElasticSearch
[payment@gameServer ~]$ cd elasticSearch/ [payment@gameServer elasticSearch]$ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.4.tar.gz --2018-06-05 21:14:44-- https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.4.tar.gz 正在解析主机 artifacts.elastic.co... 54.235.171.120, 54.235.82.130, 23.21.67.46, ... 正在连接 artifacts.elastic.co|54.235.171.120|:443... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度:29056810 (28M) [binary/octet-stream] 正在保存至: “elasticsearch-6.2.4.tar.gz” 100%[========================================================================================>] 29,056,810 387K/s in 93s 2018-06-05 21:16:19 (304 KB/s) - 已保存 “elasticsearch-6.2.4.tar.gz” [29056810/29056810]) [payment@gameServer elasticSearch]$ tar -zxvf elasticsearch-6.2.4.tar.gz [payment@gameServer elasticSearch]$ cd elasticsearch-6.2.4
4,配置ElasticSearch和Linux
[payment@gameServer elasticsearch-6.2.4]$ vim config/elasticsearch.yml # Set the bind address to a specific IP (IPv4 or IPv6): # network.host: 172.17.63.15 # # Set a custom port for HTTP: # http.port: 9200
5、 启动ElasticSearch
eg:如果报错不要慌张、随后有解决方案
1>、控制台启动:
[payment@gameServer elasticsearch-6.2.4]$ ./bin/elasticsearch [2018-06-06T10:29:18,432][INFO ][o.e.n.Node ] [] initializing ... [2018-06-06T10:29:18,614][INFO ][o.e.e.NodeEnvironment ] [SdEluaQ] using [1] data paths, mounts [[/ (rootfs)]], net usable_space [402.8gb], net total_space [442.7gb], types [rootfs] [2018-06-06T10:29:18,614][INFO ][o.e.e.NodeEnvironment ] [SdEluaQ] heap size [990.7mb], compressed ordinary object pointers [true] [2018-06-06T10:29:18,616][INFO ][o.e.n.Node ] node name [SdEluaQ] derived from node ID [SdEluaQkTfi1p-yRtlxHSA]; set [node.name] to override [2018-06-06T10:29:18,616][INFO ][o.e.n.Node ] version[6.2.4], pid[26954], build[ccec39f/2018-04-12T20:37:28.497551Z], OS[Linux/2.6.32-696.28.1.el6.x86_64/amd64], JVM[Oracle Corporation/Java HotSpot(TM) 64-Bit Server VM/1.8.0_161/25.161-b12] [2018-06-06T10:29:18,616][INFO ][o.e.n.Node ] JVM arguments [-Xms1g, -Xmx1g, -XX:+UseConcMarkSweepGC, -XX:CMSInitiatingOccupancyFraction=75, -XX:+UseCMSInitiatingOccupancyOnly, -XX:+AlwaysPreTouch, -Xss1m, -Djava.awt.headless=true, -Dfile.encoding=UTF-8, -Djna.nosys=true, -XX:-OmitStackTraceInFastThrow, -Dio.netty.noUnsafe=true, -Dio.netty.noKeySetOptimization=true, -Dio.netty.recycler.maxCapacityPerThread=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Djava.io.tmpdir=/tmp/elasticsearch.lVPlg9Y5, -XX:+HeapDumpOnOutOfMemoryError, -XX:+PrintGCDetails, -XX:+PrintGCDateStamps, -XX:+PrintTenuringDistribution, -XX:+PrintGCApplicationStoppedTime, -Xloggc:logs/gc.log, -XX:+UseGCLogFileRotation, -XX:NumberOfGCLogFiles=32, -XX:GCLogFileSize=64m, -Des.path.home=/home/payment/elasticSearch/elasticsearch-6.2.4, -Des.path.conf=/home/payment/elasticSearch/elasticsearch-6.2.4/config] [2018-06-06T10:29:19,137][INFO ][o.e.p.PluginsService ] [SdEluaQ] loaded module [aggs-matrix-stats] [2018-06-06T10:29:19,137][INFO ][o.e.p.PluginsService ] [SdEluaQ] loaded module [analysis-common] [2018-06-06T10:29:19,137][INFO ][o.e.p.PluginsService ] [SdEluaQ] loaded module [ingest-common] [2018-06-06T10:29:19,137][INFO ][o.e.p.PluginsService ] [SdEluaQ] loaded module [lang-expression] [2018-06-06T10:29:19,137][INFO ][o.e.p.PluginsService ] [SdEluaQ] loaded module [lang-mustache] [2018-06-06T10:29:19,137][INFO ][o.e.p.PluginsService ] [SdEluaQ] loaded module [lang-painless] [2018-06-06T10:29:19,137][INFO ][o.e.p.PluginsService ] [SdEluaQ] loaded module [mapper-extras] [2018-06-06T10:29:19,138][INFO ][o.e.p.PluginsService ] [SdEluaQ] loaded module [parent-join] [2018-06-06T10:29:19,138][INFO ][o.e.p.PluginsService ] [SdEluaQ] loaded module [percolator] [2018-06-06T10:29:19,138][INFO ][o.e.p.PluginsService ] [SdEluaQ] loaded module [rank-eval] [2018-06-06T10:29:19,138][INFO ][o.e.p.PluginsService ] [SdEluaQ] loaded module [reindex] [2018-06-06T10:29:19,138][INFO ][o.e.p.PluginsService ] [SdEluaQ] loaded module [repository-url] [2018-06-06T10:29:19,138][INFO ][o.e.p.PluginsService ] [SdEluaQ] loaded module [transport-netty4] [2018-06-06T10:29:19,138][INFO ][o.e.p.PluginsService ] [SdEluaQ] loaded module [tribe] [2018-06-06T10:29:19,139][INFO ][o.e.p.PluginsService ] [SdEluaQ] no plugins loaded [2018-06-06T10:29:21,350][INFO ][o.e.d.DiscoveryModule ] [SdEluaQ] using discovery type [zen] [2018-06-06T10:29:21,752][INFO ][o.e.n.Node ] initialized [2018-06-06T10:29:21,752][INFO ][o.e.n.Node ] [SdEluaQ] starting ... [2018-06-06T10:29:21,845][INFO ][o.e.t.TransportService ] [SdEluaQ] publish_address {172.17.63.15:9300}, bound_addresses {172.17.63.15:9300} [2018-06-06T10:29:21,851][INFO ][o.e.b.BootstrapChecks ] [SdEluaQ] bound or publishing to a non-loopback address, enforcing bootstrap checks [2018-06-06T10:29:24,903][INFO ][o.e.c.s.MasterService ] [SdEluaQ] zen-disco-elected-as-master ([0] nodes joined), reason: new_master {SdEluaQ}{SdEluaQkTfi1p-yRtlxHSA}{e6G8iUkmRNerO3aI9nqZnA}{172.17.63.15}{172.17.63.15:9300} [2018-06-06T10:29:24,907][INFO ][o.e.c.s.ClusterApplierService] [SdEluaQ] new_master {SdEluaQ}{SdEluaQkTfi1p-yRtlxHSA}{e6G8iUkmRNerO3aI9nqZnA}{172.17.63.15}{172.17.63.15:9300}, reason: apply cluster state (from master [master {SdEluaQ}{SdEluaQkTfi1p-yRtlxHSA}{e6G8iUkmRNerO3aI9nqZnA}{172.17.63.15}{172.17.63.15:9300} committed version [1] source [zen-disco-elected-as-master ([0] nodes joined)]]) [2018-06-06T10:29:24,921][INFO ][o.e.h.n.Netty4HttpServerTransport] [SdEluaQ] publish_address {172.17.63.15:9200}, bound_addresses {172.17.63.15:9200} [2018-06-06T10:29:24,921][INFO ][o.e.n.Node ] [SdEluaQ] started [2018-06-06T10:29:25,048][INFO ][o.e.g.GatewayService ] [SdEluaQ] recovered [0] indices into cluster_state
2、控制台启动下:停止(Ctrl+C)
^C[2018-06-06T10:49:13,825][INFO ][o.e.n.Node ] [SdEluaQ] stopping ... [2018-06-06T10:49:13,864][INFO ][o.e.n.Node ] [SdEluaQ] stopped [2018-06-06T10:49:13,865][INFO ][o.e.n.Node ] [SdEluaQ] closing ... [2018-06-06T10:49:13,876][INFO ][o.e.n.Node ] [SdEluaQ] closed [payment@gameServer elasticsearch-6.2.4]$
3、后台启动
[payment@gameServer elasticsearch-6.2.4]$ ./bin/elasticsearch -d
[payment@gameServer elasticsearch-6.2.4]$
4、验证
[payment@gameServer elasticsearch-6.2.4]$ curl "http://172.17.63.15:9200" { "name" : "SdEluaQ", "cluster_name" : "elasticsearch", "cluster_uuid" : "Oz0crt7uRTeVgPX0EFZ3Kg", "version" : { "number" : "6.2.4", "build_hash" : "ccec39f", "build_date" : "2018-04-12T20:37:28.497551Z", "build_snapshot" : false, "lucene_version" : "7.2.1", "minimum_wire_compatibility_version" : "5.6.0", "minimum_index_compatibility_version" : "5.0.0" }, "tagline" : "You Know, for Search" }
本机浏览器中:
如果访问不通:请确保能ping通 es配置的IP
6、安装相关问题汇总:
1>、Centos6 安装启动失败:
ERROR: [1] bootstrap checks failed
[1]: system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk
解决方案 参考文档:
[payment@gameServer elasticsearch-6.2.4]$ vim config/elasticsearch.yml # ----------------------------------- Memory ----------------------------------- # # Lock the memory on startup: # bootstrap.memory_lock: false bootstrap.system_call_filter: false # # Make sure that the heap size is set to about half the memory available # on the system and that the owner of the process is allowed to use this # limit. # # Elasticsearch performs poorly when the system is swapping the memory.
2>、ERROR: bootstrap checks failed
max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536] max number of threads [1024] for user [lishang] likely too low, increase to at least [2048]
解决方案:Root用户修改
vim /etc/security/limits.conf
添加如下内容:
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
3>、max number of threads [1024] for user [lish] likely too low, increase to at least [4096]
解决方案:Root用户修改
vim /etc/security/limits.d/90-nproc.conf * soft nproc 4096 root soft nproc unlimited
4>,最大虚拟内存区域vm.max_map_count [65530]可能太低,增加到至少[262144]
解决方案:根用户修改
vim /etc/sysctl.conf
#添加如下配置并保存
vm.max_map_count = 655360
[root @ gameServer〜]#sysctl -p net.ipv4.ip_forward = 0 net.ipv4.conf.default.rp_filter = 1 net.ipv4.conf.default.accept_source_route = 0 kernel.sysrq = 0 kernel.core_uses_pid = 1 net.ipv4.tcp_syncookies = 1 kernel.msgmnb = 65536 kernel.msgmax = 65536 kernel.shmmax = 68719476736 kernel.shmall = 4294967296 vm.max_map_count = 655360