安装ElasticSearch完整过程(包含期间遇到的问题及解决方式)
前置条件
安装环境为虚拟机,64位CentOS 7.3 。默认已经安装好了jdk1.8,并且已经配置好JAVA环境变量
下载安装包并解压
到 ES官网 找到合适的版本下载,并解压到 /usr/local/elasticsearch 目录。当前使用的版本是6.3.2。
创建用户并授权
由于当前版本不允许使用root用户直接启动,所以需要创建一个用户来启动
#创建用户并授权
useradd elastic
passwd elastic
#连续输入两次密码即可
#授权
chown -R elastic /usr/local/elasticsearch
修改elasticsearch.yml
在安装目录下,找到 config/elasticsearch.yml
#如果要部署集群,则将这一行的注释去掉(下同),my-application替换成自定义的集群名称
cluster.name: my-application
#192.168.1.41 替换自定义的节点名称,这里以IP作为节点名称
node.name: 192.168.1.41
#这里改成IP
network.host: 192.168.1.41
#这里将host1和host2替换成集群节点的IP,如果部署单机版,则不需要做这一步
discovery.zen.ping.unicast.hosts: ["host1", "host2"]
#在最末尾加上两行
http.cors.enabled: true
http.cors.allow-origin: "*"
修改/etc/security/limits.conf
vi /etc/security/limits.conf
#在文件最后添加两行,注意,elastic是我的用户名,如果你的用户名不是这个,则需要替换
elastic hard nofile 65536
elastic soft nofile 65536
#需要保存、退出、重启才可生效,如果还是4096说明没有生效
ulimit -Hn
不做修改的话会报错:
max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
修改/etc/sysctl.conf
vi /etc/sysctl.conf
#在 /etc/sysctl.conf文件最后添加一行
vm.max_map_count=262144
#保存退出,然后执行命令使其生效
sysctl -p
不做修改的话会报错:
max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
启动和访问
切换到elastic 用户,到bin目录下执行 ./elasticsearch即可启动成功
访问 curl http://127.0.0.1:9200
返回JSON信息即表示启动成功