1.Elastic Search介绍
Elasticsearch是一个非常赞的实时分布式搜索和分析引擎。它可以帮助你用前所未有的速度去处理大规模数据。它可以用于全文搜索,结构化搜索以及分析等。更重要的是入门简单,api也比较清晰。根据官方的介绍,目前Wikipedia,Github和StackOverflow等都使用Elasticsearch进行搜索和分析。
Elasticsearch是建立在全文搜索引擎Apache Lucene基础上的,可以说Lucene是当今最先进,最高效的全功能开源搜索引擎框架,但是Lucene只是一个框架,要充分利用它的功能,你需要很高学习成本,因为Lucene确实非常复杂。而Elasticsearch使用Lucene作为内部引擎,在其基础上封装了功能强大的RESTful API,让你不需要了解背后复杂的逻辑,即可完成搜索……
2.安装环境介绍
- Centos7 64bit
- 在es帐号下安装
3.安装前的准备
3.1.下载Elastic Search
我当前安装的是最新版:elasticsearch-5.0.0.tar.gz
可以通过下载最新版:https://www.elastic.co/downloads/elasticsearch
3.2.创建es账户
$ useradd es $ passwd es #设置密码为123456
4.安装
使用es帐号,ssh登录Centos后,执行如下命令:
[es@master ~]$ tar -zxvf elasticsearch-5.0.0.tar.gz [es@master ~]$ mv elasticsearch-5.0.0 elasticsearch [es@master ~]$ ~/elasticsearch/bin/elasticsearch
即可。
5.验证安装
使用Xshell或iTerm2(这两个都是终端连接工具)复制一个窗口,执行如下命令:
[es@master ~]$ curl http://localhost:9200 { "name" : "UxJOfFE","cluster_name" : "elasticsearch","cluster_uuid" : "u1m11oKORdOV25Me_oiK7g","version" : { "number" : "5.0.0","build_hash" : "253032b","build_date" : "2016-10-26T04:37:51.531Z","build_snapshot" : false,"lucene_version" : "6.2.0" },"tagline" : "You Know,for Search" } [es@master ~]$
说明安装成功了。是不是很简单啊,这知识刚刚开始,如果想让es良好的运行提供作为生产环境的服务,还需要有漫长的调优过程哦。
6.常见问题
6.1
max virtual memory areas vm.max_map_count [65530] likely too low,increase to at least [262144]
这是由于 vm.max_map_count太小引起的,可以使用
sysctl -w vm.max_map_count=262144
来临时调整这个数值。并用以下命令查看是否修改成功。
sysctl -a | grep "vm.max_map_count"
可以在sysctl.conf增加 vm.max_map_count=262144,然后使用
sysctl -p /etc/sysctl.conf
做永久调整。
6.2
max file descriptors [4096] for elasticsearch process likely too low,increase to at least [65536]
在Linux的系统中对于进程(Process)会有一些限制,你可以使用 ulimit -Sn 和 ulimit -Hn 查看软硬限制。使用 root 帐号调整即可,具体的调整方法可以看这篇文章:《使用ulimit 命令可以分别查看软限制和硬限制》
7.参考链接
http://keenwon.com/1359.html
http://blog.csdn.net/u012371450/article/details/51776505