首页 技术 正文
技术 2022年11月23日
0 收藏 589 点赞 4,390 浏览 1501 个字

全文搜索属于最常见的需求,开源的 Elasticsearch 是目前全文搜索引擎的首选,它的底层是开源库 Lucene。但是我们没法直接使用 Lucene,必须自己写代码去调用它的接口。

Elasticsearch 是 Lucene 的封装,提供了 REST API 的操作接口,非常方便。

一、安装 Java 8

Elasticsearch 需要 Java 8 的环境。

如果还没安装,请参考:

http://blog.csdn.net/justdoit_potato/article/details/77962670

二、安装 Elasticsearch

1. 下载压缩包

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.0.1.zip

2. 解压

unzip elasticsearch-6.0..zip

3. 启动

./elasticsearch-6.0./bin/elasticsearch

启动时可能报错:不允许 root 用户运行

Lucene 学习-安装 Elasticsearch 服务器

解决办法:

1. 创建新用户

adduser [user]

2. 给新用户赋予权限

chown -R [user] [elasticsearch安装目录]

3. 切换到新用户

su [user]

完成。

三、远程访问

默认情况下,elasticsearch 只允许本机访问,如果需远程访问。

1. 打开配置文件

vim elasticsearch-6.0./config/elasticsearch.yml

2. 将 network.host 配置去掉注释,值改为 0.0.0.0(建议改为具体的客户端IP)

network.host: 0.0.0.0

3. 改完后可能会无法启动,报错:

Lucene 学习-安装 Elasticsearch 服务器

解决办法:

1. sysctl.conf 配置文件

vi /etc/sysctl.conf

增加或修改配置

fs.file-max=
vm.max_map_count=

保存后设置生效

// 使生效
sysctl -p

2. limits.conf 配置文件

vim /etc/security/limits.conf

增加配置

* soft nofile
* hard nofile

4. 修改防火墙

firewall-cmd --zone=public --add-port=/tcp --permanent
firewall-cmd --reload

5. 重新登录 SSH,再次尝试启动 elasticsearch。

切换到非 root 用户。

启动:

./elasticsearch-6.0./bin/elasticsearch

或 守护线程启动:

./elasticsearch-6.0./bin/elasticsearch -d

6. 测试

浏览器打开:http://ip:9200/

输出:

Lucene 学习-安装 Elasticsearch 服务器

四、集群

1. 在本机上创建第二个实例:

切换到非 root 用户,在 elasticsearch 目录下创建 data1 文件夹后,执行命令:

./bin/elasticsearch -Ehttp.port= -Epath.data=/.../elasticsearch-6.0./data1

这条命令会覆盖配置文件中的参数。

2. 查看是否启动成功

浏览器访问:http://ip:8200

如果正确输出配置信息,表示启动成功。

3. 如何查看新创建的节点是否加入集群

浏览器访问:http://ip:8200/_cat/nodes?v

Lucene 学习-安装 Elasticsearch 服务器

可以看到,出现两条节点信息。

master 的 * 号表示当前节点信息表示主实例。

五、常用命令

// 查看当前节点的所有Index
_cat/indices
// 查看当前Index的所有Type
_mapping?pretty=true
// 新建Index
PUT weather
// 删除Index
DELETE weather
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,727
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,331
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,158
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:5,978
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,620
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,639