开发者学堂课程【SpringBoot 实战教程: ElasticSearch 概述及安装】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/651/detail/10821
ElasticSearch 概述及安装
内容介绍:
一、概述
二、安装
一、 概述
ElasticSearch 跟 solr 一样,都是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTfulweb 接口。Elasticsearch 是用 Java 开发的,并作为 Apache 许可条款下的开放源码发布,是当前流行的企业级搜索引擎。用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
二、安装
1、在安装 ElasticSearch 搜索引擎之前,需要安装好 jdk。因为 Elastic 是2.4.4版本的,所以 jdk 是1.7版本的即可。
2、从 Elastic 的官网下载 ES 的安装包。以下是 linux 系统中的。
https://download.elastic.co/elasticsearch/release/org/elasticsearch/distribution/tar/elasticsearch/2.4.4/elasticsearch-2.4.4.tar.gz
3、解压到/usr/local 下。
tar-xzvf
./
elasticsearch-2.4.4.tar.gz-C/usr/local
放到 opt 中,在 linux 下部署,解压缩之后会生成对应的文件夹,不需要安装直接进行解压缩即可。解压缩之后,进入到文件夹,以下是解压缩的目录:
Bin 它对应的可执行程序 data 存放数据
LICENSE. Txt
modules
plugins
插件
Config 配置文件 lib 自己用的库 Logs 存放日志 NOTICE. Txt
README. Textile
进入配置文件,有两个配置文件,elasticsearch.y
m
l logging .yml scripts
,配置文件的格式是 yml 格式,需要对配置进行相应的修改,用 vi 软件进行编辑。
$ sudo vi . /elasticsearch. yml
4、编辑配置文件:/config/elasticsearch.yml
bootstrap.memory_lock:true
index.cache.field.max_size:50000
index.cache.field.expire:30m
index.cache.field.type:soft
这是自己加的配置,是为了优化 ElasticSearch 的性能。
network.host:192.168.*.25,10.29.*.58,127.0.0.1
指定绑定的IP地址,这里绑定的是本机地址
action.disable_delete_all_indices:true
允许删除索引,把它的值设置为 true。
这是在配置文件中需要做的修改。
5、启动:进行 bin 目录,只需要用 ElasticSearch 这个程序启动即可。注意,启动时不要使用 root 用户,会报错,
java.lang.RuntimeException:don'trun
elasticsearch
asroot
直接使用普通用户进行启动即可。
输入./
ElasticSearch
但是使用普通用户启动会显示权限不够,权限拒绝,如何用普通用户的身份启动 ElasticSearch,需要做处理。
解决办法:
将 ElasticSearch 的安装目录及其子目录改为另外一个非 root 账户,如:
进入到 ElasticSearch 的安装目录执行,叫 linux 的用户就可以去执行 ElasticSearch。
sudo
chown-R
linux
elasticsearch-2.4.4
把 linux 用户改到相应的组的下面。
Sudo
chgrp-R
linux
elasticsearch-2.4.4
执行这两句话就可以以 linux 用户启动 ElasticSearch,需要做处理,否则会提示权限拒绝。做完处理之后,就可以以普通用户的身份进行启动,直接输入 ./
ElasticSearch
就可以启动。启动后就是以下界面。
证明 ElasticSearch 启动成功。
6、ElasticSearch 默认的 web 端口是9200,如果能够访问9200端口,就说明 ElasticSearch 配置成功。打开浏览器,输入192.1 68.25.1 29:9200,192.1 68.25.1 29是 linux 的 IP 地址,:9200是默认的 web 端口,如果看到阶层字符串就说明可以正常使用。