ElasticSearch速学

来源:互联网 发布:货到付款的淘宝有哪个 编辑:程序博客网 时间:2024/06/05 06:31

Elasticsearch:第三方开源搜索引擎。

ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

官网地址:
https://www.elastic.co/cn/products/elasticsearch

环境要求:
CentOS 6/7
Java版本(这个要根据你elasticsearch的版本来,可以查看elasticsearch的文档)

https://www.elastic.co/guide/en/elasticsearch/reference/5.3/setup.html
比如我这里是 elasticsearch 5.3,它要求java版本是1.8.0_73 or later
这里写图片描述

在linux上安装jdk可以看这里:
http://blog.csdn.net/github_26672553/article/details/58222614

这里写图片描述

es建议我们linux的内核要高一点,我们在使用es之前最好升级一下linux内核
我们现在查看一下我们当前liunx的相关版本信息:
这里写图片描述

百度自行升级linux内核。

进入正题

下载Elasticsearch :

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.3.0.zip

解压:

unzip elasticsearch-5.3.0.zip

解压完成会有一个elasticsearch-5.3.0的目录。

修改es的配置文件elasticsearch.yml:

cd elasticsearch-5.3.0/config/vi elasticsearch.yml

主要修改如下内容:

# Set the bind address to a specific IP (IPv4 or IPv6):#network.host: 0.0.0.0## Set a custom port for HTTP:#http.port: 9200# Use a descriptive name for your cluster:#cluster.name: test-search

修改完配置文件之后,我们来启动ES:

cd elasticsearch-5.3.0/bin/./elasticsearch

可能会报错,因为我们是在虚拟机中来演示的。
如果报下面的错误信息:

max file descriptors [10032] for elasticsearch process is too low, increase to at least [65536]
max number of threads [1024] for user [admin] is too low, increase to at least [2048]

我们需要去修改/etc/security/limits.conf这个文件,主要修改如下内容:

admin soft nofile 65536admin hard nofile 65536admin soft nproc 2048#修改这3项,没有就增加#注意"admin"是我们登陆用户名,也就是运行es的用户名

修改好之后,可以使用ulimit -a 命令查看变化。

启动es时可能报的另一个错误:

max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

这时需要去修改/etc/sysctl.conf文件,添加如下内容:

vm.max_map_count = 262144

然后指向命令:

sudo  sysctl -p 

同时因为可能我们虚拟机的内存不够,我们还有必要修改一下jvm.options这个配置文件:

cd elasticsearch-5.3.0/config/vi jvm.options 

修改下面的内容:

-Xms1g-Xmx1g#默认时2g,修改为1g#根据你的内存考虑

如果时这个错误:
system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk

在es的配置文件elasticsearch.yml中加入下面这行:

bootstrap.system_call_filter: false

重启启动es:

cd elasticsearch-5.3.0/bin./elasticsearch 

浏览器访问:

http://你的服务器ip地址:9200/

这里写图片描述

1 0
原创粉丝点击