1-Elasticsearch 5.6.5 安装教程
环境:centos7 jdk1.8
下载:https://www.elastic.co/downloads/past-releases/elasticsearch-5-6-5
一:解压
[root@localhost programs]# tar zxvf elasticsearch-5.6.5.tar.gz
二:创建ES用户和组(创建elsearch用户组及elsearch用户)
因为使用root用户执行ES程序,将会出现错误;所以这里需要创建单独的用户去执行ES 文件。
[root@localhost programs]# groupadd elsearch ##添加用户组 [root@localhost programs]# useradd elsearch -g elsearch ##添加用户到用户组 [root@localhost programs]# chown -R elsearch:elsearch elasticsearch-5.6.5 ##更改该文件夹下所属的用户组的权限
三:ES配置文件说明
进入到config文件夹,编辑 elasticsearch.yml
/usr/local/programs/elasticsearch-5.6.5/config [root@localhost config]# vi elasticsearch.yml
修改如下(没有配置集群,只是简单的配置了一下):
#集群名称 cluster.name: my-application #节点名称 node.name: node-1 #数据存储目录(多个路径用逗号分隔) path.data: /data/es/data #日志目录 path.logs: /data/es/logs # 修改一下ES的监听地址,这样别的机器才可以访问 network.host: 10.10.10.5 # 监听端口(默认的就好) http.port: 9200
注意,设置参数的时候“:冒号”后面要有空格
四:启动
切换到elsearch用户,进入到bin 目录下执行 ./elasticsearch 命令就可以了,执行 ./elasticsearch -d 是后台运行
发现错误1:
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
意思是说你的进程不够用了。
解决方案: 切到root 用户:进入到security目录下的limits.conf;执行命令 vi /etc/security/limits.conf :
[root@localhost bin]# vi /etc/security/limits.conf
在文件的末尾添加下面的参数值:
* soft nofile 65536 * hard nofile 131072 * soft nproc 2048 * hard nproc 4096
发现错误2:
[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
操作系统的vm.max_map_count参数设置太小导致的,请使用root用户登录系统,执行以下命令:
[root@localhost bin]# sysctl -w vm.max_map_count=655360 vm.max_map_count = 655360 [root@localhost bin]# sysctl -a | grep "vm.max_map_count" #查看是否修改成功 vm.max_map_count = 655360
再次切换到elsearch用户,进入到bin 目录下执行 ./elasticsearch 命令,启动正常。
五:测试
[root@localhost ~]# curl 'http://localhost:9200/?pretty' { "name" : "node-1", "cluster_name" : "my-application", "cluster_uuid" : "61macnA2TSK_kqqfs-Yuqw", "version" : { "number" : "5.6.5", "build_hash" : "6a37571", "build_date" : "2017-12-04T07:50:10.466Z", "build_snapshot" : false, "lucene_version" : "6.6.1" }, "tagline" : "You Know, for Search" } [root@localhost ~]#