Linux搭建ElasticSearch环境
ElasticSearch是一个基于Lucene实时分布式搜索和分析引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。基于Restuful接口。
ElasticSearch就是为高可用和可扩展而生的。可以通过购置性能更强的服务器来完成,称为垂直扩展或者向上扩展(Vertical Scale/Scaling Up),或者增加更多的服务器来完成,称为水平扩展或者向外扩展 (Horizontal Scale/Scaling out).
ES核心概念:
近实时 集群:一个或者多个节点的集合,保存应用的全部数据,并提供基于节点集成式的索引和搜索功能。 节点 分片 :每个索引分成多个分片 小Tip:默认ES每个索引分配5个分片,一个副本(5个分片),共计10个分片
LIinux部署环境:
1.将tar包从本机放入Linux目录下
2.解压tar包
3.进入解压完之后的文件,并且进入到bin目录下边
这里还需要修改config下边的配置文件:elasticserach.yml
修改的内容如下:
将里边的network,host放开 然后将ip修改为0.0.0.0
下边的http.port放开 保存并退出
4.直接用命令启动elasticsearch
./elasticsearch
5.启动命令后可能出现的问题:
错误一: can not run elasticsearch as root
解决方案: 不能用root用户登录来执行,切换为普通用户
创建用户:
错误二:
ERROR: bootstrap checks failed
max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
max number of threads [1024] for user [lishang] likely too low, increase to at least [2048]
vi /etccuritymits.conf
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
错误三:
max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
解决:切换到root用户修改配置sysctl.conf
vi /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
并执行命令:
sysctl -p
然后,重新启动elasticsearch,即可启动成功。
启动成功的情况: