1.1、Elasticsearch介绍
Elasticsearch是一个基于Apache Lucene(TM)的开源搜索引擎。无论在开源还是专有领域,Lucene可以被认为是迄今为止最先进、性能最好的、功能最全的搜索引擎库。
特点:
- 分布式的实时文件存储,每个字段都被索引并可被搜索
- 分布式的实时分析搜索引擎--做不规则查询
- 可以扩展到上百台服务器,处理PB级结构化或非结构化数据
Elasticsearch也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。
ES能做什么?
全文检索(全部字段)、模糊查询(搜索)、数据分析(提供分析语法,例如聚合)
elasticSearch6(和elasticSearch5的区别在于,root用户权限、一个库能否建立多个表)
1.2 Elasticsearch安装
环境要求:-Centos7、建议内存2G以上、安装java1.8环境;
-配置好centos7网络、配置好jdk1.8
----解压elasticsearch-6.3.1
这时候启动会报错我们通常会修改配置文件。Es使用最大线程数、最大内存数、访问的最大文件数
cd elasticsearch-6.3.1/config进入config目录:
elasticSearch.yml(集群配置文件)、jvm.Opitons(jvm配置文件)
1、先修改jvm.Opitons中配置es能够使用jvm内存大小,将原来4g修改为256m
2、修改elasticSearch.yml中配置es的host地址(配成本机地址,允许访问)
注意!配置完毕启动es(必须切换到非root用户下)
su xxx用户名
这时候会继续报错(linux的默认线程数、最大文件数、最大内存数都不够)
A、修改linux的limits配置文件,设置内存线程和文件
nofile - 打开文件的最大数目
noproc - 进程的最大数目
soft 指的是当前系统生效的设置值
hard 表明系统中所能设定的最大值
B、修改linux的sysctl配置文件,配置系统使用内存
sysctl -p:修改后让配置生效
vm.max_map_count=655360,因此缺省配置下,单个jvm能开启的最大线程数为其一半
file-max是设置 系统所有进程一共可以打开的文件数量
整个es的配置有四处文件需要修改
elasticSearch.yml es的启动host地址 jvm.options配置es的虚拟机内存 limits.conf配置linux的线程内存和文件 sysctl.conf配置系统允许的软件运行内存 |
切换到非root用户,进入安装目录bin下:
nohup ./elasticsearch &
启动程序并输入到指定日志