Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene? 基础上的搜索引擎.当然 Elasticsearch 并不仅仅是 Lucene 那么简单,它不仅包括了全文搜索功能,还可以进行以下工作:
- 分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。
- 实时分析的分布式搜索引擎。
- 可以扩展到上百台服务器,处理PB级别的结构化或非结构化数据。
一、安装ES 官网下载比较慢可以去这个网站进行下载: https://elasticsearch.cn/download/ 1)把下载好的压缩包放入linux中进行解压 tar -zxvf 压缩包文件名
tar -zxvf elasticsearch-6.2.4.tar.gz
注意:把elasticsearch软件必须放入普通用户的目录下,并把elasticsearch设置为普通所属 linux创建用户的命令 useradd * -s /bin/bash *代表用户名称
useradd es -s /bin/bash #es不能在root用户下启动,必须创建新的用户,用来启动es
2) 创建日志、数据存储目录:(留作备用,初次先创建)
mkdir -p /data/logs/es
mkdir -p /data/es/{data,work,plugins,scripts}
3)启动:./elasticsearch 在非root用户下启动 启动报错: 再次启动,发现还是报错,原因:当前用户没有执行权限 使用命令授权
chown -R es:es elasticsearch-6.2.4
授权成功,发现elasticsearch已经在es用户下面了,可以启动了,但是启动成功,浏览器不能访问,因 此还需要做如下配置: 配置修改:elasticsearch.yml 再次启动:如果报如下错误 1、max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536] 解决方法:修改/etc/security/limits.conf文件,增加配置,用户退出后重新登录生效
* soft nofile 65536
* hard nofile 65536
2、max number of threads [3818] for user [es] is too low, increase to at least [4096] 解决方法:最大线程个数太低。修改配置文件/etc/security/limits.conf,增加配置
`* soft nproc 4096`
`* hard nproc 4096`
3、max virtual memory areas vm.max_map_count [65530] is too low, increase to atleast [262144] 解决方法:1、修改/etc/sysctl.conf文件 2、切换到root用户 执行 sysctl -w vm.max_map_count=262144
vi /etc/sysctl.conf
sysctl -p #执行命令sysctl -p生效
#增加配置vm.max_map_count=262144
错误解决完毕:重新启动 后台启动
./elasticsearch -d
解决跨域问题:修改elasticsearch.yml配置文件
|