linux elasticsearch安装
Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用于Java开发的,并作为Apache许可条款先的开放源码发布,是当前流行的企业级搜索引擎。用于云计算中,能够达到实时搜素,稳定,可靠,快速,安装使用方便。
-
首先安装好jdk
-
从Elasticsearch官网下载Elasticsearch的安装包
https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.0.0-linux-x86_64.tar.gz
解压缩文件
tar -zxvf elasticsearch-7.0.0-linux-x86_64.tar.gz -
启动Elasticsearch
注意点:此处不能使用root用户来启动,会报错,例如
解决方法:创建一个普通用户
useradd elastics
passwd elastics
切换用户
su elastics
然后再启动 。这个时候又报错了,错误内容是没有权限
切换root给elastics赋予root权限
sudo chown -R test elasticsearch-7.0.0,再启动
查看启动情况
启动成功 -
验证成功后,但是这里有一个问题,就是外网不能访问,这个时候就需要更改配置文件
network.host: 0.0.0.0
http.port: 9200
重启后,访问
- 今天尝试了在linux搭建,然后外网访问,各种问题,现在写出问题
切换root命令,修改 vim /etc/sysctl.conf
vm.max_map_count = 262144
保存后 sysctl -p
再重启遇到这个问题[1]: the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes] must be configured
这个时候修改 elasticsearch.yml中添加配置项:
bootstrap.system_call_filter为false:
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
重启es 报错 [1]: the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes] must be configured
修改
elasticsearch.yml
取消注释保留一个节点
cluster.initial_master_nodes: ["node-1"]
然后再启动,就ok
然后外网访问,当然阿里云上面的安全组和centos上面的防火墙都要开的,最后访问结果如下