如何在linux服务上安装ElasticSearch服务
最近公司的需求需要对原先的搜索框进行了惨无人道的变动,之前的通过sql来进行模糊搜索的方式明显不能够适应,所以需要使用到ElasticSearch来满足客户的一些磨人需求,这里记录一下。以下简称ES了。
下载ES的安装包
如果可以支持外网访问的话建议直接使用wget下载
如果不支持的话就先去官网上下载对应的包然后进行解压
点这里跳转到官网地址
这里我用的是6.2.1版本的安装包
解压安装包
tar -zxvf elasticsearch-6.2.1.tar.gz 解压下载好的jar包
解压完成之后的界面长这样
进行一些必要的配置
cd 进行config目录,并且对elasticsearch.yml文件进行修改
cluster.name: ESsearch #集群名称
node.name: es_node_1 #结点名称 多个结点名称不同
network.host: 0.0.0.0 #设置可以被任何网络访问
http.port: 9200 #默认端口号
transport.tcp.port: 9300
node.master: true #是否是主结点
node.data: true #是否是数据结点
discovery.zen.ping.unicast.hosts: ["0.0.0.0:9300", "0.0.0.0:9301"] #其他结点的路径
discovery.zen.minimum_master_nodes: 1
node.ingest: true #是否是客户端结点
bootstrap.memory_lock: false
node.max_local_storage_nodes: 2
path.data: /home/elasticserach/elasticsearch-1/data
path.logs: /home/elasticserach/elasticsearch-1/logs
http.cors.enabled: true #是否支持跨域
http.cors.allow-origin: /.*/
启动服务
需要注意的是ES在linux上的话默认是不支持root用户进行所以我们需要新建一个admin用户来进行启动
新建用户
adduser admin
passwd admin
输入两次密码进行确认
赋权限
给admin用户能够访问ES文件夹的权限
chown -R 用户名:密码 /home/elasticserach/
启动服务
./bin/elasticsearch & 启动服务
这里启动的时候一般都会报错,不报错的话emmmmmm那就不用往下看了
我这里报错的信息是说最大虚拟内存太小那就调大点
解决问题
切换到root用户修改配置sysctl.conf
vi /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
最后记得执行:
sysctl -p
之后重新启动一下就可以啦