首先简单的说一下吧,对于elasticsearch,我是小白,因为想自学一下,所以在艰难的探索,为了安装这个elasticsearch(以下简称ES),躺过了N多次抗,一度想放弃了,最后还是决定好好的搞一下,在百度了很多的资料帮助下,终于搞好了。在此记录一下,也希望能对一些小伙棒有一些帮助。(大神绕过,勿喷)
准备阶段
1、阿里云的服务器,本人的是阿里云CentOS7
2、安装jdk1.8, Elasticsearch需要至少Java 8
3、 Elasticsearch安装包,以ZIP的为例
获取安装包(6.2.4版本)
可以直接在Linux上下载:
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.4.zip
也可以通过官网下载:elasticsearch官网
备注:ES的5.x 、6.x 、7.x版本有很多不同之处,小火棒们可自行百度了解一下
进入正题↓↓↓
本文是单节点安装操作,不涉及到集群的操作,需注意
解压
解压到你想要的文件夹下
unzip elasticsearch-6.2.4.zip
如果你如法使用unzip命令解压.zip文件,可能是你没有安装unzip软件,下面是安装方法:
安装命令: yum install zip #提示输入时,请输入y;
安装命令:yum install unzip #提示输入时,请输入y;
配置
解压完成之后我们不着急启动,我们需要配置一些文件,设置参数。
【1】修改修改/etc/security/limits.conf,在你启动es有可能会报错,按照提示修改到提示值即可
【2】修改/etc/sysctl.conf,添加vm.max_map_count=262144,保存退出,然后执行:sysctl -p 别忘记了
【3】配置ES的elasticsearch.yml文件
文件位置:
编辑:
在里面添加如图内容
好了,到此配置差不多都ok了。
启动前的准备
elasticsearch不支持root用户进行启动,所以我们需要在重新添加一个普通用户并赋予相应等权限,命令如下:
useradd elastic
chown -R elasticUser:elastic elasticsearch-6.2.4
这个授权需要注意目前处在文件夹的位置
开启防火墙,将9200,9300端口放出:
firewall-cmd --zone=public --add-port=9200/tcp
firewall-cmd --zone=public --add-port=9300/tcp
(防火墙的几个简单命令:启动: systemctl start firewalld 查看状态: systemctl status firewalld 停止: systemctl disable firewalld 禁用: systemctl stop firewalld)
进入到刚刚创建的用户下,进行启动
su elastic
输入启动命令(根据你在的目录)
如果想在后台启动,则在后面加 -d
注意:这样是不会看到运行信息的,不建议第一次启动就加 -d
启动报错信息
如果出现:error=‘Cannot allocate memory’
说明是你服务器的内存不足,需要调整一下参数
【找到如图路径进行参数修改】将默认的修改
如果报一些其他的做,请注意查看配置里面的信息,按照上面的方式修改配置到提示值即可
访问
在一切都ok了之后,我们可以通过外网来进行访问